diff --git a/.github/workflows/build_docker_images.yml b/.github/workflows/build_docker_images.yml index 9f7c46992..da6659a51 100644 --- a/.github/workflows/build_docker_images.yml +++ b/.github/workflows/build_docker_images.yml @@ -11,9 +11,7 @@ on: - ".github/workflows/build_docker_images.yml" - "atd-etl/afd_ems_import/**" - "atd-etl/cris_import/**" - - "atd-etl/cr3_extract_diagram/**" - "atd-etl/socrata_export/**" - - "atd-etl/populate_cr3_file_metadata/**" pull_request: branches: - master @@ -22,9 +20,7 @@ on: - ".github/workflows/build_docker_images.yml" - "atd-etl/afd_ems_import/**" - "atd-etl/cris_import/**" - - "atd-etl/cr3_extract_diagram/**" - "atd-etl/socrata_export/**" - - "atd-etl/populate_cr3_file_metadata/**" # Allows you to run this workflow manually from the Actions tab workflow_dispatch: @@ -52,12 +48,8 @@ jobs: - 'atd-etl/afd_ems_import/**' cris: - 'atd-etl/cris_import/**' - cr3_extract: - - 'atd-etl/cr3_extract_diagram/**' socrata_export: - 'atd-etl/socrata_export/**' - populate_cr3_file_metadata: - - 'atd-etl/populate_cr3_file_metadata/**' - name: Set up Docker Buildx uses: docker/setup-buildx-action@v2 @@ -69,7 +61,7 @@ jobs: platforms: linux/amd64,linux/arm64 context: atd-etl/afd_ems_import push: true - tags: atddocker/vz-afd-ems-import:${{ github.ref == 'refs/heads/master' && 'production' || 'latest' }} + tags: atddocker/vz-afd-ems-import:${{ github.ref == 'refs/heads/production' && 'production' || 'latest' }} - name: Build and push CRIS import image if: steps.changes.outputs.cris == 'true' @@ -78,16 +70,7 @@ jobs: platforms: linux/amd64,linux/arm64 context: atd-etl/cris_import push: true - tags: atddocker/vz-cris-import:${{ github.ref == 'refs/heads/master' && 'production' || 'latest' }} - - - name: Build and push CR3 extract diagram image - if: steps.changes.outputs.cr3_extract == 'true' - uses: docker/build-push-action@v4 - with: - platforms: linux/amd64,linux/arm64 - context: atd-etl/cr3_extract_diagram - push: true - tags: atddocker/atd-vz-cr3-extract:${{ github.ref == 'refs/heads/master' && 'production' || 'latest' }} + tags: atddocker/vz-cris-import:${{ github.ref == 'refs/heads/production' && 'production' || 'latest' }} - name: Build and push Socrata export image if: steps.changes.outputs.socrata_export == 'true' @@ -97,12 +80,3 @@ jobs: context: atd-etl/socrata_export push: true tags: atddocker/vz-socrata-export:${{ github.ref == 'refs/heads/production' && 'production' || 'development' }} - - - name: Build and push CR3 PDF metadata image - if: steps.changes.outputs.populate_cr3_file_metadata == 'true' - uses: docker/build-push-action@v4 - with: - platforms: linux/amd64,linux/arm64 - context: atd-etl/populate_cr3_file_metadata - push: true - tags: atddocker/vz-cr3-metadata-pdfs:${{ github.ref == 'refs/heads/master' && 'production' || 'latest' }} diff --git a/.gitignore b/.gitignore index ada723332..bb96f6edd 100644 --- a/.gitignore +++ b/.gitignore @@ -80,6 +80,8 @@ atd-events/**/*.zip atd-events/**/package atd-etl/app/**/*.json +# ignore `env` because it may be laying around in legacy ETL directoroes +env # vim [._]*.s[a-v][a-z] diff --git a/atd-etl/cr3_download/.dockerignore b/atd-etl/cr3_download/.dockerignore deleted file mode 100644 index 263cc15ec..000000000 --- a/atd-etl/cr3_download/.dockerignore +++ /dev/null @@ -1,2 +0,0 @@ -env -*.env diff --git a/atd-etl/cr3_download/Dockerfile b/atd-etl/cr3_download/Dockerfile deleted file mode 100644 index aef8d2dc6..000000000 --- a/atd-etl/cr3_download/Dockerfile +++ /dev/null @@ -1,12 +0,0 @@ -# This image was used over python:3.10-slim to support python-magic library -FROM python:3.11-bookworm - -RUN apt-get update -RUN apt-get upgrade -y - -WORKDIR /app - -COPY . /app - -RUN cd /app && pip install -r requirements.txt - diff --git a/atd-etl/cr3_download/README.md b/atd-etl/cr3_download/README.md deleted file mode 100644 index 8c04f6ffb..000000000 --- a/atd-etl/cr3_download/README.md +++ /dev/null @@ -1,21 +0,0 @@ -## CRIS CR3 .pdf Downloads - -### Invocation - -After creating an .env file using the variables listed in the env_template file, you can run this script with: - -If you are running this for the first time or developing this script, you will need to run and build: -``` -$ docker compose run --build cr3_download -``` - -Otherwise, you can run: -``` -$ docker compose run cr3_download -``` - -There are two optional flags you can include -`-t`, `--threads` Number of concurrent downloaders, default is 5 -`-v`, `--verbose` Enable verbose logging - -The script will prompt for the cookie and then download any pending CR3s. diff --git a/atd-etl/cr3_download/cr3_download.py b/atd-etl/cr3_download/cr3_download.py deleted file mode 100755 index 27b534d22..000000000 --- a/atd-etl/cr3_download/cr3_download.py +++ /dev/null @@ -1,204 +0,0 @@ -#!/usr/bin/env python -""" -CRIS - CR3 Downloader -Author: Austin Transportation Department, Data and Technology Services - -Description: This script allows the user to log in to the CRIS website -and download CR3 pdf files as needed. The list of CR3 files to be downloaded -is obtained from Hasura, and it is made up of the records that do not have -any CR3 files associated. -""" - -import os -import time -import argparse -from concurrent.futures import ThreadPoolExecutor - -from process.helpers_cr3 import process_crash_cr3, get_crash_id_list -from onepasswordconnectsdk.client import new_client -import onepasswordconnectsdk - -import sys -import logging - - -def load_secrets(one_password_client, vault_id): - """Load required secrets from 1Password.""" - required_secrets = { - "HASURA_ENDPOINT": { - "opitem": "Vision Zero graphql-engine Endpoints", - "opfield": "production.GraphQL Endpoint", - "opvault": vault_id, - }, - "HASURA_ADMIN_KEY": { - "opitem": "Vision Zero graphql-engine Endpoints", - "opfield": "production.Admin Key", - "opvault": vault_id, - }, - "AWS_ACCESS_KEY_ID": { - "opitem": "CR3 Download IAM Access Key and Secret", - "opfield": "production.accessKeyId", - "opvault": vault_id, - }, - "AWS_SECRET_ACCESS_KEY": { - "opitem": "CR3 Download IAM Access Key and Secret", - "opfield": "production.accessSecret", - "opvault": vault_id, - }, - "AWS_DEFAULT_REGION": { - "opitem": "CR3 Download IAM Access Key and Secret", - "opfield": "production.awsDefaultRegion", - "opvault": vault_id, - }, - "ATD_CRIS_CR3_URL": { - "opitem": "Vision Zero CRIS CR3 Download", - "opfield": "production.ATD_CRIS_CR3_URL", - "opvault": vault_id, - }, - "AWS_CRIS_CR3_BUCKET_NAME": { - "opitem": "Vision Zero CRIS CR3 Download", - "opfield": "production.AWS_CRIS_CR3_BUCKET_NAME", - "opvault": vault_id, - }, - "AWS_CRIS_CR3_BUCKET_PATH": { - "opitem": "Vision Zero CRIS CR3 Download", - "opfield": "production.AWS_CRIS_CR3_BUCKET_PATH", - "opvault": vault_id, - }, - } - - return onepasswordconnectsdk.load_dict(one_password_client, required_secrets) - - -def process_crash_cr3_threaded( - crash_record, cris_browser_cookies, skipped_uploads_and_updates, verbose, log -): - """Process a crash record in a separate thread.""" - try: - process_crash_cr3( - crash_record, - cris_browser_cookies, - skipped_uploads_and_updates, - verbose, - log, - ) - log.info(f"Processed crash ID: {crash_record['crash_id']}") - except Exception as e: - log.warning(f"Error processing crash ID {crash_record['crash_id']}: {str(e)}") - skipped_uploads_and_updates.append(str(crash_record["crash_id"])) - - -def main(): - # Parse command-line arguments - parser = argparse.ArgumentParser(description="CRIS - CR3 Downloader") - parser.add_argument( - "-t", - "--threads", - type=int, - default=1, - help="Number of concurrent downloading threads(default: 1)", - ) - parser.add_argument( - "-v", "--verbose", action="store_true", help="Enable verbose logging" - ) - args = parser.parse_args() - - log = logging.getLogger("cr3_download") - log.setLevel(logging.DEBUG if args.verbose else logging.INFO) - - # Create a StreamHandler for stdout - stdout_handler = logging.StreamHandler(sys.stdout) - # Optional: set the level of the stdout handler - stdout_handler.setLevel(logging.DEBUG if args.verbose else logging.INFO) - - # Add the handler to the logger - log.addHandler(stdout_handler) - - start = time.time() - - # Get 1Password secrets from environment - ONEPASSWORD_CONNECT_HOST = os.getenv("OP_CONNECT") - ONEPASSWORD_CONNECT_TOKEN = os.getenv("OP_API_TOKEN") - VAULT_ID = os.getenv("OP_VAULT_ID") - - # Setup 1Password server connection - one_password_client = new_client( - ONEPASSWORD_CONNECT_HOST, ONEPASSWORD_CONNECT_TOKEN - ) - - # Load secrets from 1Password and set them in the environment - env_vars = load_secrets(one_password_client, VAULT_ID) - for key, value in env_vars.items(): - os.environ[key] = value - - # Ask user for a set of valid cookies for requests to the CRIS website - CRIS_BROWSER_COOKIES = input( - "Please login to CRIS and extract the contents of the Cookie: header and please paste it here:\n\n" - ) - - print("\n") # pad pasted cookie value with some whitespace for clarity - - log.debug("Preparing download loop.") - log.debug("Gathering list of crashes.") - - # Track crash IDs that we don't successfully retrieve a pdf file for - skipped_uploads_and_updates = [] - - # Some crash IDs were manually added at the request of the VZ team so - # CR3s for these crash IDs are not available in the CRIS database. - # We can skip requesting them. - # See https://github.com/cityofaustin/atd-data-tech/issues/9786 - known_skips = [180290542, 144720068] - - crashes_list_without_skips = [] - - try: - log.debug(f"Hasura endpoint: '{os.getenv('HASURA_ENDPOINT')}'") - - response = get_crash_id_list() - - crashes_list = response["data"]["atd_txdot_crashes"] - crashes_list_without_skips = [ - x for x in crashes_list if x["crash_id"] not in known_skips - ] - - except Exception as e: - crashes_list_without_skips = [] - print(f"Error, could not run CR3 processing: {str(e)}") - - log.info(f"Length of queue: {len(crashes_list_without_skips)}") - log.debug("Starting CR3 downloads:") - - max_workers = args.threads - with ThreadPoolExecutor(max_workers=max_workers) as executor: - futures = [] - for crash_record in crashes_list_without_skips: - future = executor.submit( - process_crash_cr3_threaded, - crash_record, - CRIS_BROWSER_COOKIES, - skipped_uploads_and_updates, - args.verbose, - log, - ) - futures.append(future) - - for future in futures: - future.result() - - log.debug("Process done.") - - if skipped_uploads_and_updates: - skipped_downloads = ", ".join(skipped_uploads_and_updates) - log.debug(f"\nUnable to download PDFs for crash IDs: {skipped_downloads}") - - end = time.time() - hours, rem = divmod(end - start, 3600) - minutes, seconds = divmod(rem, 60) - log.info( - "Finished in: {:0>2}:{:0>2}:{:05.2f}".format(int(hours), int(minutes), seconds) - ) - - -if __name__ == "__main__": - main() diff --git a/atd-etl/cr3_download/docker-compose.yml b/atd-etl/cr3_download/docker-compose.yml deleted file mode 100644 index e1ec69527..000000000 --- a/atd-etl/cr3_download/docker-compose.yml +++ /dev/null @@ -1,18 +0,0 @@ -services: - cr3_download: - build: . - volumes: - - .:/app - env_file: - - ./.env - - # For normal operation, the entry point is defined to simply run the script - # and then exit. - entrypoint: /app/cr3_download.py -t 5 - - # During development or during CRIS reprocessing, it can be helpful to run - # the container interactively, so the the following entrypoint can be used - # to drop the user into a shell where they can run the script manually. - # This can also be done via the --entrypoint=/bin/bash flag when running. - - # entrypoint: /bin/bash diff --git a/atd-etl/cr3_download/env_template b/atd-etl/cr3_download/env_template deleted file mode 100644 index 7650c06f4..000000000 --- a/atd-etl/cr3_download/env_template +++ /dev/null @@ -1,3 +0,0 @@ -OP_API_TOKEN= -OP_CONNECT= -OP_VAULT_ID= diff --git a/atd-etl/cr3_download/process/helpers_cr3.py b/atd-etl/cr3_download/process/helpers_cr3.py deleted file mode 100644 index 8df39e15f..000000000 --- a/atd-etl/cr3_download/process/helpers_cr3.py +++ /dev/null @@ -1,183 +0,0 @@ -""" -Helpers for CR3 Downloads -Author: Austin Transportation Department, Data and Technology Services - -Description: This script contains methods that help in the download -and processing of CR3 files, this can include downloading the file -from a CRIS endpoint, uploading files to S3, etc. - -The application requires the requests library: - https://pypi.org/project/requests/ -""" - -import os -import requests -import base64 -import subprocess -import time -from io import BytesIO -from http.cookies import SimpleCookie -import magic - -# We need the run_query method -from .request import run_query - - -def run_command(command, verbose, log): - """ - Runs a command - :param command: array of strings containing the command and flags - :param verbose: boolean, handles level of logging - :param log: logger - The logger object - """ - if verbose: - log.info(command) - log.info(subprocess.check_output(command, shell=True).decode("utf-8")) - else: - subprocess.check_output(command, shell=True).decode("utf-8") - - -def download_cr3(crash_id, cookies, verbose, log): - """ - Downloads a CR3 pdf from the CRIS website. - :param crash_id: string - The crash id - :param cookies: dict - A dictionary containing key=value pairs with cookie name and values. - :param verbose: boolean, handles level of logging - :param log: logger - The logger object - """ - - cookie = SimpleCookie() - cookie.load(cookies) - baked_cookies = {} - for key, morsel in cookie.items(): - baked_cookies[key] = morsel.value - - crash_id_encoded = base64.b64encode( - str("CrashId=" + crash_id).encode("utf-8") - ).decode("utf-8") - url = os.getenv("ATD_CRIS_CR3_URL") + crash_id_encoded - - log.info("Downloading (%s) from %s" % (crash_id, url)) - resp = requests.get(url, allow_redirects=True, cookies=baked_cookies) - - # Create a BytesIO object and write the content to it - file_in_memory = BytesIO() - file_in_memory.write(resp.content) - file_in_memory.seek(0) # Reset the file pointer to the beginning - - return file_in_memory - - -import boto3 -from botocore.exceptions import NoCredentialsError - - -def upload_cr3(crash_id, cr3: BytesIO, verbose, log): - """ - Uploads a BytesIO object to S3 - :param crash_id: string - The crash id - :param cr3: BytesIO - The BytesIO object containing the PDF data - :param verbose: boolean, handles level of logging - :param log: logger - The logger object - """ - s3 = boto3.client("s3") - - destination = "%s/%s.pdf" % ( - os.getenv("AWS_CRIS_CR3_BUCKET_PATH"), - crash_id, - ) - - try: - s3.upload_fileobj(cr3, os.getenv("AWS_CRIS_CR3_BUCKET_NAME"), destination) - if verbose: - log.info(f"File uploaded to {destination}") - except NoCredentialsError: - log.error("No AWS credentials found") - - -def get_crash_id_list(): - """ - Downloads a list of crashes that do not have a CR3 associated. - :return: dict - Response from request.post - """ - query_crashes_cr3 = """ - query CrashesWithoutCR3 { - atd_txdot_crashes( - where: { - cr3_stored_flag: {_eq: "N"} - temp_record: {_eq: false} - }, - order_by: {crash_date: desc} - ) { - crash_id - } - } - """ - - return run_query(query_crashes_cr3) - - -def update_crash_id(crash_id, log): - """ - Updates the status of a crash to having an available CR3 pdf in the S3 bucket. - :param crash_id: string - The Crash ID that needs to be updated - :param log: logger - The logger object - :return: dict - Response from request.post - """ - - update_record_cr3 = ( - """ - mutation CrashesUpdateRecordCR3 { - update_atd_txdot_crashes(where: {crash_id: {_eq: %s}}, _set: {cr3_stored_flag: "Y", updated_by: "System"}) { - affected_rows - } - } - """ - % crash_id - ) - log.info(f"Marking CR3 status as downloaded for crash_id: {crash_id}") - return run_query(update_record_cr3) - - -def check_if_pdf(file_in_memory: BytesIO): - """ - Checks if a BytesIO object contains a pdf - :param file_in_memory: BytesIO - The BytesIO object - :return: boolean - True if the BytesIO object contains a pdf - """ - mime = magic.Magic(mime=True) - file_type = mime.from_buffer(file_in_memory.read()) - file_in_memory.seek(0) # Reset the file pointer to the beginning - return file_type == "application/pdf" - - -def process_crash_cr3(crash_record, cookies, skipped_uploads_and_updates, verbose, log): - """ - Downloads a CR3 pdf, uploads it to s3, updates the database and deletes the pdf. - :param crash_record: dict - The individual crash record being processed - :param cookies: dict - The cookies taken from the browser object - :param skipped_uploads_and_updates: list - Crash IDs of unsuccessful pdf downloads - :param verbose: boolean, handles level of logging - :param log: logger - The logger object - """ - try: - crash_id = str(crash_record["crash_id"]) - - print("Processing Crash: " + crash_id) - - cr3 = download_cr3(crash_id, cookies, verbose, log) - is_file_pdf = check_if_pdf(cr3) - - if not is_file_pdf: - log.warning( - f"\nFile for crash ID {crash_id} is not a pdf - skipping upload and update" - ) - time.sleep(10) - skipped_uploads_and_updates.append(crash_id) - else: - upload_cr3(crash_id, cr3, verbose, log) - update_crash_id(crash_id, log) - - except Exception as e: - log.error("Error: %s" % str(e)) - return diff --git a/atd-etl/cr3_download/process/request.py b/atd-etl/cr3_download/process/request.py deleted file mode 100644 index 149cf0d79..000000000 --- a/atd-etl/cr3_download/process/request.py +++ /dev/null @@ -1,44 +0,0 @@ -# -# Request Helper - Makes post requests to a Hasura/GraphQL endpoint. -# -import os -import time -import requests - -MAX_ATTEMPTS = int(os.getenv("MAX_ATTEMPTS", "5")) -RETRY_WAIT_TIME = int(os.getenv("RETRY_WAIT_TIME", "5")) - - -def run_query(query): - """ - Runs a GraphQL query against Hasura via an HTTP POST request. - :param query: string - The GraphQL query to execute (query, mutation, etc.) - :return: object - A Json dictionary directly from Hasura - """ - # Build Header with Admin Secret - headers = {"x-hasura-admin-secret": os.getenv("HASURA_ADMIN_KEY")} - - # Try up to n times as defined by max_attempts - for current_attempt in range(MAX_ATTEMPTS): - # Try making the request via POST - try: - return requests.post( - os.getenv("HASURA_ENDPOINT"), json={"query": query}, headers=headers - ).json() - except Exception as e: - print("Exception, could not insert: " + str(e)) - print("Query: '%s'" % query) - response = { - "errors": "Exception, could not insert: " + str(e), - "query": query, - } - - # If the current attempt is equal to MAX_ATTEMPTS, then exit with failure - if current_attempt == MAX_ATTEMPTS: - return response - - # If less than 5, then wait 5 seconds and try again - else: - print("Attempt (%s out of %s)" % (current_attempt + 1, MAX_ATTEMPTS)) - print("Trying again in %s seconds..." % RETRY_WAIT_TIME) - time.sleep(RETRY_WAIT_TIME) diff --git a/atd-etl/cr3_download/requirements.txt b/atd-etl/cr3_download/requirements.txt deleted file mode 100644 index d2ff96fb6..000000000 --- a/atd-etl/cr3_download/requirements.txt +++ /dev/null @@ -1,5 +0,0 @@ -awscli==1.* -boto3==1.* -python-magic==0.* -requests==2.* -onepasswordconnectsdk==1.* diff --git a/atd-etl/cr3_extract_diagram/.dockerignore b/atd-etl/cr3_extract_diagram/.dockerignore deleted file mode 100644 index 263cc15ec..000000000 --- a/atd-etl/cr3_extract_diagram/.dockerignore +++ /dev/null @@ -1,2 +0,0 @@ -env -*.env diff --git a/atd-etl/cr3_extract_diagram/Dockerfile b/atd-etl/cr3_extract_diagram/Dockerfile deleted file mode 100644 index c1b840c3b..000000000 --- a/atd-etl/cr3_extract_diagram/Dockerfile +++ /dev/null @@ -1,14 +0,0 @@ -FROM python:3.10-slim - -RUN apt-get update -RUN apt-get upgrade -y -RUN apt-get install -y poppler-utils tesseract-ocr - -# Copy our own application -WORKDIR /app -COPY . /app/cr3_extract_diagram - -RUN chmod -R 755 /app/* - -# Install requirements -RUN cd /app/cr3_extract_diagram && pip install -r requirements.txt diff --git a/atd-etl/cr3_extract_diagram/README.md b/atd-etl/cr3_extract_diagram/README.md deleted file mode 100644 index d550acf4c..000000000 --- a/atd-etl/cr3_extract_diagram/README.md +++ /dev/null @@ -1,23 +0,0 @@ -### Script for cr3 diagram extract - - -| Argument | Description | Required | -|----|------|----| -| -v | be verbose | | -| -d | check for digitally created PDFs | | -| --cr3-source | cr3 files bucket name and path| yes | -| --batch-size | cr3s to process, default is 1 | | -| --update-narrative | update narrative in database | | -| --update-timestamp | update timestamp in database | | -| --save-diagram-s3 | bucket name and path to save diagrams | | -| --save-diagram-disk | save diagram PNG in certain directory | | -| --crash-id | specific crash ID to operate on | | - - -The script is currently scheduled in [airflow](https://github.com/cityofaustin/atd-airflow/blob/production/dags/vz_cr3_extract_ocr_narrative.py) with the following parameters: - -``` -cr3_extract_diagram_ocr_narrative.py -v -d --update-narrative --update-timestamp --batch 100 \ - --cr3-source atd-vision-zero-editor production/cris-cr3-files \ - --save-diagram-s3 atd-vision-zero-website cr3_crash_diagrams/production -``` diff --git a/atd-etl/cr3_extract_diagram/cr3_extract_diagram_ocr_narrative.py b/atd-etl/cr3_extract_diagram/cr3_extract_diagram_ocr_narrative.py deleted file mode 100644 index a9978aeb2..000000000 --- a/atd-etl/cr3_extract_diagram/cr3_extract_diagram_ocr_narrative.py +++ /dev/null @@ -1,374 +0,0 @@ -#!/usr/bin/env python - -import io -import os -import sys -from uuid import uuid4 -import boto3 -import argparse -import requests -from pdf2image import convert_from_path, convert_from_bytes -import pytesseract - -# Configure the available arguments to the program -parser = argparse.ArgumentParser(description="Extract CR3 diagrams and narratives") -parser.add_argument("-v", action="store_true", help="Be verbose") -parser.add_argument("-d", action="store_true", help="Check for digitally created PDFs") -parser.add_argument( - "--cr3-source", - metavar=("bucket", "path"), - nargs=2, - required=True, - help="Where can we hope to find CR3 files on S3?", -) -parser.add_argument( - "--batch-size", - metavar="int", - default=1, - help="How many cr3s to attempt to process?", -) -parser.add_argument( - "--update-narrative", action="store_true", help="Update narrative in database" -) -parser.add_argument( - "--update-timestamp", action="store_true", help="Update timestamp in database" -) -parser.add_argument( - "--save-diagram-s3", - metavar=("bucket", "path"), - nargs=2, - help="Save diagram PNG in a S3 bucket and path", -) -parser.add_argument( - "--save-diagram-disk", - metavar=("path"), - nargs=1, - help="Save diagram PNG to disk in a certain directory", -) -parser.add_argument( - "--crash-id", - metavar="int", - type=int, - nargs=1, - default=[0], - help="Specific crash ID to operate on", -) -args = parser.parse_args() - -s3 = boto3.client("s3") - - -def update_crash_processed_date(crash_id: int) -> bool: - """ - Update the timestamp in the database for a given crash to indicate the CR3 has been processed - :param crash_id: id for crash to update - :return: boolean indicating success. - """ - - if args.v: - print("update_crash_processed_date(" + str(crash_id) + ")") - query = """ - mutation update_crash_processsed_date($crash_id: Int) { - update_atd_txdot_crashes(where: {crash_id: {_eq: $crash_id}}, _set: {cr3_ocr_extraction_date: "now"}) { - affected_rows - } - } - """ - response = requests.post( - url=os.getenv("HASURA_ENDPOINT"), - headers={ - "Accept": "*/*", - "content-type": "application/json", - "x-hasura-admin-secret": os.getenv("HASURA_ADMIN_KEY"), - }, - json={"query": query, "variables": {"crash_id": crash_id}}, - ) - try: - return response.json()["data"]["update_atd_txdot_crashes"]["affected_rows"] > 0 - except (KeyError, TypeError): - sys.stderr.write("ERROR") - sys.stderr.write(response.json()) - - -def update_crash_narrative(crash_id: int, narrative: str) -> bool: - """ - Store the OCR extracted crash narrative in the investigator_narrative_ocr field - :param crash_id: crash id for extracted crash narrative - :param narrative: OCR extracted crash narrative - :return: boolean indicating success - """ - - query = """ - mutation update_crash_narrative($crash_id: Int, $narrative: String) { - update_atd_txdot_crashes(where: {crash_id: {_eq: $crash_id}}, _set: {investigator_narrative_ocr: $narrative}) { - affected_rows - } - } - """ - response = requests.post( - url=os.getenv("HASURA_ENDPOINT"), - headers={ - "Accept": "*/*", - "content-type": "application/json", - "x-hasura-admin-secret": os.getenv("HASURA_ADMIN_KEY"), - }, - json={ - "query": query, - "variables": {"crash_id": crash_id, "narrative": narrative}, - }, - ) - try: - return response.json()["data"]["update_atd_txdot_crashes"]["affected_rows"] > 0 - except (KeyError, TypeError): - sys.stderr.write("ERROR") - sys.stderr.write(response.json()) - - -def update_crash_metadata(crash_id: int, metadata: dict) -> bool: - """ - Store the extracted crash diagram in the metadata field - :param crash_id: crash to update - :param metadata: extracted crash diagram - :return: boolean indicating success. - """ - - query = """ - mutation update_crash_metadata($crash_id: Int, $metadata: jsonb) { - update_atd_txdot_crashes(where: {crash_id: {_eq: $crash_id}}, _set: {cr3_file_metadata: $metadata}) { - affected_rows - } - } - """ - response = requests.post( - url=os.getenv("HASURA_ENDPOINT"), - headers={ - "Accept": "*/*", - "content-type": "application/json", - "x-hasura-admin-secret": os.getenv("HASURA_ADMIN_KEY"), - }, - json={ - "query": query, - "variables": {"crash_id": crash_id, "metadata": metadata}, - }, - ) - try: - return response.json()["data"]["update_atd_txdot_crashes"]["affected_rows"] > 0 - except (KeyError, TypeError): - sys.stderr.write("ERROR") - sys.stderr.write(response.json()) - - -# Query for multiple unprocessed cr3s -get_batch = """ -query find_cr3s($limit: Int) { - atd_txdot_crashes(where: { - cr3_ocr_extraction_date: {_is_null: true}, - crash_id: {_gt: 10000} - crash_date: {_gte: "2020-01-01"} - cr3_file_metadata:{_is_null: false} - }, - order_by: {crash_date: desc}, - limit: $limit) { - crash_id, - cr3_ocr_extraction_date, - cr3_file_metadata - } -} -""" -batch_variables = {"limit": int(args.batch_size)} - -# query for specific cr3, selected by crash_id -get_single_cr3 = """ -query find_cr3s($crash_id: Int, $limit: Int) { - atd_txdot_crashes(where: { - crash_id: {_eq: $crash_id} - }, - limit: $limit) { - crash_id, - cr3_ocr_extraction_date, - cr3_file_metadata - } -} -""" -single_cr3_variables = {"crash_id": args.crash_id[0], "limit": int(args.batch_size)} - -graphql = "" -variables = {} - -if args.crash_id[0]: - graphql = get_single_cr3 - variables = single_cr3_variables -else: - graphql = get_batch - variables = batch_variables - -response = requests.post( - url=os.getenv("HASURA_ENDPOINT"), - headers={ - "Accept": "*/*", - "content-type": "application/json", - "x-hasura-admin-secret": os.getenv("HASURA_ADMIN_KEY"), - }, - json={"query": graphql, "variables": variables}, -) - -for crash in response.json()["data"]["atd_txdot_crashes"]: - if args.v: - print("Preparing to operate on crash_id: " + str(crash["crash_id"])) - - # build url and download the CR3 - if args.v: - print("Pulling CR3 PDF from S3") - key = args.cr3_source[1] + "/" + str(crash["crash_id"]) + ".pdf" - obj = [] - try: - pdf = s3.get_object(Bucket=args.cr3_source[0], Key=key) - except: - sys.stderr.write(f"Error: Failed to get PDF for crash {str(crash['crash_id'])}from the S3 object\n") - continue - - # render the pdf into an array of raster images - if args.v: - print("Rendering PDF into images") - pages = [] - try: - pages = convert_from_bytes(pdf["Body"].read(), 150) - except: - sys.stderr.write( - "Error: PDF Read for crash_id (" + str(crash["crash_id"]) + ") failed.\n" - ) - continue - - if args.d: - if args.v: - print("Executing a check for a digitally created PDF") - digital_end_to_end = True - # assume new cr3 form unless proven otherwise - new_cr3_form = True - # these pixels are expected to be black on digitally created PDFs previous to 1/1/2023 - pixels = [ - (110, 3520), - (3080, 3046), - (3050, 2264), - (2580, 6056), - (1252, 154), - (2582, 4166), - (1182, 1838), - ] - new_pixels = [ - (215, 2567), - (872, 2568), - (3338, 3060), - (1690, 2574), - (4834, 279) - ] - for pixel in new_pixels: - rgb_pixel = pages[1].getpixel(pixel) - if not (rgb_pixel[0] == 0 and rgb_pixel[1] == 0 and rgb_pixel[2] == 0): - new_cr3_form = False - continue - if args.v: - print("Pixel" + "(%04d,%04d)" % pixel + ": " + str(rgb_pixel)) - if not new_cr3_form: - for pixel in pixels: - rgb_pixel = pages[1].getpixel(pixel) - if not (rgb_pixel[0] == 0 and rgb_pixel[1] == 0 and rgb_pixel[2] == 0): - digital_end_to_end = False - continue - if args.v: - print("Pixel" + "(%04d,%04d)" % pixel + ": " + str(rgb_pixel)) - if args.v: - print("PDF Digital End to End?: " + str(digital_end_to_end)) - if not digital_end_to_end: - if args.v: - sys.stderr.write("Error: Non-digitally created PDF detected.\n") - continue - - # crop out the narrative and diagram into PIL.Image objects - if args.v: - print("Cropping narrative and diagram from images") - try: - if new_cr3_form: - narrative_image = pages[1].crop((90, 3026, 2496, 5466)) - diagram_image = pages[1].crop((2496, 3036, 4836, 5464)) - else: - narrative_image = pages[1].crop((96, 3683, 2580, 6049)) - diagram_image = pages[1].crop((2589, 3531, 5001, 6048)) - except: - sys.stderr.write( - "Error: Failed to extract the image of the narative and diagram from image in memory\n" - ) - continue - - # use tesseract to OCR the text - if args.v: - print("OCRing narrative") - narrative = "" - try: - narrative = pytesseract.image_to_string(narrative_image) - if args.v: - print("Extracted Text:\n") - print(narrative) - except: - sys.stderr.write("Error: Failed to OCR the narrative\n") - continue - - # do we want to save a PNG file from the image data that was cropped out where the crash diagram is expected to be? - if args.save_diagram_s3: - diagram_uuid = uuid4() - if args.v: - print("Saving PNG of diagram to S3") - try: - # never touch the disk; store the image data in a few steps to get to a variable of binary data - buffer = io.BytesIO() - diagram_image.save(buffer, format="PNG") - output_diagram = s3.put_object( - Body=buffer.getvalue(), - Bucket=args.save_diagram_s3[0], - Key=args.save_diagram_s3[1] + "/" + str(diagram_uuid) + ".png", - ) - if args.v: - print( - "update_crash_metadata(crash_id: " - + str(crash["crash_id"]) - + ", ...) with diagram filename" - ) - if not (isinstance(crash["cr3_file_metadata"], dict)): - crash["cr3_file_metadata"] = {} - crash["cr3_file_metadata"]["diagram_s3_file"] = str(diagram_uuid) + ".png" - update_crash_metadata(crash["crash_id"], crash["cr3_file_metadata"]) - except: - sys.stderr.write( - "Error: Failed setting s3 object containing the diagram PNG file\n" - ) - continue - - # Save a PNG file from the image data to disk - if args.save_diagram_disk: - if args.v: - print("Saving PNG of diagram to disk") - try: - path = args.save_diagram_disk[0] + "/" + str(crash["crash_id"]) + ".png" - diagram_image.save(path) - except: - sys.stderr.write("Error: Failed saving diagram PNG file to disk\n") - - # Store the OCR'd text results from the attempt in the database for the current crash id? - if args.update_narrative: - update_crash_narrative(crash["crash_id"], narrative) - - """ - if (args.save_diagram_s3 and args.update_narrative): - if (args.v): - print("update_crash_metadata(crash_id: " + str(crash['crash_id']) + ", ...) with success flag") - if not(isinstance(crash['cr3_file_metadata'], dict)): - crash['cr3_file_metadata'] = {} - crash['cr3_file_metadata']['successful_ocr_diagram_extraction'] = True - update_crash_metadata(crash['crash_id'], crash['cr3_file_metadata']) - """ - - if args.update_timestamp: - update_crash_processed_date(crash["crash_id"]) - - if args.v: - print("\n") diff --git a/atd-etl/cr3_extract_diagram/env_template b/atd-etl/cr3_extract_diagram/env_template deleted file mode 100644 index 338e66ba3..000000000 --- a/atd-etl/cr3_extract_diagram/env_template +++ /dev/null @@ -1,5 +0,0 @@ -HASURA_ENDPOINT= -HASURA_ADMIN_KEY= -AWS_DEFAULT_REGION= -AWS_ACCESS_KEY_ID= -AWS_SECRET_ACCESS_KEY= diff --git a/atd-etl/cr3_extract_diagram/requirements.txt b/atd-etl/cr3_extract_diagram/requirements.txt deleted file mode 100644 index b5fad467d..000000000 --- a/atd-etl/cr3_extract_diagram/requirements.txt +++ /dev/null @@ -1,4 +0,0 @@ -boto3==1.* -pdf2image==1.* -pytesseract==0.* -requests==2.* diff --git a/atd-etl/cris_import/.dockerignore b/atd-etl/cris_import/.dockerignore index 0a764a4de..7e8980c28 100644 --- a/atd-etl/cris_import/.dockerignore +++ b/atd-etl/cris_import/.dockerignore @@ -1 +1,4 @@ env +*.env +**.pyc +extracts/* diff --git a/atd-etl/cris_import/.gitignore b/atd-etl/cris_import/.gitignore index 0a764a4de..42fa33a7e 100644 --- a/atd-etl/cris_import/.gitignore +++ b/atd-etl/cris_import/.gitignore @@ -1 +1,3 @@ -env +extracts/* +!extracts/*.md +*.zip diff --git a/atd-etl/cris_import/Dockerfile b/atd-etl/cris_import/Dockerfile index 738ec1fcd..e0531f7fe 100644 --- a/atd-etl/cris_import/Dockerfile +++ b/atd-etl/cris_import/Dockerfile @@ -1,32 +1,12 @@ -FROM ubuntu:22.04 - -# Set the timezone -RUN ln -snf /usr/share/zoneinfo/America/Chicago /etc/localtime && echo America/Chicago > /etc/timezone -RUN apt-get update && apt-get install -y tzdata - -RUN apt-get -y upgrade -RUN apt-get install -y aptitude magic-wormhole vim black python3-pip libmagic1 file - -# install zip archive tool & pgloader for CRIS export use -RUN apt-get install -y p7zip-full pgloader rsync - -COPY requirements.txt /tmp/requirements.txt -RUN pip install -r /tmp/requirements.txt - -# bastion host support for local dev -RUN apt-get install -y openssh-server -# sshd needs this folder for connection tracking -RUN mkdir /run/sshd -# generate a keypair for ssh -RUN ssh-keygen -t ed25519 -C "airflow@airflow" -f /root/.ssh/id_ed25519 -q -N "" -# allow ssh to localhost -RUN cat /root/.ssh/id_ed25519.pub > /root/.ssh/authorized_keys -# disable the "are you sure you want to connect" prompt -RUN printf "Host *\n\tStrictHostKeyChecking no\n" >> /root/.ssh/config - -COPY entrypoint.sh /entrypoint.sh +FROM python:3.11-slim +WORKDIR /app COPY . /app -WORKDIR /app -CMD ["/entrypoint.sh"] +RUN apt-get -y update +# we need p7zip-full to extract CRIS zips +# poppler-utils as a pdf2image dependency to snip crash diagrams out of pdfs +RUN apt-get install -y p7zip-full poppler-utils +RUN chmod -R 755 /app/* +RUN chmod +x /app/cris_import.py +RUN pip install -r requirements.txt diff --git a/atd-etl/cris_import/README.md b/atd-etl/cris_import/README.md index 58567c065..2a601598b 100644 --- a/atd-etl/cris_import/README.md +++ b/atd-etl/cris_import/README.md @@ -1,23 +1,94 @@ -## Import script for CRIS zip file extracts +# CRIS Import ETL -The contents of this directory define a Docker image that can be used in an Airflow DAG to download and process the zip archives that are delivered to us by CRIS to our SFTP endpoint. +This ETL manages the processing and importing of TxDOT CRIS data into the Vision Zero database. -### Diagram of process flow +All data processing is managed by a single script, `cris_import.py` which processes both CSV files and CR3 PDF crash reports. The script supports a number of CLI arguments to handle a number of data processing scenarios. -![Excalidraw Diagram](./docs/overview_of_import_process.png) +## Quick start +Set your `ENV` to `dev` in order to safely run the S3 operations locally. -## Development Tooling +1. Start your local Vision Zero cluster (database + Hasura + editor). -### Zip file acquisition +2. Save a copy of the `env_template` file as `.env`, and fill in the details. -The CRIS import usually works by pulling down a zip archive from the SFTP endpoint. However, during development, it's much easier if you can have it use a zip file that you have locally on your machine instead. This can be accomplished by putting a zip file (still encrypted and using "CRIS extract" password) in a folder named `atd-etl/cris_import/development_extracts/`. Create the directory if needed. If there are no zip files in that folder, the program will automatically revert to inspecting the SFTP endpoint. +3. Build and run the docker image. This will drop you into the docker image's shell: -### Local testing +```shell +$ docker compose build # <- only need to do this once +$ docker compose run cris_import +``` + +4. Run the CRIS import script. This will download any extracts available in S3, load the CSV crash records into the database, crop crash diagrams out of the CR3 PDFs, and upload the CR3 pdfs and crash diagrams to the s3 bucket. + +```shell +# from the cris_import container's shell +$ ./cris_import.py --s3-download --s3-upload --csv --pdf +``` + +## Environment + +Create your environment by saving a copy of the `env_template` file as `.env`. The template includes default values for local development. See the password store for more details. + +All interactions with AWS S3 occur with against a single bucket which has subdirectores for the `dev` and `prod` environments. If you set your `ENV` to `dev` you can safely run this ETL's S3 operations. + +``` +ENV=dev +HASURA_GRAPHQL_ENDPOINT="http://localhost:8084/v1/graphql" +AWS_ACCESS_KEY_ID= +AWS_SECRET_ACCESS_KEY= +BUCKET_NAME= +EXTRACT_PASSWORD= +``` + +## Usage examples + +The only script that should be run directly is `cris_import.py`. It supports the following CLI args: + +```shell + --csv Process CSV files. At least one of --csv or --pdf is required. + --pdf Process CR3 pdfs. At least one of --csv or --pdf is required. + --s3-download Source zip extracts from S3 bucket + --s3-upload Upload cr3 pdfs and digrams to S3 bucket + --s3-archive If using --s3-download, move the processed extracts from ./inbox to ./archive when done + --skip-unzip Only process files that are already unzipped in the local directory + --verbose, -v Sets logging level to DEBUG mode + --workers The number of concurrent workers to use when processing PDFs +``` + +### Production run + +This is the expected invocation during a production deployment. It will download any extracts available in S3, load the CSV crash records into the database, crop crash diagrams out of the CR3 PDFs, upload the CR3 pdfs and crash diagrams to the s3 bucket. It also makes use of the `--workers` flag to increase the size of the processing pool to `8`. + +This invocation also "archives" the extract zips by moving them from `./inbox` to `./archive` subdirectory of the S3 bucket. + +```shell +# from the cris_import container's shell +$ ./cris_import.py --s3-download --s3-upload --s3-archive --csv --pdf --workers 8 +``` + +### Local import + +Process any extract zips in your local `./extracts` directory. CSVs will be loaded ino the db, and crash diagrams will be extracted but not uploaded to S3. + +```shell +$ ./cris_import.py --csv --pdf +``` + +### Un-archive + +During local development, you may want to restore the zips to the `./inbox` after archiving them. Use the helper script for that. It will prompt you for confirmation before executing this step, since the production bucket archive may contain hundreds of extracts. + +```shell +$ python _restore_zips_from_archive.py +``` + +### Other flags -Make a copy of `env-template` and name it `env`. Fill in the values using the 1Password Connect Server secrets (see entries titled `Endpoint for 1Password Connect Server API` and `Vault ID of API Accessible Secrets vault`) and your personal access token. +```shell +# process any unzipped extract CSVs you have in your `./extracts` directory +$ ./cris_import.py --skip-unzip --csv -Drop a CRIS extract zip file into your development folder as described above, and run the import script: -```bash -docker compose run cris-import +# process pdfs with more workers and in debug mode +$ ./cris_import.py --pdf --skip-unzip --s3-upload --workers 8 --verbose ``` diff --git a/atd-etl/cris_import/_restore_zips_from_archive.py b/atd-etl/cris_import/_restore_zips_from_archive.py new file mode 100644 index 000000000..82481d775 --- /dev/null +++ b/atd-etl/cris_import/_restore_zips_from_archive.py @@ -0,0 +1,47 @@ +""" +Move all zip files in the bucket from ./archive to ./inbox. This is intended to be used +as a helper script for local development. +""" + +import os + +import boto3 + + +from utils.files import ( + get_extract_zips_to_download_s3, +) + +BUCKET_NAME = os.environ["BUCKET_NAME"] +ENV = os.environ["ENV"] + + +def main(): + s3_resource = boto3.resource("s3") + + extracts = get_extract_zips_to_download_s3(subdir="archive") + + print(f"{len(extracts)} extracts to restore") + + if not extracts: + return + + ok_to_proceed = input( + f"About to copy {len(extracts)} extracts into the './inbox' bucket subdirectory in the **{ENV}** environment. Type 'y' to continue: " + ) + + if ok_to_proceed != "y": + print("aborted") + return + + for extract in extracts: + file_key = extract["s3_file_key"] + new_key = file_key.replace("archive", "inbox") + print(f"Copying zip to {BUCKET_NAME}/{new_key}") + s3_resource.meta.client.copy( + {"Bucket": BUCKET_NAME, "Key": file_key}, BUCKET_NAME, new_key + ) + + +if __name__ == "__main__": + main() diff --git a/atd-etl/cris_import/cris_import.py b/atd-etl/cris_import/cris_import.py index dcf210151..e94a9f3be 100755 --- a/atd-etl/cris_import/cris_import.py +++ b/atd-etl/cris_import/cris_import.py @@ -1,925 +1,92 @@ -#!/usr/bin/python3 - -import os -import re -import time -import hashlib -import datetime -import glob -import tempfile -import magic -from subprocess import Popen, PIPE - -import shutil -import boto3 -import botocore -import sysrsync -import psycopg2 -import psycopg2.extras -import onepasswordconnectsdk -from sshtunnel import SSHTunnelForwarder -from onepasswordconnectsdk.client import Client, new_client - -import lib.mappings as mappings -import lib.sql as util -import lib.graphql as graphql -from lib.helpers_import import insert_crash_change_template as insert_change_template -from lib.sshkeytempdir import SshKeyTempDir, write_key_to_file -from lib.testing import mess_with_incoming_records_to_ensure_updates - -DEPLOYMENT_ENVIRONMENT = os.environ.get( - "ENVIRONMENT", "development" -) # our current environment from ['production', 'development'] -ONEPASSWORD_CONNECT_TOKEN = os.getenv("OP_API_TOKEN") # our secret to get secrets 🤐 -ONEPASSWORD_CONNECT_HOST = os.getenv("OP_CONNECT") # where we get our secrets -VAULT_ID = os.getenv("OP_VAULT_ID") - - -def main(): - secrets = get_secrets() - - # 😢 why not `global variable = value`?? - global SFTP_ENDPOINT - global ZIP_PASSWORD - - global AWS_ACCESS_KEY_ID - global AWS_SECRET_ACCESS_KEY - global AWS_CSV_ARCHIVE_BUCKET_NAME - global AWS_CSV_ARCHIVE_PATH - - global DB_HOST - global DB_USER - global DB_PASS - global DB_NAME - global DB_SSL_REQUIREMENT - - global DB_BASTION_HOST_SSH_USERNAME - global DB_BASTION_HOST_SSH_PRIVATE_KEY - global DB_BASTION_HOST - global DB_RDS_HOST - - global GRAPHQL_ENDPOINT - global GRAPHQL_ENDPOINT_KEY - - global S3_EXTRACT_BUCKET - - SFTP_ENDPOINT = secrets["SFTP_endpoint"] - ZIP_PASSWORD = secrets["archive_extract_password"] - - AWS_ACCESS_KEY_ID = secrets["aws_access_key"] - AWS_SECRET_ACCESS_KEY = secrets["aws_secret_key"] - AWS_CSV_ARCHIVE_BUCKET_NAME = secrets["s3_archive_bucket_name"] - AWS_CSV_ARCHIVE_PATH = secrets["s3_archive_path"] - - DB_HOST = secrets["database_host"] - DB_USER = secrets["database_username"] - DB_PASS = secrets["database_password"] - DB_NAME = secrets["database_name"] - DB_SSL_REQUIREMENT = secrets["database_ssl_policy"] - - DB_BASTION_HOST_SSH_USERNAME = secrets["bastion_ssh_username"] - DB_BASTION_HOST_SSH_PRIVATE_KEY = secrets["bastion_ssh_private_key"] - DB_BASTION_HOST = secrets["bastion_host"] - DB_RDS_HOST = secrets["database_host"] - - GRAPHQL_ENDPOINT = secrets["graphql_endpoint"] - GRAPHQL_ENDPOINT_KEY = secrets["graphql_endpoint_key"] - - S3_EXTRACT_BUCKET = secrets["s3_extract_bucket"] - - local_mode = False - if bool(glob.glob("/app/development_extracts/*.zip")): - local_mode = True - - zip_location = None - if not local_mode: # Production - zip_location = download_s3_archive() - else: # Development. Put a zip in the development_extracts directory to use it. - zip_location = specify_extract_location() - - if not zip_location: - return - - extracted_archives = unzip_archives(zip_location) - for archive_id, archive, filename_in_s3 in extracted_archives: - logical_groups_of_csvs = group_csvs_into_logical_groups(archive, dry_run=False) - for logical_group in logical_groups_of_csvs: - desired_schema_name = create_import_schema_name(logical_group) - schema_name = create_target_import_schema(desired_schema_name) - pgloader_command_files = pgloader_csvs_into_database(schema_name) - trimmed_token = remove_trailing_carriage_returns(pgloader_command_files) - typed_token = align_db_typing(trimmed_token) - align_records_token = align_records(typed_token) - clean_up_import_schema(align_records_token) - mark_extract_as_imported(archive_id) - move_extract_into_processed(filename_in_s3) - - -def move_extract_into_processed(extract): - # Define the source and destination paths - source = { - "Bucket": S3_EXTRACT_BUCKET, - "Key": f"{DEPLOYMENT_ENVIRONMENT}/inbox/{extract}", - } - destination = os.path.join(f"{DEPLOYMENT_ENVIRONMENT}/processed/", extract) - - session = boto3.Session( - aws_access_key_id=AWS_ACCESS_KEY_ID, - aws_secret_access_key=AWS_SECRET_ACCESS_KEY, - ) - - s3 = session.client("s3") - bucket = S3_EXTRACT_BUCKET - - # Copy the file from the source to the destination - s3.copy(source, bucket, destination) - - # Delete the file from the source - s3.delete_object(Bucket=bucket, Key=source["Key"]) - - print(f"Moving {extract} into processed") - - -def mark_extract_as_imported(id): - with SshKeyTempDir() as key_directory: - write_key_to_file( - key_directory + "/id_ed25519", DB_BASTION_HOST_SSH_PRIVATE_KEY + "\n" - ) - ssh_tunnel = SSHTunnelForwarder( - (DB_BASTION_HOST), - ssh_username=DB_BASTION_HOST_SSH_USERNAME, - ssh_private_key=f"{key_directory}/id_ed25519", - remote_bind_address=(DB_RDS_HOST, 5432), - ) - ssh_tunnel.start() - - pg = psycopg2.connect( - host="localhost", - port=ssh_tunnel.local_bind_port, - user=DB_USER, - password=DB_PASS, - dbname=DB_NAME, - sslmode=DB_SSL_REQUIREMENT, - sslrootcert="/root/rds-combined-ca-bundle.pem", - ) - - cursor = pg.cursor() - cursor.execute( - """ - UPDATE cris_import_log - SET completed_at = %s - WHERE id = %s - """, - (datetime.datetime.utcnow(), id), - ) - - pg.commit() - pg.close() - - -def get_secrets(): - REQUIRED_SECRETS = { - "SFTP_endpoint": { - "opitem": "Vision Zero CRIS Import", - "opfield": f"Common.SFTP Endpoint", - "opvault": VAULT_ID, - }, - "sftp_endpoint_private_key": { - "opitem": "SFTP Endpoint Key", - "opfield": ".private key", - "opvault": VAULT_ID, - }, - "archive_extract_password": { - "opitem": "Vision Zero CRIS Import", - "opfield": "Common.CRIS Archive Extract Password", - "opvault": VAULT_ID, - }, - "bastion_host": { - "opitem": "RDS Bastion Host", - "opfield": f"{DEPLOYMENT_ENVIRONMENT}.Host", - "opvault": VAULT_ID, - }, - "bastion_ssh_username": { - "opitem": "RDS Bastion Host", - "opfield": f"{DEPLOYMENT_ENVIRONMENT}.ssh Username", - "opvault": VAULT_ID, - }, - "database_host": { - "opitem": "Vision Zero Database", - "opfield": f"{DEPLOYMENT_ENVIRONMENT}.Database Host", - "opvault": VAULT_ID, - }, - "database_username": { - "opitem": "Vision Zero Database", - "opfield": f"{DEPLOYMENT_ENVIRONMENT}.Database Username", - "opvault": VAULT_ID, - }, - "database_password": { - "opitem": "Vision Zero Database", - "opfield": f"{DEPLOYMENT_ENVIRONMENT}.Database Password", - "opvault": VAULT_ID, - }, - "database_name": { - "opitem": "Vision Zero Database", - "opfield": f"{DEPLOYMENT_ENVIRONMENT}.Database Name", - "opvault": VAULT_ID, - }, - "database_ssl_policy": { - "opitem": "Vision Zero Database", - "opfield": f"{DEPLOYMENT_ENVIRONMENT}.Database SSL Policy", - "opvault": VAULT_ID, - }, - "aws_access_key": { - "opitem": "Vision Zero CRIS Import", - "opfield": f"{DEPLOYMENT_ENVIRONMENT}.AWS Access key", - "opvault": VAULT_ID, - }, - "aws_secret_key": { - "opitem": "Vision Zero CRIS Import", - "opfield": f"{DEPLOYMENT_ENVIRONMENT}.AWS Secret key", - "opvault": VAULT_ID, - }, - "s3_archive_bucket_name": { - "opitem": "Vision Zero CRIS Import", - "opfield": f"{DEPLOYMENT_ENVIRONMENT}.S3 Archive Bucket Name", - "opvault": VAULT_ID, - }, - "s3_archive_path": { - "opitem": "Vision Zero CRIS Import", - "opfield": f"{DEPLOYMENT_ENVIRONMENT}.S3 Archive Path", - "opvault": VAULT_ID, - }, - "graphql_endpoint": { - "opitem": "Vision Zero CRIS Import", - "opfield": f"{DEPLOYMENT_ENVIRONMENT}.GraphQL Endpoint", - "opvault": VAULT_ID, - }, - "graphql_endpoint_key": { - "opitem": "Vision Zero CRIS Import", - "opfield": f"{DEPLOYMENT_ENVIRONMENT}.GraphQL Endpoint key", - "opvault": VAULT_ID, - }, - "sftp_endpoint_private_key": { - "opitem": "SFTP Endpoint Key", - "opfield": ".private key", - "opvault": VAULT_ID, - }, - "bastion_ssh_private_key": { - "opitem": "RDS Bastion Key", - "opfield": ".private key", - "opvault": VAULT_ID, - }, - "s3_extract_bucket": { - "opitem": "Vision Zero CRIS Import", - "opfield": f"{DEPLOYMENT_ENVIRONMENT}.S3 Extract Bucket", - "opvault": VAULT_ID, - }, - } - - # instantiate a 1Password client - client: Client = new_client(ONEPASSWORD_CONNECT_HOST, ONEPASSWORD_CONNECT_TOKEN) - # get the requested secrets from 1Password - return onepasswordconnectsdk.load_dict(client, REQUIRED_SECRETS) - - -def specify_extract_location(): - zip_files = glob.glob("/app/development_extracts/*.zip") - if not zip_files: - return False - - zip_tmpdir = tempfile.mkdtemp() - - for file_to_copy in zip_files: - shutil.copy(file_to_copy, zip_tmpdir) - - return zip_tmpdir - - -def download_s3_archive(): - session = boto3.Session( - aws_access_key_id=AWS_ACCESS_KEY_ID, - aws_secret_access_key=AWS_SECRET_ACCESS_KEY, - ) - - s3 = session.client("s3") - bucket = S3_EXTRACT_BUCKET - - with SshKeyTempDir() as key_directory: - write_key_to_file( - key_directory + "/id_ed25519", DB_BASTION_HOST_SSH_PRIVATE_KEY + "\n" - ) - ssh_tunnel = SSHTunnelForwarder( - (DB_BASTION_HOST), - ssh_username=DB_BASTION_HOST_SSH_USERNAME, - ssh_private_key=f"{key_directory}/id_ed25519", - remote_bind_address=(DB_RDS_HOST, 5432), - ) - ssh_tunnel.start() - - pg = psycopg2.connect( - host="localhost", - port=ssh_tunnel.local_bind_port, - user=DB_USER, - password=DB_PASS, - dbname=DB_NAME, - sslmode=DB_SSL_REQUIREMENT, - sslrootcert="/root/rds-combined-ca-bundle.pem", - ) - - uploads_prefix = f"{DEPLOYMENT_ENVIRONMENT}/inbox/" - # Get list of all objects in the bucket with the specified prefix - objects = s3.list_objects(Bucket=bucket, Prefix=uploads_prefix) - - cursor = pg.cursor() - - extracts_to_process = [] - - for obj in objects["Contents"]: - full_object_path = obj["Key"] - object_name = os.path.basename(full_object_path) - - # Skip the "folder" object - if full_object_path == uploads_prefix: - continue - - # Extract the S3 prefix from the full object path - object_path = os.path.dirname(full_object_path) - - extracts_to_process.append((object_path, object_name)) - - cursor.execute( - """ - INSERT INTO cris_import_log (object_path, object_name) - VALUES (%s, %s) - """, - (object_path, object_name), - ) - - # Commit the changes and close the connection - pg.commit() - pg.close() - - # Check if there are no new files to process - if len(extracts_to_process) == 0: - raise Exception("No new files to process") - - # Create a new temporary directory - directory_of_extracts = tempfile.mkdtemp() - - for extract in extracts_to_process: - full_s3_path = os.path.join(extract[0], extract[1]) - local_extract_path = os.path.join(directory_of_extracts, extract[1]) - s3.download_file(bucket, full_s3_path, local_extract_path) - - # # Check if the file has been downloaded - if not os.path.exists(local_extract_path): - raise Exception(f"File {local_extract_path} was not downloaded") - - # # Check if the file is a zip file - if "Zip" not in magic.from_file(local_extract_path): - raise Exception(f"File {local_extract_path} is not a valid zip file") - - return directory_of_extracts - - -def unzip_archives(archives_directory): - """ - Unzips (and decrypts) archives received from CRIS - - Arguments: A path to a directory containing archives as a string - - Returns: A list of strings, each denoting a path to a folder - containing an archive's contents - """ - - with SshKeyTempDir() as key_directory: - write_key_to_file( - key_directory + "/id_ed25519", DB_BASTION_HOST_SSH_PRIVATE_KEY + "\n" - ) - ssh_tunnel = SSHTunnelForwarder( - (DB_BASTION_HOST), - ssh_username=DB_BASTION_HOST_SSH_USERNAME, - ssh_private_key=f"{key_directory}/id_ed25519", - remote_bind_address=(DB_RDS_HOST, 5432), - ) - ssh_tunnel.start() - - pg = psycopg2.connect( - host="localhost", - port=ssh_tunnel.local_bind_port, - user=DB_USER, - password=DB_PASS, - dbname=DB_NAME, - sslmode=DB_SSL_REQUIREMENT, - sslrootcert="/root/rds-combined-ca-bundle.pem", - ) - - extracted_csv_directories = [] - for filename in os.listdir(archives_directory): - print("About to unzip: " + filename + "with the command ...") - extract_tmpdir = tempfile.mkdtemp() - unzip_command = f'7za -y -p{ZIP_PASSWORD} -o"{extract_tmpdir}" x "{archives_directory}/{filename}"' - print(unzip_command) - os.system(unzip_command) - - cursor = pg.cursor() - cursor.execute( - "select id from cris_import_log where object_name = %s order by created_at desc limit 1", - (filename,), +#!/usr/bin/env python +from utils.cli import get_cli_args +from utils.graphql import create_log_entry, set_log_entry_complete +from utils.logging import init_logger +from utils.process_csvs import process_csvs +from utils.process_pdfs import process_pdfs +from utils.files import ( + get_extract_dir, + get_unzipped_extracts_local, + get_extract_zips_todo_local, + get_extract_zips_to_download_s3, + download_extract_from_s3, + unzip_extract, + archive_extract_zip, +) + + +def main(cli_args): + if cli_args.skip_unzip: + extracts_todo = get_unzipped_extracts_local() + elif cli_args.s3_download: + extracts_todo = get_extract_zips_to_download_s3() + else: + extracts_todo = get_extract_zips_todo_local() + + logger.info(f"{len(extracts_todo)} extract(s) to process") + + if cli_args.s3_download and not extracts_todo: + # always short circuit if we find nothing in S3 + raise Exception("No extracts found in S3 bucket") + + for extract in extracts_todo: + records_processed = { + "crashes": 0, + "units": 0, + "persons": 0, + "charges": 0, + "pdfs": 0, + } + log_entry_id = create_log_entry(**extract) + extract_dir = get_extract_dir(extract["extract_name"]) + if cli_args.s3_download: + download_extract_from_s3( + extract["s3_file_key"], + extract["file_size"], + extract["local_zip_file_path"], ) - id = cursor.fetchone()[0] - extracted_csv_directories.append((id, extract_tmpdir, filename)) - - pg.commit() - pg.close() - - return extracted_csv_directories - - -def cleanup_temporary_directories( - zip_location, pgloader_command_files, extracted_archives -): - """ - Remove directories that have accumulated during the flow's execution - - Arguments: - zip_location: A string containing a path to a temporary directory - extracted_archives: A list of strings each containing a path to a temporary directory - unit_import_tmpdirs: A list of strings each containing a path to a temporary directory - person_import_tmpdirs: A list of strings each containing a path to a temporary directory - primaryperson_import_tmpdirs: A list of strings each containing a path to a temporary directory - charges_import_tmpdirs: A list of strings each containing a path to a temporary directory - - Returns: None - """ - - shutil.rmtree(zip_location) - - print(pgloader_command_files) - for directory in pgloader_command_files: - shutil.rmtree(directory) - - for directory in extracted_archives: - shutil.rmtree(directory) - - return None - - -def pgloader_csvs_into_database(map_state): - # Walk the directory and find all the CSV files - pgloader_command_files_tmpdir = tempfile.mkdtemp() - for root, dirs, files in os.walk(map_state["working_directory"]): - for filename in files: - if filename.endswith(".csv") and filename.startswith( - map_state["csv_prefix"] - ): - # Extract the table name from the filename. They are named `crash`, `unit`, `person`, `primaryperson`, & `charges`. - table = re.search("extract_[\d_]+(.*)_[\d].*\.csv", filename).group(1) + if not cli_args.skip_unzip: + unzip_extract(extract["local_zip_file_path"], extract_dir) + if cli_args.csv: + csv_records_processed_dict = process_csvs(extract_dir) + records_processed.update(csv_records_processed_dict) - headers_line_with_newline = None - - with open(map_state["working_directory"] + "/" + filename, "r") as file: - headers_line_with_newline = file.readline() - headers_line = headers_line_with_newline.strip() - - headers = headers_line.split(",") - command_file = pgloader_command_files_tmpdir + "/" + table + ".load" - print(f"Command file: {command_file}") - - with SshKeyTempDir() as key_directory: - write_key_to_file( - key_directory + "/id_ed25519", - DB_BASTION_HOST_SSH_PRIVATE_KEY + "\n", - ) - # we're going to get away with opening up this tunnel here for all pgloader commands - # because they get executed before this goes out of scope - ssh_tunnel = SSHTunnelForwarder( - (DB_BASTION_HOST), - ssh_username=DB_BASTION_HOST_SSH_USERNAME, - ssh_private_key=f"{key_directory}/id_ed25519", - remote_bind_address=(DB_RDS_HOST, 5432), - ) - ssh_tunnel.start() - - # See https://github.com/dimitri/pgloader/issues/768#issuecomment-693390290 - CONNECTION_STRING = f"postgresql://{DB_USER}:{DB_PASS}@localhost:{ssh_tunnel.local_bind_port}/{DB_NAME}?sslmode=allow" - - with open(command_file, "w") as file: - file.write( - f""" - LOAD CSV - FROM '{map_state["working_directory"]}/{filename}' ({headers_line}) - INTO {CONNECTION_STRING}&{map_state["import_schema"]}.{table} ({headers_line}) - WITH truncate, - skip header = 1 - BEFORE LOAD DO - $$ drop table if exists {map_state["import_schema"]}.{table}; $$, - $$ create table {map_state["import_schema"]}.{table} (\n""" - ) - fields = [] - for field in headers: - fields.append(f" {field} character varying") - file.write(",\n".join(fields)) - file.write( - f""" - ); - $$;\n""" - ) - cmd = f"pgloader {command_file}" - if os.system(cmd) != 0: - raise Exception("pgloader did not execute successfully") - - return map_state - - -def remove_trailing_carriage_returns(map_state): - with SshKeyTempDir() as key_directory: - write_key_to_file( - key_directory + "/id_ed25519", DB_BASTION_HOST_SSH_PRIVATE_KEY + "\n" - ) - ssh_tunnel = SSHTunnelForwarder( - (DB_BASTION_HOST), - ssh_username=DB_BASTION_HOST_SSH_USERNAME, - ssh_private_key=f"{key_directory}/id_ed25519", - remote_bind_address=(DB_RDS_HOST, 5432), + no_crashes_found = ( + True if cli_args.csv and records_processed["crashes"] == 0 else False ) - ssh_tunnel.start() - - pg = psycopg2.connect( - host="localhost", - port=ssh_tunnel.local_bind_port, - user=DB_USER, - password=DB_PASS, - dbname=DB_NAME, - sslmode=DB_SSL_REQUIREMENT, - sslrootcert="/root/rds-combined-ca-bundle.pem", - ) - - columns = util.get_input_tables_and_columns(pg, map_state["import_schema"]) - for column in columns: - util.trim_trailing_carriage_returns(pg, map_state["import_schema"], column) - return map_state - - -def align_db_typing(map_state): - """ - This function compares the target table in the VZDB with the corollary table in the import schema. For each column pair, - the type of the VZDB table's column is applied to the import table. This acts as a strong typing check for all input data, - and will raise an exception if CRIS begins feeding the system data it's not ready to parse and handle. - - Arguments: - data_loaded_token: Boolean value received from the previously ran task which imported the CSV files into the database. - - Returns: Boolean representing the completion of the import table type alignment - """ - - # fmt: off - # Note about the above comment. It's used to disable black linting. For this particular task, - # I believe it's more readable to not have it wrap long lists of function arguments. - - with SshKeyTempDir() as key_directory: - write_key_to_file(key_directory + "/id_ed25519", DB_BASTION_HOST_SSH_PRIVATE_KEY + "\n") - ssh_tunnel = SSHTunnelForwarder( - (DB_BASTION_HOST), - ssh_username=DB_BASTION_HOST_SSH_USERNAME, - ssh_private_key=f"{key_directory}/id_ed25519", - remote_bind_address=(DB_RDS_HOST, 5432) + if cli_args.pdf and not no_crashes_found: + pdfs_processed_count = process_pdfs( + extract_dir, cli_args.s3_upload, cli_args.workers ) - ssh_tunnel.start() - - pg = psycopg2.connect( - host='localhost', - port=ssh_tunnel.local_bind_port, - user=DB_USER, - password=DB_PASS, - dbname=DB_NAME, - sslmode=DB_SSL_REQUIREMENT, - sslrootcert="/root/rds-combined-ca-bundle.pem" - ) - - # query list of the tables which were created by the pgloader import process - imported_tables = util.get_imported_tables(pg, map_state["import_schema"]) - - # pull our map which connects the names of imported tables to the target tables in VZDB - table_mappings = mappings.get_table_map() - - # iterate over table list to make sure we only are operating on the tables we've designated: - # crash, unit, person, & primaryperson - for input_table in imported_tables: - output_table = table_mappings.get(input_table["table_name"]) - if not output_table: - continue - - # Safety check to make sure that all incoming data has each row complete with a value in each of the "key" columns. Key columns are - # the columns which are used to uniquely identify the entity being represented by a record in the database. - util.enforce_complete_keying(pg, mappings.get_key_columns(), output_table, map_state["import_schema"], input_table) - - # collect the column types for the target table, to be applied to the imported table - output_column_types = util.get_output_column_types(pg, output_table) - - # iterate on each column - for column in output_column_types: - # for that column, confirm that it is included in the incoming CRIS data - input_column_type = util.get_input_column_type(pg, map_state["import_schema"], input_table, column) - - # skip columns which do not appear in the import data, such as the columns we have added ourselves to the VZDB - if not input_column_type: - continue - - # form an ALTER statement to apply the type to the imported table's column - alter_statement = util.form_alter_statement_to_apply_column_typing(map_state["import_schema"], input_table, column) - print(f"Aligning types for {map_state['import_schema']}.{input_table['table_name']}.{column['column_name']}.") - - # and execute the statement - cursor = pg.cursor() - cursor.execute(alter_statement) - pg.commit() - - # fmt: on - return map_state - - -def align_records(map_state): - """ - This function begins by preparing a number of list and string variables containing SQL fragments. - These fragments are used to create queries which inspect the data differences between a pair of records. - How the records differ, if at all, is used to create either an UPDATE or INSERT statement that keeps the VZDB - up to date, including via backfill, from CRIS data. - - Additionally, this function demonstrates the ability to query a list of fields which are different for reporting - and logging purposes. - - Arguments: - typed_token: Boolean value received from task which aligned data types. - - Returns: Boolean representing the completion of the import / update - """ - - dry_run = map_state["dry_run"] - - # fmt: off - - with SshKeyTempDir() as key_directory: - write_key_to_file(key_directory + "/id_ed25519", DB_BASTION_HOST_SSH_PRIVATE_KEY + "\n") - ssh_tunnel = SSHTunnelForwarder( - (DB_BASTION_HOST), - ssh_username=DB_BASTION_HOST_SSH_USERNAME, - ssh_private_key=f"{key_directory}/id_ed25519", - remote_bind_address=(DB_RDS_HOST, 5432) - ) - ssh_tunnel.start() - - pg = psycopg2.connect( - host='localhost', - port=ssh_tunnel.local_bind_port, - user=DB_USER, - password=DB_PASS, - dbname=DB_NAME, - sslmode=DB_SSL_REQUIREMENT, - sslrootcert="/root/rds-combined-ca-bundle.pem" - ) - - print("Finding updated records") - - output_map = mappings.get_table_map() - table_keys = mappings.get_key_columns() - - for table in output_map.keys(): - - # Query the list of columns in the target table - target_columns = util.get_target_columns(pg, output_map, table) - - # Get the list of columns which are designated to to be protected from updates - no_override_columns = mappings.no_override_columns()[output_map[table]] - - # Load up the list of imported records to iterate over. - imported_records = util.load_input_data_for_keying(pg, map_state["import_schema"], table) - - # Get columns used to uniquely identify a record - key_columns = mappings.get_key_columns()[output_map[table]] + records_processed["pdfs"] = pdfs_processed_count + elif cli_args.pdf and no_crashes_found: + # we skip PDF processing when there are no CSV crashes, because in those cases + # the extract may not contain a `crashReports` directory — and that will + # cause an unwanted failure + logger.info("Skipping PDF processing because no CSV crashes were processed") - # Build SQL fragment used as a JOIN ON clause to link input and output tables - linkage_clauses, linkage_sql = util.get_linkage_constructions(key_columns, output_map, table, map_state["import_schema"]) + # if processing CSVs and PDFs, make sure the number of crashes matches the number of PDFs + if cli_args.pdf and cli_args.csv: + if records_processed["crashes"] != records_processed["pdfs"]: + raise Exception( + "Mismatch between # of crashes processed vs PDFs. This should never happen!" + ) - # Build list of columns available for import by inspecting the input table - input_column_names = util.get_input_column_names(pg, map_state["import_schema"], table, target_columns) - - # iterate over each imported record and determine correct action - should_skip_update = False - - for source in imported_records: - # Check unique key columns to make sure they all have a value - for key_column in key_columns: - key_column_value = source[key_column] - if key_column_value is None: - print("\nSkipping because unique key column is missing") - print(f"Table: {table}") - print(f"Missing key column: {key_column}") - should_skip_update = True - - # If we are missing a column that uniquely identifies the record, we should skip the update - if should_skip_update: - for key_column in key_columns: - print(f"{key_column}: {source[key_column]}") - continue - - # generate some record specific SQL fragments to identify the record in larger queries - record_key_sql, import_key_sql = util.get_key_clauses(table_keys, output_map, table, source, map_state["import_schema"]) - - # To decide to UPDATE, we need to find a matching target record in the output table. - # This function returns that record as a token of existence or false if none is available - if util.fetch_target_record(pg, output_map, table, record_key_sql): - - # Cause the CR3s to be re-downloaded next time that ETL is run - util.invalidate_cr3(pg, source["crash_id"]) - - # Build 2 sets of 3 arrays of SQL fragments, one element per column which can be `join`ed together in subsequent queries. - column_assignments, column_comparisons, column_aggregators, important_column_assignments, important_column_comparisons, important_column_aggregators = util.get_column_operators(target_columns, no_override_columns, source, table, output_map, map_state["import_schema"]) - - # Check if the proposed update would result in a non-op, such as if there are no changes between the import and - # target record. If this is the case, continue to the next record. There's no changes needed in this case. - if util.check_if_update_is_a_non_op(pg, column_comparisons, output_map, table, linkage_clauses, record_key_sql, map_state["import_schema"]): - #print(f"Skipping update for {output_map[table]} {record_key_sql}") - continue - - # For future reporting and debugging purposes: Use SQL to query a list of - # column names which have differing values between the import and target records. - # Return these column names as an array and display them in the output. - changed_columns = util.get_changed_columns(pg, column_aggregators, output_map, table, linkage_clauses, record_key_sql, map_state["import_schema"]) - - # Do the same thing, but this time using the SQL clauses formed from "important" columns. - important_changed_columns = util.get_changed_columns(pg, important_column_aggregators, output_map, table, linkage_clauses, record_key_sql, map_state["import_schema"]) - - if len(important_changed_columns['changed_columns']) > 0: - # This execution branch leads to the conflict resolution system in VZ - - if util.is_change_existing(pg, table, source["crash_id"]): - continue - - print("Important Changed column count: " + str(len(important_changed_columns['changed_columns']))) - print("Important Changed Columns:" + str(important_changed_columns["changed_columns"])) - - print("Changed column count: " + str(len(changed_columns['changed_columns']))) - print("Changed Columns:" + str(changed_columns["changed_columns"])) - - # build an comma delimited list of changed columns - all_changed_columns = ", ".join(important_changed_columns["changed_columns"] + changed_columns["changed_columns"]) - - # insert_change_template() is used with minimal changes from previous version of the ETL to better ensure conflict system compatibility - mutation = insert_change_template(new_record_dict=source, differences=all_changed_columns, crash_id=str(source["crash_id"])) - if not dry_run: - print("Making a mutation for " + str(source["crash_id"])) - graphql.make_hasura_request(query=mutation, endpoint=GRAPHQL_ENDPOINT, admin_secret=GRAPHQL_ENDPOINT_KEY) - else: - # This execution branch leads to forming an update statement and executing it - if len(changed_columns["changed_columns"]) == 0: - print(update_statement) - raise "No changed columns? Why are we forming an update? This is a bug." - - # Display the before and after values of the columns which are subject to update - util.show_changed_values(pg, changed_columns, output_map, table, linkage_clauses, record_key_sql, map_state["import_schema"]) - - # Using all the information we've gathered, form a single SQL update statement to update the target record. - update_statement = util.form_update_statement(output_map, table, column_assignments, map_state["import_schema"], record_key_sql, linkage_sql, changed_columns) - print(f"Executing update in {output_map[table]} for where " + record_key_sql) - - # Execute the update statement - util.try_statement(pg, output_map, table, record_key_sql, update_statement, dry_run) - - - # target does not exist, we're going to insert - else: - # An insert is always just an vanilla insert, as there is not a pair of records to compare. - # Produce the SQL which creates a new VZDB record from a query of the imported data - insert_statement = util.form_insert_statement(output_map, table, input_column_names, import_key_sql, map_state["import_schema"]) - print(f"Executing insert in {output_map[table]} for where " + record_key_sql) - - # Execute the insert statement - util.try_statement(pg, output_map, table, record_key_sql, insert_statement, dry_run) - - # fmt: on - return map_state - - -def group_csvs_into_logical_groups(extracted_archives, dry_run): - files = os.listdir(str(extracted_archives)) - logical_groups = [] - for file in files: - if file.endswith(".xml") or file == "crashReports": - continue - match = re.search("^extract_(\d+_\d+)_", file) - group_id = match.group(1) - if group_id not in logical_groups: - logical_groups.append(group_id) - map_safe_state = [] - for group in logical_groups: - map_safe_state.append( - { - "logical_group_id": group, - "working_directory": str(extracted_archives), - "csv_prefix": "extract_" + group + "_", - "dry_run": dry_run, - } - ) - print(map_safe_state) - return map_safe_state - - -def create_import_schema_name(mapped_state): - print(mapped_state) - schema = ( - "import_" - + hashlib.md5(mapped_state["logical_group_id"].encode()).hexdigest()[:12] - ) - mapped_state["import_schema"] = schema - print("Schema name: ", mapped_state["import_schema"]) - return mapped_state - - -def create_target_import_schema(map_state): - with SshKeyTempDir() as key_directory: - write_key_to_file( - key_directory + "/id_ed25519", DB_BASTION_HOST_SSH_PRIVATE_KEY + "\n" - ) - ssh_tunnel = SSHTunnelForwarder( - (DB_BASTION_HOST), - ssh_username=DB_BASTION_HOST_SSH_USERNAME, - ssh_private_key=f"{key_directory}/id_ed25519", - remote_bind_address=(DB_RDS_HOST, 5432), - ) - ssh_tunnel.start() - - pg = psycopg2.connect( - host="localhost", - port=ssh_tunnel.local_bind_port, - user=DB_USER, - password=DB_PASS, - dbname=DB_NAME, - sslmode=DB_SSL_REQUIREMENT, - sslrootcert="/root/rds-combined-ca-bundle.pem", - ) - - cursor = pg.cursor() - - # check if the schema exists by querying the pg_namespace system catalog - cursor.execute( - f"SELECT EXISTS (SELECT 1 FROM pg_namespace WHERE nspname = '{map_state['import_schema']}')" + if cli_args.s3_download and cli_args.s3_archive and not cli_args.skip_unzip: + archive_extract_zip(extract["s3_file_key"]) + set_log_entry_complete( + log_entry_id=log_entry_id, records_processed=records_processed ) - schema_exists = cursor.fetchone()[0] - - # if the schema doesn't exist, create it using a try-except block to handle the case where it already exists - if not schema_exists: - try: - cursor.execute(f"CREATE SCHEMA {map_state['import_schema']}") - print("Schema created successfully") - except psycopg2.Error as e: - print(f"Error creating schema: {e}") - else: - print("Schema already exists") - - # commit the changes and close the cursor and connection - pg.commit() - cursor.close() - pg.close() - - return map_state - - -def clean_up_import_schema(map_state): - with SshKeyTempDir() as key_directory: - write_key_to_file( - key_directory + "/id_ed25519", DB_BASTION_HOST_SSH_PRIVATE_KEY + "\n" - ) - ssh_tunnel = SSHTunnelForwarder( - (DB_BASTION_HOST), - ssh_username=DB_BASTION_HOST_SSH_USERNAME, - ssh_private_key=f"{key_directory}/id_ed25519", - remote_bind_address=(DB_RDS_HOST, 5432), - ) - ssh_tunnel.start() - - pg = psycopg2.connect( - host="localhost", - port=ssh_tunnel.local_bind_port, - user=DB_USER, - password=DB_PASS, - dbname=DB_NAME, - sslmode=DB_SSL_REQUIREMENT, - sslrootcert="/root/rds-combined-ca-bundle.pem", - ) - - cursor = pg.cursor() - sql = f"DROP SCHEMA IF EXISTS {map_state['import_schema']} CASCADE " - cursor.execute(sql) - - pg.commit() - cursor.close() - pg.close() - - return map_state - if __name__ == "__main__": - main() + cli_args = get_cli_args() + logger = init_logger(debug=cli_args.verbose) + if not cli_args.csv and not cli_args.pdf: + raise ValueError("Must specify at least one of --csv or --pdf") + if cli_args.s3_archive and not cli_args.s3_download: + raise ValueError("--s3-archive has no effect without --s3-download") + if cli_args.skip_unzip and cli_args.s3_download: + raise ValueError("Cannot use --s3-download in combination with --skip-unzip") + main(cli_args) diff --git a/atd-etl/cris_import/development_extracts/.gitignore b/atd-etl/cris_import/development_extracts/.gitignore deleted file mode 100644 index d77864a99..000000000 --- a/atd-etl/cris_import/development_extracts/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -*.zip - diff --git a/atd-etl/cris_import/docker-compose.yaml b/atd-etl/cris_import/docker-compose.yaml new file mode 100644 index 000000000..92be88053 --- /dev/null +++ b/atd-etl/cris_import/docker-compose.yaml @@ -0,0 +1,9 @@ +services: + cris_import: + build: . + volumes: + - .:/app + env_file: + - .env + network_mode: host + entrypoint: /bin/bash diff --git a/atd-etl/cris_import/docker-compose.yml b/atd-etl/cris_import/docker-compose.yml deleted file mode 100644 index c2471afbd..000000000 --- a/atd-etl/cris_import/docker-compose.yml +++ /dev/null @@ -1,9 +0,0 @@ -services: - cris-import: - build: . - volumes: - - .:/app - env_file: - - ./env - environment: - - ENVIRONMENT=development diff --git a/atd-etl/cris_import/docs/import_process.excalidraw b/atd-etl/cris_import/docs/import_process.excalidraw deleted file mode 100644 index f68acdb76..000000000 --- a/atd-etl/cris_import/docs/import_process.excalidraw +++ /dev/null @@ -1,2054 +0,0 @@ -{ - "type": "excalidraw", - "version": 2, - "source": "https://excalidraw.com", - "elements": [ - { - "type": "rectangle", - "version": 539, - "versionNonce": 1108134510, - "isDeleted": false, - "id": "5KvDpEyyLL2RBp67E9K9Q", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 476.259765625, - "y": 364.078125, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 482.73828125, - "height": 104.03124999999997, - "seed": 1954264878, - "groupIds": [ - "e_p8CzS19Z6PlOSXaeJCR" - ], - "roundness": { - "type": 3 - }, - "boundElements": [ - { - "id": "xMlXALwGo94X4_256-Q0N", - "type": "arrow" - } - ], - "updated": 1686583919789, - "link": null, - "locked": false - }, - { - "type": "text", - "version": 338, - "versionNonce": 1238227826, - "isDeleted": false, - "id": "NOgs_Q8YJq6FpKdF1NxGt", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 490.4486999511719, - "y": 374.7421875, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 382.69970703125, - "height": 25, - "seed": 1271379954, - "groupIds": [ - "e_p8CzS19Z6PlOSXaeJCR" - ], - "roundness": null, - "boundElements": [], - "updated": 1686583919789, - "link": null, - "locked": false, - "fontSize": 20, - "fontFamily": 1, - "text": "Download Archives from SFTP Endpoint", - "textAlign": "left", - "verticalAlign": "top", - "containerId": null, - "originalText": "Download Archives from SFTP Endpoint", - "lineHeight": 1.25, - "baseline": 18 - }, - { - "type": "text", - "version": 287, - "versionNonce": 1730497710, - "isDeleted": false, - "id": "alyIf6FcvecQ7AjmIlklX", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 492.580078125, - "y": 412.27734375, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 455.28125, - "height": 55.199999999999996, - "seed": 346916654, - "groupIds": [ - "e_p8CzS19Z6PlOSXaeJCR" - ], - "roundness": null, - "boundElements": [], - "updated": 1686583919789, - "link": null, - "locked": false, - "fontSize": 16, - "fontFamily": 2, - "text": "* Write out SFTP endpoint ssh keys\n* rsync zip files from CRIS on SFTP endpoint into temp directory\n ", - "textAlign": "left", - "verticalAlign": "top", - "containerId": null, - "originalText": "* Write out SFTP endpoint ssh keys\n* rsync zip files from CRIS on SFTP endpoint into temp directory\n ", - "lineHeight": 1.15, - "baseline": 51 - }, - { - "type": "rectangle", - "version": 843, - "versionNonce": 1704929010, - "isDeleted": false, - "id": "DD3LQQroBXRdTLoFFT4nP", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 477.021484375, - "y": 482.59765625, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 427.77343749999994, - "height": 78.92187499999997, - "seed": 1593258222, - "groupIds": [ - "ztC0fFzhsNdDCerbZDYpI" - ], - "roundness": { - "type": 3 - }, - "boundElements": [ - { - "id": "xMlXALwGo94X4_256-Q0N", - "type": "arrow" - }, - { - "id": "KnhP5JNtuMPbCvCMIFs-c", - "type": "arrow" - } - ], - "updated": 1686583919789, - "link": null, - "locked": false - }, - { - "type": "text", - "version": 603, - "versionNonce": 612399406, - "isDeleted": false, - "id": "wFZwrK6CatQBmq8aWOtek", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 491.2104187011719, - "y": 493.66796875, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 137.5798797607422, - "height": 25, - "seed": 1996415790, - "groupIds": [ - "ztC0fFzhsNdDCerbZDYpI" - ], - "roundness": null, - "boundElements": [], - "updated": 1686583919789, - "link": null, - "locked": false, - "fontSize": 20, - "fontFamily": 1, - "text": "Unzip Archives", - "textAlign": "left", - "verticalAlign": "top", - "containerId": null, - "originalText": "Unzip Archives", - "lineHeight": 1.25, - "baseline": 18 - }, - { - "type": "text", - "version": 603, - "versionNonce": 2069501993, - "isDeleted": false, - "id": "ychDKgbbC9Pesi6SvgnHq", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 493.341796875, - "y": 531.203125, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 393.078125, - "height": 18.4, - "seed": 265702766, - "groupIds": [ - "ztC0fFzhsNdDCerbZDYpI" - ], - "roundness": null, - "boundElements": [], - "updated": 1686584286886, - "link": null, - "locked": false, - "fontSize": 16, - "fontFamily": 2, - "text": "* Unzip each zip file received into a new temp directory ", - "textAlign": "left", - "verticalAlign": "top", - "containerId": null, - "originalText": "* Unzip each zip file received into a new temp directory ", - "lineHeight": 1.15, - "baseline": 15 - }, - { - "type": "rectangle", - "version": 1230, - "versionNonce": 657691250, - "isDeleted": false, - "id": "O1vNCD2tO0FD7tdcYkfNB", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 554.0234375, - "y": 622.37890625, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 1108.1796875, - "height": 97.95312500000006, - "seed": 705753714, - "groupIds": [ - "2T8fiZ_sQE7KNtAdCaXsW" - ], - "roundness": { - "type": 3 - }, - "boundElements": [ - { - "id": "0_n13miIbe6vWJMpXQvGo", - "type": "arrow" - }, - { - "id": "FP3EytCWbt-JvpZLdXN3f", - "type": "arrow" - } - ], - "updated": 1686583919789, - "link": null, - "locked": false - }, - { - "type": "text", - "version": 900, - "versionNonce": 1163560366, - "isDeleted": false, - "id": "PUCDWFBv-IzZfCU6bg6LI", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 568.2123718261719, - "y": 633.44921875, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 375.1396789550781, - "height": 25, - "seed": 938333234, - "groupIds": [ - "2T8fiZ_sQE7KNtAdCaXsW" - ], - "roundness": null, - "boundElements": [], - "updated": 1686583919789, - "link": null, - "locked": false, - "fontSize": 20, - "fontFamily": 1, - "text": "Find Logical Groups of Exported CSVs", - "textAlign": "left", - "verticalAlign": "top", - "containerId": null, - "originalText": "Find Logical Groups of Exported CSVs", - "lineHeight": 1.25, - "baseline": 18 - }, - { - "type": "text", - "version": 1373, - "versionNonce": 935097394, - "isDeleted": false, - "id": "HJpDNrtmNWsZhbCQEMHJw", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 570.34375, - "y": 670.984375, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 1077.3046875, - "height": 36.8, - "seed": 1128824306, - "groupIds": [ - "2T8fiZ_sQE7KNtAdCaXsW" - ], - "roundness": null, - "boundElements": [], - "updated": 1686583919789, - "link": null, - "locked": false, - "fontSize": 16, - "fontFamily": 2, - "text": "* CRIS can deliver up to three groups of CSV files, depending on the \"schema\" that was used for the crash.\n* This means we can have a multiple sets of the \"crash\", \"unit\", \"persons\", etc. CSVs, and this groups them together into those functional, logical groups.", - "textAlign": "left", - "verticalAlign": "top", - "containerId": null, - "originalText": "* CRIS can deliver up to three groups of CSV files, depending on the \"schema\" that was used for the crash.\n* This means we can have a multiple sets of the \"crash\", \"unit\", \"persons\", etc. CSVs, and this groups them together into those functional, logical groups.", - "lineHeight": 1.15, - "baseline": 33 - }, - { - "type": "rectangle", - "version": 422, - "versionNonce": 2132013170, - "isDeleted": false, - "id": "5JsuK1WcuxLpHITYO9qdX", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 474.390625, - "y": 573.3988715277778, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 1238.15234375, - "height": 948.7083333333335, - "seed": 887320110, - "groupIds": [], - "roundness": { - "type": 3 - }, - "boundElements": [ - { - "id": "KnhP5JNtuMPbCvCMIFs-c", - "type": "arrow" - }, - { - "id": "gOn4OqHb1rMkP-sABUS4i", - "type": "arrow" - } - ], - "updated": 1686583940068, - "link": null, - "locked": false - }, - { - "type": "text", - "version": 99, - "versionNonce": 272834034, - "isDeleted": false, - "id": "cr2Ly4MR7bal5D0DdLoCi", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 489.62109375, - "y": 592.18359375, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 167.619873046875, - "height": 25, - "seed": 192977074, - "groupIds": [], - "roundness": null, - "boundElements": [ - { - "id": "0_n13miIbe6vWJMpXQvGo", - "type": "arrow" - } - ], - "updated": 1686583919789, - "link": null, - "locked": false, - "fontSize": 20, - "fontFamily": 1, - "text": "For each Archive:", - "textAlign": "left", - "verticalAlign": "top", - "containerId": null, - "originalText": "For each Archive:", - "lineHeight": 1.25, - "baseline": 18 - }, - { - "type": "rectangle", - "version": 665, - "versionNonce": 2110689202, - "isDeleted": false, - "id": "3RSzAhCuE3GqBdKRWxD4f", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 553.87109375, - "y": 730.610595703125, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 1129.02734375, - "height": 739.45703125, - "seed": 1921357106, - "groupIds": [], - "roundness": { - "type": 3 - }, - "boundElements": [ - { - "id": "FP3EytCWbt-JvpZLdXN3f", - "type": "arrow" - } - ], - "updated": 1686583919789, - "link": null, - "locked": false - }, - { - "type": "text", - "version": 388, - "versionNonce": 2011757678, - "isDeleted": false, - "id": "izmNWL2I4FS5iXMxXi4lz", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 570.5181884765625, - "y": 744.024658203125, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 320.019775390625, - "height": 25, - "seed": 1927188782, - "groupIds": [], - "roundness": null, - "boundElements": [ - { - "id": "FSp0gyPuedvjTCbO0Y_S6", - "type": "arrow" - } - ], - "updated": 1686583919789, - "link": null, - "locked": false, - "fontSize": 20, - "fontFamily": 1, - "text": "For each Logical Group of CSVs:", - "textAlign": "left", - "verticalAlign": "top", - "containerId": null, - "originalText": "For each Logical Group of CSVs:", - "lineHeight": 1.25, - "baseline": 18 - }, - { - "type": "rectangle", - "version": 1082, - "versionNonce": 344312178, - "isDeleted": false, - "id": "xeBu57cArwOpOct0fa6D9", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 657.48828125, - "y": 783.395751953125, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 429.64453124999983, - "height": 77.06640625, - "seed": 2032536498, - "groupIds": [ - "EXMEGwY1xkiV0yWS-T3oD" - ], - "roundness": { - "type": 3 - }, - "boundElements": [ - { - "id": "FSp0gyPuedvjTCbO0Y_S6", - "type": "arrow" - }, - { - "id": "Ia2NsMY0d_h584V7m83y1", - "type": "arrow" - } - ], - "updated": 1686583919789, - "link": null, - "locked": false - }, - { - "type": "text", - "version": 841, - "versionNonce": 917192366, - "isDeleted": false, - "id": "w8rSo2gI1oZQf94xfQxZo", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 672.0873718261719, - "y": 794.466064453125, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 324.019775390625, - "height": 25, - "seed": 797820274, - "groupIds": [ - "EXMEGwY1xkiV0yWS-T3oD" - ], - "roundness": null, - "boundElements": [], - "updated": 1686583919789, - "link": null, - "locked": false, - "fontSize": 20, - "fontFamily": 1, - "text": "Generate a target schema name", - "textAlign": "left", - "verticalAlign": "top", - "containerId": null, - "originalText": "Generate a target schema name", - "lineHeight": 1.25, - "baseline": 18 - }, - { - "type": "text", - "version": 967, - "versionNonce": 1269812018, - "isDeleted": false, - "id": "IiiwBya8sKMM_nhvQI-24", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 674.21875, - "y": 832.001220703125, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 398.421875, - "height": 18.4, - "seed": 1012418354, - "groupIds": [ - "EXMEGwY1xkiV0yWS-T3oD" - ], - "roundness": null, - "boundElements": [], - "updated": 1686583919789, - "link": null, - "locked": false, - "fontSize": 16, - "fontFamily": 2, - "text": "* The name of the schema is deterministically generated", - "textAlign": "left", - "verticalAlign": "top", - "containerId": null, - "originalText": "* The name of the schema is deterministically generated", - "lineHeight": 1.15, - "baseline": 15 - }, - { - "type": "rectangle", - "version": 1273, - "versionNonce": 1617639662, - "isDeleted": false, - "id": "a98ZnX_pxxw33G6J8UciW", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 659.21875, - "y": 874.593994140625, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 480.99218749999983, - "height": 79.12109374999999, - "seed": 1458722034, - "groupIds": [ - "ZmSe_GET8pqCzjVOfLt_m" - ], - "roundness": { - "type": 3 - }, - "boundElements": [ - { - "id": "Ia2NsMY0d_h584V7m83y1", - "type": "arrow" - }, - { - "id": "26rYxodc4fzEYhvGStEy_", - "type": "arrow" - } - ], - "updated": 1686583919789, - "link": null, - "locked": false - }, - { - "type": "text", - "version": 1034, - "versionNonce": 431199474, - "isDeleted": false, - "id": "shE7VlHRHsLnBx1DAluxT", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 673.8178405761719, - "y": 885.664306640625, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 403.69970703125, - "height": 25, - "seed": 931063474, - "groupIds": [ - "ZmSe_GET8pqCzjVOfLt_m" - ], - "roundness": null, - "boundElements": [], - "updated": 1686583919789, - "link": null, - "locked": false, - "fontSize": 20, - "fontFamily": 1, - "text": "Create a empty schema in the database", - "textAlign": "left", - "verticalAlign": "top", - "containerId": null, - "originalText": "Create a empty schema in the database", - "lineHeight": 1.25, - "baseline": 18 - }, - { - "type": "text", - "version": 1193, - "versionNonce": 1018293038, - "isDeleted": false, - "id": "VSVgtlRq9npwkQ4RFBNcA", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 675.94921875, - "y": 923.199462890625, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 457.109375, - "height": 18.4, - "seed": 68370546, - "groupIds": [ - "ZmSe_GET8pqCzjVOfLt_m" - ], - "roundness": null, - "boundElements": [], - "updated": 1686583919789, - "link": null, - "locked": false, - "fontSize": 16, - "fontFamily": 2, - "text": "* Create a schema that will hold the imported CSV files as tables", - "textAlign": "left", - "verticalAlign": "top", - "containerId": null, - "originalText": "* Create a schema that will hold the imported CSV files as tables", - "lineHeight": 1.15, - "baseline": 15 - }, - { - "type": "rectangle", - "version": 1401, - "versionNonce": 1807721010, - "isDeleted": false, - "id": "iVWbmzHqksFyHN1zOo5ub", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 659.8984375, - "y": 962.983642578125, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 480.99218749999983, - "height": 118.80468749999994, - "seed": 1635354482, - "groupIds": [ - "oxzj-KHgudu1SHh1-326H" - ], - "roundness": { - "type": 3 - }, - "boundElements": [ - { - "id": "26rYxodc4fzEYhvGStEy_", - "type": "arrow" - }, - { - "id": "iekjiyymAglJ0CZMtON8-", - "type": "arrow" - } - ], - "updated": 1686583919789, - "link": null, - "locked": false - }, - { - "type": "text", - "version": 1160, - "versionNonce": 1797804526, - "isDeleted": false, - "id": "hMwIcmGmN5l8xpdqTcZRi", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 674.4975280761719, - "y": 974.053955078125, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 436.07965087890625, - "height": 25, - "seed": 2138818866, - "groupIds": [ - "oxzj-KHgudu1SHh1-326H" - ], - "roundness": null, - "boundElements": [], - "updated": 1686583919790, - "link": null, - "locked": false, - "fontSize": 20, - "fontFamily": 1, - "text": "Use pgloader to make tables from CSV files", - "textAlign": "left", - "verticalAlign": "top", - "containerId": null, - "originalText": "Use pgloader to make tables from CSV files", - "lineHeight": 1.25, - "baseline": 18 - }, - { - "type": "text", - "version": 1468, - "versionNonce": 2008058866, - "isDeleted": false, - "id": "_CGGz6gIHIchFa8IyixtO", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 676.62890625, - "y": 1011.589111328125, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 392.2890625, - "height": 55.199999999999996, - "seed": 793760498, - "groupIds": [ - "oxzj-KHgudu1SHh1-326H" - ], - "roundness": null, - "boundElements": [], - "updated": 1686583919790, - "link": null, - "locked": false, - "fontSize": 16, - "fontFamily": 2, - "text": "* Write out a \"job file\" for pgloader\n* Start pgloader to complete job file\n* Creates a table for each CSV, every column is a \"text\"", - "textAlign": "left", - "verticalAlign": "top", - "containerId": null, - "originalText": "* Write out a \"job file\" for pgloader\n* Start pgloader to complete job file\n* Creates a table for each CSV, every column is a \"text\"", - "lineHeight": 1.15, - "baseline": 51 - }, - { - "type": "rectangle", - "version": 1546, - "versionNonce": 828259762, - "isDeleted": false, - "id": "EJEVAcb4fj3xX8RBG9hb9", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 661.34765625, - "y": 1092.796875, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 688.3124999999998, - "height": 99.71093749999994, - "seed": 1385732398, - "groupIds": [ - "nZy2hkibRNzT4vO0_q6qC" - ], - "roundness": { - "type": 3 - }, - "boundElements": [ - { - "id": "iekjiyymAglJ0CZMtON8-", - "type": "arrow" - }, - { - "id": "7Qbp4V9X7PAJE6z795i5m", - "type": "arrow" - } - ], - "updated": 1686583919790, - "link": null, - "locked": false - }, - { - "type": "text", - "version": 1327, - "versionNonce": 1223896686, - "isDeleted": false, - "id": "Qh-eDVPFRsPTT2Ydh7uQ7", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 676.7670593261719, - "y": 1103.86328125, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 240.019775390625, - "height": 25, - "seed": 2060010350, - "groupIds": [ - "nZy2hkibRNzT4vO0_q6qC" - ], - "roundness": null, - "boundElements": [], - "updated": 1686583919790, - "link": null, - "locked": false, - "fontSize": 20, - "fontFamily": 1, - "text": "Remove trailing linefeeds", - "textAlign": "left", - "verticalAlign": "top", - "containerId": null, - "originalText": "Remove trailing linefeeds", - "lineHeight": 1.25, - "baseline": 18 - }, - { - "type": "text", - "version": 1824, - "versionNonce": 1441773426, - "isDeleted": false, - "id": "7eXd68HJoKlsRcyr9-S8g", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 678.8984375, - "y": 1141.3984375, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 648.3515625, - "height": 36.8, - "seed": 602580398, - "groupIds": [ - "nZy2hkibRNzT4vO0_q6qC" - ], - "roundness": null, - "boundElements": [], - "updated": 1686583919790, - "link": null, - "locked": false, - "fontSize": 16, - "fontFamily": 2, - "text": "* CRIS's formatting & pgloader's process can lead to trailing linefeeds\n* Run over every column in every imported table and use a regex to remove these linefeeds", - "textAlign": "left", - "verticalAlign": "top", - "containerId": null, - "originalText": "* CRIS's formatting & pgloader's process can lead to trailing linefeeds\n* Run over every column in every imported table and use a regex to remove these linefeeds", - "lineHeight": 1.15, - "baseline": 33 - }, - { - "type": "rectangle", - "version": 1934, - "versionNonce": 1705769266, - "isDeleted": false, - "id": "RSRKJDaJO1kdU9DWaTs33", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 659.6757812500001, - "y": 1200.94287109375, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 1020.3984374999999, - "height": 155.29687499999991, - "seed": 535517554, - "groupIds": [ - "zT_FnLF-G3pBPAam5rG6q" - ], - "roundness": { - "type": 3 - }, - "boundElements": [ - { - "id": "7Qbp4V9X7PAJE6z795i5m", - "type": "arrow" - } - ], - "updated": 1686583919790, - "link": null, - "locked": false - }, - { - "type": "text", - "version": 1616, - "versionNonce": 370207470, - "isDeleted": false, - "id": "AfTQj2wvd5SGY0Xn239Uv", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 675.0951843261719, - "y": 1211.59912109375, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 128.57989501953125, - "height": 25, - "seed": 1944279858, - "groupIds": [ - "zT_FnLF-G3pBPAam5rG6q" - ], - "roundness": null, - "boundElements": [], - "updated": 1686583919790, - "link": null, - "locked": false, - "fontSize": 20, - "fontFamily": 1, - "text": "Align Records", - "textAlign": "left", - "verticalAlign": "top", - "containerId": null, - "originalText": "Align Records", - "lineHeight": 1.25, - "baseline": 18 - }, - { - "type": "text", - "version": 3106, - "versionNonce": 1073349362, - "isDeleted": false, - "id": "v_BpKVA4eHNiVoWX7yink", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 676.81640625, - "y": 1248.72412109375, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 980.46875, - "height": 92, - "seed": 351610098, - "groupIds": [ - "zT_FnLF-G3pBPAam5rG6q" - ], - "roundness": null, - "boundElements": [ - { - "id": "Egz6RSTzaY-6EaN6yGw01", - "type": "arrow" - } - ], - "updated": 1686583919790, - "link": null, - "locked": false, - "fontSize": 16, - "fontFamily": 2, - "text": "* Look at each record in the imported tables, and if it doesn't have a matching record, by primary key(s), in the target table, then insert one.\n* If there is an existing target record, this is an update is required. Check each row and build a list of columns which are different between\nthe import table and the target table. \n* Using the list of columns which need to be updated, issue a statement that updates the target row with the data for those columns \nfrom the import data", - "textAlign": "left", - "verticalAlign": "top", - "containerId": null, - "originalText": "* Look at each record in the imported tables, and if it doesn't have a matching record, by primary key(s), in the target table, then insert one.\n* If there is an existing target record, this is an update is required. Check each row and build a list of columns which are different between\nthe import table and the target table. \n* Using the list of columns which need to be updated, issue a statement that updates the target row with the data for those columns \nfrom the import data", - "lineHeight": 1.15, - "baseline": 88 - }, - { - "type": "rectangle", - "version": 1342, - "versionNonce": 55150446, - "isDeleted": false, - "id": "f47kr82kCVZ2sI8TQzKLK", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 658.44921875, - "y": 1365.07373046875, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 480.99218749999983, - "height": 79.12109374999999, - "seed": 635492462, - "groupIds": [ - "dFycaoUeeGVy1SnRRa0PO" - ], - "roundness": { - "type": 3 - }, - "boundElements": [ - { - "id": "Egz6RSTzaY-6EaN6yGw01", - "type": "arrow" - } - ], - "updated": 1686583919790, - "link": null, - "locked": false - }, - { - "type": "text", - "version": 1130, - "versionNonce": 1434938994, - "isDeleted": false, - "id": "Rkg2YgBlyJk16prKZ6ZUF", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 673.0483093261719, - "y": 1376.96435546875, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 215.23980712890625, - "height": 25, - "seed": 289905326, - "groupIds": [ - "dFycaoUeeGVy1SnRRa0PO" - ], - "roundness": null, - "boundElements": [], - "updated": 1686583919790, - "link": null, - "locked": false, - "fontSize": 20, - "fontFamily": 1, - "text": "Remove import schema", - "textAlign": "left", - "verticalAlign": "top", - "containerId": null, - "originalText": "Remove import schema", - "lineHeight": 1.25, - "baseline": 18 - }, - { - "type": "text", - "version": 1337, - "versionNonce": 1002596782, - "isDeleted": false, - "id": "wN1ceZvT8_iR-fV6V1Kr8", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 675.1796875, - "y": 1414.49951171875, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 397.046875, - "height": 18.4, - "seed": 1595675886, - "groupIds": [ - "dFycaoUeeGVy1SnRRa0PO" - ], - "roundness": null, - "boundElements": [], - "updated": 1686583919790, - "link": null, - "locked": false, - "fontSize": 16, - "fontFamily": 2, - "text": "* Drop the import schema since as it's no longer needed", - "textAlign": "left", - "verticalAlign": "top", - "containerId": null, - "originalText": "* Drop the import schema since as it's no longer needed", - "lineHeight": 1.15, - "baseline": 15 - }, - { - "type": "rectangle", - "version": 968, - "versionNonce": 621093362, - "isDeleted": false, - "id": "EmvIkJW46pKJIsm-JhlIF", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 480.9411892361112, - "y": 1542.0397135416667, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 492.1953125, - "height": 78.92187499999997, - "seed": 1767560882, - "groupIds": [ - "6bKSkjMD85fiTlCzEetdB" - ], - "roundness": { - "type": 3 - }, - "boundElements": [ - { - "id": "gOn4OqHb1rMkP-sABUS4i", - "type": "arrow" - }, - { - "id": "RyDqTXSb0DF1nEg-WDJuM", - "type": "arrow" - } - ], - "updated": 1686583949087, - "link": null, - "locked": false - }, - { - "type": "text", - "version": 748, - "versionNonce": 676329970, - "isDeleted": false, - "id": "MjiG1Ns09wHxNYU4RjwRu", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 495.1301235622831, - "y": 1553.1100260416667, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 360.75970458984375, - "height": 25, - "seed": 1961963634, - "groupIds": [ - "6bKSkjMD85fiTlCzEetdB" - ], - "roundness": null, - "boundElements": [], - "updated": 1686583919790, - "link": null, - "locked": false, - "fontSize": 20, - "fontFamily": 1, - "text": "Remove archives from SFTP endpoint", - "textAlign": "left", - "verticalAlign": "top", - "containerId": null, - "originalText": "Remove archives from SFTP endpoint", - "lineHeight": 1.25, - "baseline": 18 - }, - { - "type": "text", - "version": 767, - "versionNonce": 1077564974, - "isDeleted": false, - "id": "Z4uSGsn2upbbCfchRR28r", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 497.2615017361112, - "y": 1590.6451822916667, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 465.1328125, - "height": 18.4, - "seed": 2014728754, - "groupIds": [ - "6bKSkjMD85fiTlCzEetdB" - ], - "roundness": null, - "boundElements": [], - "updated": 1686583919790, - "link": null, - "locked": false, - "fontSize": 16, - "fontFamily": 2, - "text": "* Use ssh to execute a command to empty out the SFTP endpoint", - "textAlign": "left", - "verticalAlign": "top", - "containerId": null, - "originalText": "* Use ssh to execute a command to empty out the SFTP endpoint", - "lineHeight": 1.15, - "baseline": 15 - }, - { - "type": "rectangle", - "version": 1007, - "versionNonce": 867177394, - "isDeleted": false, - "id": "Vg_hR7wYOOTXfz9Nsed0F", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 479.2409939236112, - "y": 1631.5602213541667, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 510.8828125, - "height": 78.92187499999997, - "seed": 50182770, - "groupIds": [ - "npHrNh5FTiEErYIKWPKJr" - ], - "roundness": { - "type": 3 - }, - "boundElements": [ - { - "id": "RyDqTXSb0DF1nEg-WDJuM", - "type": "arrow" - } - ], - "updated": 1686583949087, - "link": null, - "locked": false - }, - { - "type": "text", - "version": 824, - "versionNonce": 1007396210, - "isDeleted": false, - "id": "_x0_9R7al04G21HJdQSJz", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 493.4299282497831, - "y": 1642.6305338541667, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 341.45977783203125, - "height": 25, - "seed": 1744935986, - "groupIds": [ - "npHrNh5FTiEErYIKWPKJr" - ], - "roundness": null, - "boundElements": [], - "updated": 1686583919790, - "link": null, - "locked": false, - "fontSize": 20, - "fontFamily": 1, - "text": "Upload CSV files from CRIS to S3", - "textAlign": "left", - "verticalAlign": "top", - "containerId": null, - "originalText": "Upload CSV files from CRIS to S3", - "lineHeight": 1.25, - "baseline": 18 - }, - { - "type": "text", - "version": 884, - "versionNonce": 402727598, - "isDeleted": false, - "id": "vZH27DneEee3FfajNndAE", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 495.5613064236112, - "y": 1680.1617838541667, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 481.140625, - "height": 18.4, - "seed": 1302545906, - "groupIds": [ - "npHrNh5FTiEErYIKWPKJr" - ], - "roundness": null, - "boundElements": [], - "updated": 1686583919790, - "link": null, - "locked": false, - "fontSize": 16, - "fontFamily": 2, - "text": "* Use boto3 to upload files to S3 as an artifact of this import process", - "textAlign": "left", - "verticalAlign": "top", - "containerId": null, - "originalText": "* Use boto3 to upload files to S3 as an artifact of this import process", - "lineHeight": 1.15, - "baseline": 15 - }, - { - "type": "arrow", - "version": 178, - "versionNonce": 1701092590, - "isDeleted": false, - "id": "xMlXALwGo94X4_256-Q0N", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 470.1257595486111, - "y": 412.0763278537326, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 19.010416666666742, - "height": 88.28125, - "seed": 1799048242, - "groupIds": [], - "roundness": { - "type": 2 - }, - "boundElements": [], - "updated": 1686583919790, - "link": null, - "locked": false, - "startBinding": { - "elementId": "5KvDpEyyLL2RBp67E9K9Q", - "focus": 0.9653185681247652, - "gap": 6.134006076388914 - }, - "endBinding": { - "elementId": "DD3LQQroBXRdTLoFFT4nP", - "focus": -0.8757546473591301, - "gap": 8.575412326388914 - }, - "lastCommittedPoint": null, - "startArrowhead": null, - "endArrowhead": "arrow", - "points": [ - [ - 0, - 0 - ], - [ - -19.010416666666742, - 60.54253472222223 - ], - [ - -1.6796875, - 88.28125 - ] - ] - }, - { - "type": "arrow", - "version": 177, - "versionNonce": 1088872114, - "isDeleted": false, - "id": "KnhP5JNtuMPbCvCMIFs-c", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 476.6925998263888, - "y": 536.130147298177, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 19.236111111111086, - "height": 86.34874061397, - "seed": 852537330, - "groupIds": [], - "roundness": { - "type": 2 - }, - "boundElements": [], - "updated": 1686583922827, - "link": null, - "locked": false, - "startBinding": { - "elementId": "DD3LQQroBXRdTLoFFT4nP", - "focus": 0.9257689702476033, - "gap": 1 - }, - "endBinding": { - "elementId": "5JsuK1WcuxLpHITYO9qdX", - "gap": 2.5315804068099848, - "focus": -0.44226078671712565 - }, - "lastCommittedPoint": null, - "startArrowhead": null, - "endArrowhead": "arrow", - "points": [ - [ - 0, - 0 - ], - [ - -19.236111111111086, - 60.06510416666674 - ], - [ - -4.833555233198808, - 86.34874061397 - ] - ] - }, - { - "type": "arrow", - "version": 162, - "versionNonce": 618581806, - "isDeleted": false, - "id": "0_n13miIbe6vWJMpXQvGo", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 494.9130859374999, - "y": 628.0876125759548, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 56.74913194444446, - "height": 22.139756944444343, - "seed": 16684722, - "groupIds": [], - "roundness": { - "type": 2 - }, - "boundElements": [], - "updated": 1686583919790, - "link": null, - "locked": false, - "startBinding": { - "elementId": "cr2Ly4MR7bal5D0DdLoCi", - "focus": 1.0650049941542137, - "gap": 10.904018825954836 - }, - "endBinding": { - "elementId": "O1vNCD2tO0FD7tdcYkfNB", - "focus": -0.5622780061592072, - "gap": 2.3612196180556566 - }, - "lastCommittedPoint": null, - "startArrowhead": null, - "endArrowhead": "arrow", - "points": [ - [ - 0, - 0 - ], - [ - 14.661458333333371, - 13.776041666666629 - ], - [ - 56.74913194444446, - 22.139756944444343 - ] - ] - }, - { - "type": "arrow", - "version": 220, - "versionNonce": 949715634, - "isDeleted": false, - "id": "FP3EytCWbt-JvpZLdXN3f", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 550.6639539930555, - "y": 690.895772298177, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 16.30208333333337, - "height": 69.09288194444446, - "seed": 111246254, - "groupIds": [], - "roundness": { - "type": 2 - }, - "boundElements": [], - "updated": 1686583919790, - "link": null, - "locked": false, - "startBinding": { - "elementId": "O1vNCD2tO0FD7tdcYkfNB", - "focus": 0.9681697086605912, - "gap": 3.359483506944457 - }, - "endBinding": { - "elementId": "3RSzAhCuE3GqBdKRWxD4f", - "focus": -0.36325632017525994, - "gap": 6.327799479166629 - }, - "lastCommittedPoint": null, - "startArrowhead": null, - "endArrowhead": "arrow", - "points": [ - [ - 0, - 0 - ], - [ - -16.30208333333337, - 51.987847222222285 - ], - [ - -3.1206597222221717, - 69.09288194444446 - ] - ] - }, - { - "type": "arrow", - "version": 80, - "versionNonce": 1389934958, - "isDeleted": false, - "id": "FSp0gyPuedvjTCbO0Y_S6", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 583.8887803819443, - "y": 778.8298000759548, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 64.42708333333337, - "height": 22.469618055555543, - "seed": 1983309490, - "groupIds": [], - "roundness": { - "type": 2 - }, - "boundElements": [], - "updated": 1686583919790, - "link": null, - "locked": false, - "startBinding": { - "elementId": "izmNWL2I4FS5iXMxXi4lz", - "focus": 1.0027499103968376, - "gap": 9.805141872829836 - }, - "endBinding": { - "elementId": "xeBu57cArwOpOct0fa6D9", - "focus": -0.13454677742120824, - "gap": 9.172417534722285 - }, - "lastCommittedPoint": null, - "startArrowhead": null, - "endArrowhead": "arrow", - "points": [ - [ - 0, - 0 - ], - [ - 24.244791666666742, - 17.152777777777715 - ], - [ - 64.42708333333337, - 22.469618055555543 - ] - ] - }, - { - "type": "arrow", - "version": 130, - "versionNonce": 1989893038, - "isDeleted": false, - "id": "Ia2NsMY0d_h584V7m83y1", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 651.2281901041666, - "y": 841.2169528537326, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 16.775173611111086, - "height": 53.42447916666674, - "seed": 1575557486, - "groupIds": [], - "roundness": { - "type": 2 - }, - "boundElements": [], - "updated": 1686583919790, - "link": null, - "locked": false, - "startBinding": { - "elementId": "xeBu57cArwOpOct0fa6D9", - "focus": 0.878763851088257, - "gap": 6.260091145833371 - }, - "endBinding": { - "elementId": "a98ZnX_pxxw33G6J8UciW", - "focus": -0.8941695794145493, - "gap": 8.698025173611086 - }, - "lastCommittedPoint": null, - "startArrowhead": null, - "endArrowhead": "arrow", - "points": [ - [ - 0, - 0 - ], - [ - -16.775173611111086, - 27.599826388889028 - ], - [ - -0.7074652777777146, - 53.42447916666674 - ] - ] - }, - { - "type": "arrow", - "version": 126, - "versionNonce": 1478229554, - "isDeleted": false, - "id": "26rYxodc4fzEYhvGStEy_", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 657.2481553819443, - "y": 928.0398695203993, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 18.58072916666663, - "height": 61.6970486111112, - "seed": 1704306158, - "groupIds": [], - "roundness": { - "type": 2 - }, - "boundElements": [], - "updated": 1686583919790, - "link": null, - "locked": false, - "startBinding": { - "elementId": "a98ZnX_pxxw33G6J8UciW", - "focus": 0.903601706451107, - "gap": 1.9705946180556566 - }, - "endBinding": { - "elementId": "iVWbmzHqksFyHN1zOo5ub", - "focus": -0.7862856330590388, - "gap": 3.8134765625 - }, - "lastCommittedPoint": null, - "startArrowhead": null, - "endArrowhead": "arrow", - "points": [ - [ - 0, - 0 - ], - [ - -18.58072916666663, - 36.6623263888888 - ], - [ - -1.1631944444443434, - 61.6970486111112 - ] - ] - }, - { - "type": "arrow", - "version": 123, - "versionNonce": 1179629038, - "isDeleted": false, - "id": "iekjiyymAglJ0CZMtON8-", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 653.1465928819443, - "y": 1047.3888278537324, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 20.078125, - "height": 72.64322916666674, - "seed": 635647470, - "groupIds": [], - "roundness": { - "type": 2 - }, - "boundElements": [], - "updated": 1686583919790, - "link": null, - "locked": false, - "startBinding": { - "elementId": "iVWbmzHqksFyHN1zOo5ub", - "focus": 0.8961901128504164, - "gap": 6.751844618055657 - }, - "endBinding": { - "elementId": "EJEVAcb4fj3xX8RBG9hb9", - "focus": -0.8863662300664611, - "gap": 5.336480034722285 - }, - "lastCommittedPoint": null, - "startArrowhead": null, - "endArrowhead": "arrow", - "points": [ - [ - 0, - 0 - ], - [ - -17.21354166666663, - 42.4609375 - ], - [ - 2.8645833333333712, - 72.64322916666674 - ] - ] - }, - { - "type": "arrow", - "version": 102, - "versionNonce": 1344366578, - "isDeleted": false, - "id": "7Qbp4V9X7PAJE6z795i5m", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 653.7672526041666, - "y": 1158.686570909288, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 16.45833333333337, - "height": 71.91840277777783, - "seed": 1558080430, - "groupIds": [], - "roundness": { - "type": 2 - }, - "boundElements": [], - "updated": 1686583919791, - "link": null, - "locked": false, - "startBinding": { - "elementId": "EJEVAcb4fj3xX8RBG9hb9", - "focus": 0.9578406427804019, - "gap": 7.580403645833371 - }, - "endBinding": { - "elementId": "RSRKJDaJO1kdU9DWaTs33", - "focus": -0.9014321864898539, - "gap": 9.91894531250017 - }, - "lastCommittedPoint": null, - "startArrowhead": null, - "endArrowhead": "arrow", - "points": [ - [ - 0, - 0 - ], - [ - -16.45833333333337, - 47.52604166666674 - ], - [ - -4.0104166666667425, - 71.91840277777783 - ] - ] - }, - { - "type": "arrow", - "version": 141, - "versionNonce": 1258211374, - "isDeleted": false, - "id": "Egz6RSTzaY-6EaN6yGw01", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 657.3653428819443, - "y": 1320.8653903537327, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 23.519965277777715, - "height": 64.86111111111109, - "seed": 968478318, - "groupIds": [], - "roundness": { - "type": 2 - }, - "boundElements": [], - "updated": 1686583919791, - "link": null, - "locked": false, - "startBinding": { - "elementId": "v_BpKVA4eHNiVoWX7yink", - "focus": 0.9679089260888579, - "gap": 19.451063368055657 - }, - "endBinding": { - "elementId": "f47kr82kCVZ2sI8TQzKLK", - "focus": -0.7883460356190173, - "gap": 4.955403645833371 - }, - "lastCommittedPoint": null, - "startArrowhead": null, - "endArrowhead": "arrow", - "points": [ - [ - 0, - 0 - ], - [ - -23.519965277777715, - 47.23958333333326 - ], - [ - -3.8715277777777146, - 64.86111111111109 - ] - ] - }, - { - "type": "arrow", - "version": 95, - "versionNonce": 236799470, - "isDeleted": false, - "id": "gOn4OqHb1rMkP-sABUS4i", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 460.78114149305554, - "y": 1469.350633409288, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 17.4001736111112, - "height": 84.61805555555566, - "seed": 1704411054, - "groupIds": [], - "roundness": { - "type": 2 - }, - "boundElements": [], - "updated": 1686583943864, - "link": null, - "locked": false, - "startBinding": { - "elementId": "5JsuK1WcuxLpHITYO9qdX", - "focus": 0.9112579950293975, - "gap": 13.609483506944457 - }, - "endBinding": { - "elementId": "EmvIkJW46pKJIsm-JhlIF", - "focus": -0.8098306511994093, - "gap": 8.037651909722285 - }, - "lastCommittedPoint": null, - "startArrowhead": null, - "endArrowhead": "arrow", - "points": [ - [ - 0, - 0 - ], - [ - -5.277777777777828, - 65.7421875 - ], - [ - 12.122395833333371, - 84.61805555555566 - ] - ] - }, - { - "type": "arrow", - "version": 89, - "versionNonce": 1931698290, - "isDeleted": false, - "id": "RyDqTXSb0DF1nEg-WDJuM", - "fillStyle": "hachure", - "strokeWidth": 1, - "strokeStyle": "solid", - "roughness": 1, - "opacity": 100, - "angle": 0, - "x": 470.84190538194434, - "y": 1599.5806681315103, - "strokeColor": "#1e1e1e", - "backgroundColor": "transparent", - "width": 18.0685763888888, - "height": 52.64322916666674, - "seed": 1639241714, - "groupIds": [], - "roundness": { - "type": 2 - }, - "boundElements": [], - "updated": 1686583953238, - "link": null, - "locked": false, - "startBinding": { - "elementId": "EmvIkJW46pKJIsm-JhlIF", - "focus": 0.9300213841537253, - "gap": 10.099283854166856 - }, - "endBinding": { - "elementId": "Vg_hR7wYOOTXfz9Nsed0F", - "focus": -0.8496033062132831, - "gap": 10.972873263889028 - }, - "lastCommittedPoint": null, - "startArrowhead": null, - "endArrowhead": "arrow", - "points": [ - [ - 0, - 0 - ], - [ - -18.0685763888888, - 36.22829861111131 - ], - [ - -2.5737847222221717, - 52.64322916666674 - ] - ] - } - ], - "appState": { - "gridSize": null, - "viewBackgroundColor": "#ffffff" - }, - "files": {} -} \ No newline at end of file diff --git a/atd-etl/cris_import/docs/overview_of_import_process.png b/atd-etl/cris_import/docs/overview_of_import_process.png deleted file mode 100644 index 89b8cf704..000000000 Binary files a/atd-etl/cris_import/docs/overview_of_import_process.png and /dev/null differ diff --git a/atd-etl/cris_import/entrypoint.sh b/atd-etl/cris_import/entrypoint.sh deleted file mode 100755 index 123a04c3d..000000000 --- a/atd-etl/cris_import/entrypoint.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/bash - -/usr/sbin/sshd -/app/cris_import.py diff --git a/atd-etl/cris_import/env-template b/atd-etl/cris_import/env-template deleted file mode 100644 index 7650c06f4..000000000 --- a/atd-etl/cris_import/env-template +++ /dev/null @@ -1,3 +0,0 @@ -OP_API_TOKEN= -OP_CONNECT= -OP_VAULT_ID= diff --git a/atd-etl/cris_import/env_template b/atd-etl/cris_import/env_template new file mode 100644 index 000000000..9106adf94 --- /dev/null +++ b/atd-etl/cris_import/env_template @@ -0,0 +1,7 @@ +ENV=dev +AWS_ACCESS_KEY_ID= +AWS_SECRET_ACCESS_KEY= +BUCKET_NAME= +EXTRACT_PASSWORD= +HASURA_GRAPHQL_ENDPOINT="http://localhost:8084/v1/graphql" +HASURA_GRAPHQL_ADMIN_SECRET=hasurapassword diff --git a/atd-etl/cris_import/extracts/README.md b/atd-etl/cris_import/extracts/README.md new file mode 100644 index 000000000..73e95bec8 --- /dev/null +++ b/atd-etl/cris_import/extracts/README.md @@ -0,0 +1,3 @@ +# `./extracts` directory + +Put CRIS extract zip files here in order to process them. See the README documentation in the root of this ETL for more details. diff --git a/atd-etl/cris_import/lib/graphql.py b/atd-etl/cris_import/lib/graphql.py deleted file mode 100644 index 7ec1fe5e1..000000000 --- a/atd-etl/cris_import/lib/graphql.py +++ /dev/null @@ -1,16 +0,0 @@ -import requests - - -# 🙏🏻 https://github.com/cityofaustin/atd-moped/blob/main/moped-toolbox/amd_milestones_backfill/utils.py#L18 - - -def make_hasura_request(*, query, variables={}, endpoint, admin_secret): - headers = {"X-Hasura-Admin-Secret": admin_secret} - payload = {"query": query, "variables": variables} - res = requests.post(endpoint, json=payload, headers=headers) - res.raise_for_status() - data = res.json() - try: - return data["data"] - except KeyError: - raise ValueError(data) diff --git a/atd-etl/cris_import/lib/helpers_import.py b/atd-etl/cris_import/lib/helpers_import.py deleted file mode 100644 index bf5958d67..000000000 --- a/atd-etl/cris_import/lib/helpers_import.py +++ /dev/null @@ -1,84 +0,0 @@ -""" -This function is borrowed from https://raw.githubusercontent.com/cityofaustin/atd-vz-data/master/atd-etl/app/process/helpers_import.py. - -In our prefect repo, this was made available by a submodule, but I'm going to avoid that here and just bring it in manually -because we will no longer need this function when the LDM goes into service. -""" - -import json -import datetime - - -def insert_crash_change_template(new_record_dict, differences, crash_id): - """ - Generates a crash insertion graphql query - :param new_record_dict: dict - The new record as a dictionary - :param differences - :param str crash_id - :return: string - """ - - new_record_crash_date = None - try: - new_record_crash_date = new_record_dict["crash_date"].strftime( - "%Y-%m-%d" - ) # convert_date(new_record_dict["crash_date"]) - except: - print("Failed to convert crash_date") - - for key in new_record_dict: - if isinstance(new_record_dict[key], datetime.date): - new_record_dict[key] = new_record_dict[key].strftime("%Y-%m-%d") - if isinstance(new_record_dict[key], datetime.time): - new_record_dict[key] = new_record_dict[key].strftime("%H:%M:%S") - - # CRIS or the upstream ETL is representing this datum as a float, so cast it back - if key == "rpt_sec_speed_limit": - new_record_dict[key] = int(new_record_dict[key]) - - # Turn the dictionary into a character-escaped json string - new_record_escaped = json.dumps(json.dumps(new_record_dict), default=str) - # Build the template and inject required values - output = ( - # ! fixme: there is a misspelling of uuid in the following mutation & in the DB - """ - mutation insertCrashChangeMutation { - insert_atd_txdot_changes( - objects: { - record_id: %NEW_RECORD_ID%, - record_json: %NEW_RECORD_ESCAPED_JSON%, - record_uqid: %NEW_UNIQUE_ID% - record_type: "crash", - affected_columns: %AFFECTED_COLUMNS%, - status_id: 0, - updated_by: "System", - crash_date: %NEW_RECORD_CRASH_DATE% - }, - on_conflict: { - constraint: atd_txdot_changes_unique, - update_columns: [ - record_id, - record_json, - record_type, - affected_columns, - status_id, - updated_by - crash_date - ] - } - ) { - affected_rows - } - } - """.replace( - "%NEW_RECORD_ESCAPED_JSON%", new_record_escaped - ) - .replace("%NEW_RECORD_ID%", crash_id) - .replace("%NEW_UNIQUE_ID%", crash_id) - .replace("%AFFECTED_COLUMNS%", json.dumps(json.dumps(differences), default=str)) - .replace( - "%NEW_RECORD_CRASH_DATE%", - "null" if new_record_crash_date is None else f'"{new_record_crash_date}"', - ) - ) - return output diff --git a/atd-etl/cris_import/lib/mappings.py b/atd-etl/cris_import/lib/mappings.py deleted file mode 100644 index b9e370370..000000000 --- a/atd-etl/cris_import/lib/mappings.py +++ /dev/null @@ -1,110 +0,0 @@ -# This file is used to provide mappings and lists of fields for various purposes to the -# CRIS import flow. It's designed to provide the absolute minimum of information needed. -# Wherever data about a field can be queried from the database, the flow will do that, -# hopefully eliminating the need to maintain this file in the future, except when we need -# to mark a new field as editable by the VZ team. - - -def get_table_map(): - return { - "crash": "atd_txdot_crashes", - "unit": "atd_txdot_units", - "person": "atd_txdot_person", - "primaryperson": "atd_txdot_primaryperson", - # this table needs to be reworked to use this system - # "charges": "atd_txdot_charges", - } - - -def get_key_columns(): - return { - "atd_txdot_crashes": ["crash_id"], - "atd_txdot_units": ["crash_id", "unit_nbr"], - "atd_txdot_primaryperson": [ - "crash_id", - "unit_nbr", - "prsn_nbr", - "prsn_type_id", - "prsn_occpnt_pos_id", - ], - "atd_txdot_person": [ - "crash_id", - "unit_nbr", - "prsn_nbr", - "prsn_type_id", - "prsn_occpnt_pos_id", - ], - "atd_txdot_charges": ["crash_id", "prsn_nbr", "unit_nbr"], - } - - -def no_override_columns(): - return { - "atd_txdot_crashes": { - "crash_id", # key column - "longitude_primary", - "latitude_primary", - "city_id", - "crash_speed_limit", - "road_type_id", - "traffic_cntl_id", - "crash_sev_id", - "atd_fatality_count", - "apd_confirmed_death_count", - "tot_injry_cnt", - "sus_serious_injry_cnt", - "address_confirmed_primary", - "address_confirmed_secondary", - "private_dr_fl", - "road_constr_zone_fl", - "case_id", - "sus_serious_injry_cnt", - "intrsct_relat_id", - "rpt_outside_city_limit_fl", - }, - "atd_txdot_units": { - "crash_id", # key column - "unit_nbr", # key column - "travel_direction", - "movement_id", - "sus_serious_injry_cnt", - "unit_desc_id", - "veh_body_styl_id", - }, - "atd_txdot_person": { - "crash_id", # key column - "unit_nbr", # key column - "prsn_nbr", # key column - "prsn_type_id", # key column (but why?) - "prsn_occpnt_pos_id", # key column (but why?) - "prsn_injry_sev_id", - "prsn_age", - "prsn_name_honorific", - "prsn_last_name", - "prsn_first_name", - "prsn_mid_name", - "prsn_gndr_id", - "prsn_ethnicity_id", - }, - "atd_txdot_primaryperson": { - "crash_id", # key column - "unit_nbr", # key column - "prsn_nbr", # key column - "prsn_type_id", # key column (but why?) - "prsn_occpnt_pos_id", # key column (but why?) - "injury_severity", - "prsn_age", - "prsn_name_honorific", - "prsn_last_name", - "prsn_first_name", - "prsn_mid_name", - "prsn_gndr_id", - "prsn_ethnicity_id", - }, - "atd_txdot_charges": { - "crash_id", # key column - "prsn_nbr", # key column - "unit_nbr", # key column - "charge_cat_id", # FIXME in the bigger picture: we have misconfigured schema we store this value in - }, - } diff --git a/atd-etl/cris_import/lib/sql.py b/atd-etl/cris_import/lib/sql.py deleted file mode 100644 index ce81828cb..000000000 --- a/atd-etl/cris_import/lib/sql.py +++ /dev/null @@ -1,456 +0,0 @@ -import os -import psycopg2.extras - -import pprint - -pp = pprint.PrettyPrinter(indent=4) - -# This library is /not/ designed for reuse in other projects. It is designed to increase the -# readability of the `cris_import.py` prefect flow by pulling logical groups of code out -# and replacing them with a descriptively named function. The code was reviewed with an -# eye for getting 100% of the code which forms SQL directly into this file, as code which writes -# code is universally hard to read and grok. If one considers that each of these functions is called -# in only one place (with one exception) in `cris_import.py`, one may appreciate these functions exist -# only to improve readability and maintainability -- not reusability. - - -def get_pgfutter_path(): - uname = os.uname() - if uname.machine == "aarch64": - return "/root/pgfutter_arm" - else: - return "/root/pgfutter_x64" - return None - - -def invalidate_cr3(pg, crash_id): - invalidate_cr3_sql = f"""UPDATE public.atd_txdot_crashes - SET cr3_stored_flag = 'N', cr3_file_metadata = null, cr3_ocr_extraction_date = null - WHERE crash_id = {crash_id}""" - cursor = pg.cursor(cursor_factory=psycopg2.extras.RealDictCursor) - cursor.execute(invalidate_cr3_sql) - pg.commit() - - -def get_column_operators( - target_columns, no_override_columns, source, table, output_map, DB_IMPORT_SCHEMA -): - column_assignments = {} - column_comparisons = [] - column_aggregators = [] - - important_column_assignments = {} - important_column_comparisons = [] - important_column_aggregators = [] - for column in target_columns: - # fmt: off - if column[ "column_name" ] in source: - column_assignment = f"{column['column_name']} = {DB_IMPORT_SCHEMA}.{table}.{column['column_name']}" - - - # there are two normal ways to be equal. Either be of the same value and type or /both/ be undefined. - comparison_clause = f""" - ( (public.{output_map[table]}.{column['column_name']} = {DB_IMPORT_SCHEMA}.{table}.{column['column_name']}) - OR (public.{output_map[table]}.{column['column_name']} IS NULL AND {DB_IMPORT_SCHEMA}.{table}.{column['column_name']} IS NULL) - """ - # And .. and there are two more ways that stem from past typing tech-debt we have on our db - if column["data_type"] in ('character varying', 'text'): - comparison_clause += f""" - OR (public.{output_map[table]}.{column['column_name']} IS null and {DB_IMPORT_SCHEMA}.{table}.{column['column_name']} = '') - OR (public.{output_map[table]}.{column['column_name']} = '' and {DB_IMPORT_SCHEMA}.{table}.{column['column_name']} IS NULL) - """ - comparison_clause += ")" - - column_aggregator = f""" - case when not coalesce( - public.{output_map[table]}.{column['column_name']} = {DB_IMPORT_SCHEMA}.{table}.{column['column_name']} - or - (public.{output_map[table]}.{column['column_name']} is null and {DB_IMPORT_SCHEMA}.{table}.{column['column_name']} is null) - , false) then '{column['column_name']}' else null end - """ - - if column["column_name"] in no_override_columns: - important_column_assignments[ column["column_name"] ] = column_assignment - important_column_comparisons.append(comparison_clause) - important_column_aggregators.append(column_aggregator) - else: - column_assignments[ column["column_name"] ] = column_assignment - column_comparisons.append(comparison_clause) - column_aggregators.append(column_aggregator) - - # fmt: on - return ( - column_assignments, - column_comparisons, - column_aggregators, - important_column_assignments, - important_column_comparisons, - important_column_aggregators, - ) - - -def check_if_update_is_a_non_op( - pg, - column_comparisons, - output_map, - table, - linkage_clauses, - public_key_sql, - DB_IMPORT_SCHEMA, -): - sql = "select (" + " and ".join(column_comparisons) + ") as skip_update\n" - sql += f"from public.{output_map[table]}\n" - sql += ( - f"left join {DB_IMPORT_SCHEMA}.{table} on (" - + " and ".join(linkage_clauses) - + ")\n" - ) - sql += f"where {public_key_sql}\n" - - cursor = pg.cursor(cursor_factory=psycopg2.extras.RealDictCursor) - cursor.execute(sql) - skip_update_query = cursor.fetchone() - if skip_update_query["skip_update"]: - return True - else: - return False - - -def get_changed_columns( - pg, - column_aggregators, - output_map, - table, - linkage_clauses, - public_key_sql, - DB_IMPORT_SCHEMA, -): - sql = "select " - sql += ( - "array_remove(array[" - + ",".join(column_aggregators) - + "], null)" - + "as changed_columns " - ) - sql += f"from public.{output_map[table]} " - sql += ( - f"left join {DB_IMPORT_SCHEMA}.{table} on (" - + " and ".join(linkage_clauses) - + ")\n" - ) - sql += f"where {public_key_sql}\n" - cursor = pg.cursor(cursor_factory=psycopg2.extras.RealDictCursor) - cursor.execute(sql) - changed_columns = cursor.fetchone() - return changed_columns - - -def get_key_clauses(table_keys, output_map, table, source, DB_IMPORT_SCHEMA): - # form some snippets we'll reuse - public_key_clauses = [] - import_key_clauses = [] - for key in table_keys[output_map[table]]: - public_key_clauses.append(f"public.{output_map[table]}.{key} = {source[key]}") - import_key_clauses.append(f"{DB_IMPORT_SCHEMA}.{table}.{key} = {source[key]}") - public_key_sql = " and ".join(public_key_clauses) - import_key_sql = " and ".join(import_key_clauses) - return public_key_sql, import_key_sql - - -def fetch_target_record(pg, output_map, table, public_key_sql): - # build and execute a query to find our target record; we're looking for it to exist - sql = f""" - select * - from public.{output_map[table]} - where - {public_key_sql} - """ - cursor = pg.cursor(cursor_factory=psycopg2.extras.RealDictCursor) - cursor.execute(sql) - target = cursor.fetchone() - return target - - -def form_update_statement( - output_map, - table, - column_assignments, - DB_IMPORT_SCHEMA, - public_key_sql, - linkage_sql, - changed_columns, -): - sql = "update public." + output_map[table] + " set " - - required_assignments = [] - for changed_column in set(changed_columns["changed_columns"]): - required_assignments.append(column_assignments[changed_column]) - sql += ", ".join(required_assignments) + " " - - sql += f""" - from {DB_IMPORT_SCHEMA}.{table} - where - {public_key_sql} - {linkage_sql} - """ - return sql - - -def form_insert_statement( - output_map, table, input_column_names, import_key_sql, DB_IMPORT_SCHEMA -): - sql = f"insert into public.{output_map[table]} " - sql += "(" + ", ".join(input_column_names) + ") " - sql += "(select " - sql += ", ".join(input_column_names) - sql += f" from {DB_IMPORT_SCHEMA}.{table}" - sql += f" where {import_key_sql})" - return sql - - -def is_change_existing(pg, record_type, record_id): - # print(f"\b 🛎 is existing? {record_type}, {record_id}") - - sql = f""" - select count(*) as exists - from atd_txdot_changes_view - where record_id = {record_id} - """ - - cursor = pg.cursor(cursor_factory=psycopg2.extras.RealDictCursor) - cursor.execute(sql) - change_request_exists = cursor.fetchone() - if change_request_exists["exists"] > 0: - return True - else: - return False - - -def try_statement(pg, output_map, table, public_key_sql, sql, dry_run): - if dry_run: - print("Dry run; skipping") - return - try: - cursor = pg.cursor(cursor_factory=psycopg2.extras.RealDictCursor) - cursor.execute(sql) - pg.commit() - except Exception as error: - print( - f"There is likely an issue with existing data. Try looking for results in {output_map[table]} with the following WHERE clause:\n'{public_key_sql}'" - ) - print(f"Error executing:\n\n{sql}\n") - print("\a") # 🛎 - - -def get_input_column_names(pg, DB_IMPORT_SCHEMA, table, target_columns): - sql = f""" - SELECT - column_name, - data_type, - character_maximum_length AS max_length, - character_octet_length AS octet_length - FROM - information_schema.columns - WHERE true - AND table_schema = '{DB_IMPORT_SCHEMA}' - AND table_name = '{table}' - """ - - cursor = pg.cursor(cursor_factory=psycopg2.extras.RealDictCursor) - cursor.execute(sql) - input_table_column_types = cursor.fetchall() - - # TODO figure out how to .map() this - input_column_names = [] - for result in input_table_column_types: - input_column_names.append(result["column_name"]) - - target_column_names = [] - for result in target_columns: - target_column_names.append(result["column_name"]) - - valid_input_column_names = [] - for column in input_column_names: - if column in target_column_names: - valid_input_column_names.append(column) - return valid_input_column_names - - -def get_target_columns(pg, output_map, table): - sql = f""" - SELECT - column_name, - data_type, - character_maximum_length AS max_length, - character_octet_length AS octet_length - FROM - information_schema.columns - WHERE true - AND table_schema = 'public' - AND table_name = '{output_map[table]}' - """ - - cursor = pg.cursor(cursor_factory=psycopg2.extras.RealDictCursor) - cursor.execute(sql) - target_columns = cursor.fetchall() - return target_columns - - -def load_input_data_for_keying(pg, DB_IMPORT_SCHEMA, table): - sql = f"select * from {DB_IMPORT_SCHEMA}.{table}" - - cursor = pg.cursor(cursor_factory=psycopg2.extras.RealDictCursor) - cursor.execute(sql) - imported_records = cursor.fetchall() - return imported_records - - -def get_linkage_constructions(key_columns, output_map, table, DB_IMPORT_SCHEMA): - linkage_clauses = [] - for column in key_columns: - linkage_clauses.append( - f"public.{output_map[table]}.{column} = {DB_IMPORT_SCHEMA}.{table}.{column}" - ) - linkage_sql = " AND " + " AND ".join(linkage_clauses) - return linkage_clauses, linkage_sql - - -def get_imported_tables(pg, DB_IMPORT_SCHEMA): - sql = f"SELECT * FROM information_schema.tables WHERE table_schema = '{DB_IMPORT_SCHEMA}';" - cursor = pg.cursor(cursor_factory=psycopg2.extras.RealDictCursor) - cursor.execute(sql) - imported_tables = cursor.fetchall() - return imported_tables - - -def enforce_complete_keying( - pg, key_columns, output_table, DB_IMPORT_SCHEMA, input_table -): - # drop any records without appropriate keying - # keys = mappings.get_key_columns()[output_table] - keys = key_columns[output_table] - sql = f"delete from {DB_IMPORT_SCHEMA}.{input_table['table_name']}" - clauses = [] - for key in keys: - clauses.append(f"{key} ~ '^\s*$'") - sql += " where (" + " or ".join(clauses) + ")" - - cursor = pg.cursor() - cursor.execute(sql) - pg.commit() - - -def get_output_column_types(pg, output_table): - # This is a subtle SQL injection attack vector. - # Beware the f-string. But I trust CRIS. - sql = f""" - SELECT - column_name, - data_type, - character_maximum_length AS max_length, - character_octet_length AS octet_length - FROM - information_schema.columns - WHERE true - AND table_schema = 'public' - AND table_name = '{output_table}' - """ - - cursor = pg.cursor(cursor_factory=psycopg2.extras.RealDictCursor) - cursor.execute(sql) - output_column_types = cursor.fetchall() - return output_column_types - - -def get_input_column_type(pg, DB_IMPORT_SCHEMA, input_table, column): - sql = f""" - SELECT - column_name, - data_type, - character_maximum_length AS max_length, - character_octet_length AS octet_length - FROM - information_schema.columns - WHERE true - AND table_schema = '{DB_IMPORT_SCHEMA}' - AND table_name = '{input_table["table_name"]}' - AND column_name = '{column["column_name"]}' - """ - - cursor = pg.cursor(cursor_factory=psycopg2.extras.RealDictCursor) - cursor.execute(sql) - input_column_type = cursor.fetchall() - return input_column_type - - -def get_input_tables_and_columns(pg, DB_IMPORT_SCHEMA): - sql = f""" - SELECT - table_name, - column_name, - data_type, - character_maximum_length AS max_length, - character_octet_length AS octet_length - FROM - information_schema.columns - WHERE true - AND table_schema = '{DB_IMPORT_SCHEMA}' - """ - - cursor = pg.cursor(cursor_factory=psycopg2.extras.RealDictCursor) - cursor.execute(sql) - input_tables_and_columns = cursor.fetchall() - return input_tables_and_columns - - -def trim_trailing_carriage_returns(pg, DB_IMPORT_SCHEMA, column): - cursor = pg.cursor(cursor_factory=psycopg2.extras.RealDictCursor) - sql = f""" - update {DB_IMPORT_SCHEMA}.{column["table_name"]} - set {column["column_name"]} = regexp_replace({column["column_name"]}, '[\\n\\r]*$', '', 'g') - """ - cursor.execute(sql) - pg.commit() - - -def form_alter_statement_to_apply_column_typing(DB_IMPORT_SCHEMA, input_table, column): - # the `USING` hackery is due to the reality of the CSV null vs "" confusion - return f""" - ALTER TABLE {DB_IMPORT_SCHEMA}.{input_table["table_name"]} - ALTER COLUMN {column["column_name"]} SET DATA TYPE {column["data_type"]} - USING case when {column["column_name"]} = \'\' then null else {column["column_name"]}::{column["data_type"]} end - """ - - -def show_changed_values( - pg, - changed_columns, - output_map, - table, - linkage_clauses, - record_key_sql, - DB_IMPORT_SCHEMA, -): - for column in changed_columns["changed_columns"]: - print(column) - linkage_sql = " and ".join(linkage_clauses) - sql = f""" - select {DB_IMPORT_SCHEMA}.{table}.{column}::text as import_{column}, - public.{output_map[table]}.{column}::text as public_{column} - from public.{output_map[table]} - left join {DB_IMPORT_SCHEMA}.{table} on {linkage_sql} - where {record_key_sql} - """ - cursor = pg.cursor(cursor_factory=psycopg2.extras.RealDictCursor) - cursor.execute(sql) - values = cursor.fetchone() - - if values[f"import_{column}"]: - # give some visible feedback for select special characters - values[f"import_{column}"] = values[f"import_{column}"].replace("\n", "\\n") - values[f"import_{column}"] = values[f"import_{column}"].replace("\r", "\\r") - - print(f"Column update for {column} in {table}:") - print(f" entity: {record_key_sql}") - print(f" import: '{values[f'import_{column}']}'") - print(f" public: '{values[f'public_{column}']}'") diff --git a/atd-etl/cris_import/lib/sshkeytempdir.py b/atd-etl/cris_import/lib/sshkeytempdir.py deleted file mode 100644 index bdd332fc0..000000000 --- a/atd-etl/cris_import/lib/sshkeytempdir.py +++ /dev/null @@ -1,28 +0,0 @@ -import tempfile -import os -import shutil - - -# these temp directories are used to store ssh keys, because they will -# automatically clean themselves up when they go out of scope. -class SshKeyTempDir: - def __init__(self): - self.path = None - - def __enter__(self): - self.path = tempfile.mkdtemp(dir="/tmp") - return self.path - - def __exit__(self, exc_type, exc_val, exc_tb): - shutil.rmtree(self.path) - - -def write_key_to_file(path, content): - # Open the file with write permissions and create it if it doesn't exist - fd = os.open(path, os.O_WRONLY | os.O_CREAT, 0o600) - - # Write the content to the file - os.write(fd, content.encode()) - - # Close the file - os.close(fd) diff --git a/atd-etl/cris_import/lib/testing.py b/atd-etl/cris_import/lib/testing.py deleted file mode 100644 index efb689534..000000000 --- a/atd-etl/cris_import/lib/testing.py +++ /dev/null @@ -1,91 +0,0 @@ -from sshtunnel import SSHTunnelForwarder -from .sshkeytempdir import SshKeyTempDir, write_key_to_file -import psycopg2 -import psycopg2.extras - -# usage: stick the "mess with in coming records" function in cris_import.py like -# so to make every record in the CRIS zip an update. - -# trimmed_token = remove_trailing_carriage_returns(pgloader_command_files) -# typed_token = align_db_typing(trimmed_token) -# typed_token = mess_with_incoming_records_to_ensure_updates( -# typed_token, -# DB_BASTION_HOST_SSH_PRIVATE_KEY, -# DB_BASTION_HOST, -# DB_BASTION_HOST_SSH_USERNAME, -# DB_RDS_HOST, -# DB_USER, -# DB_PASS, -# DB_NAME, -# DB_SSL_REQUIREMENT, -# ) -# align_records_token = align_records(typed_token) -# clean_up_import_schema(align_records_token) - - -def mess_with_incoming_records_to_ensure_updates( - map_state, - DB_BASTION_HOST_SSH_PRIVATE_KEY, - DB_BASTION_HOST, - DB_BASTION_HOST_SSH_USERNAME, - DB_RDS_HOST, - DB_USER, - DB_PASS, - DB_NAME, - DB_SSL_REQUIREMENT, -): - print(map_state) - schema = map_state["import_schema"] - with SshKeyTempDir() as key_directory: - write_key_to_file( - key_directory + "/id_ed25519", DB_BASTION_HOST_SSH_PRIVATE_KEY + "\n" - ) - ssh_tunnel = SSHTunnelForwarder( - (DB_BASTION_HOST), - ssh_username=DB_BASTION_HOST_SSH_USERNAME, - ssh_private_key=f"{key_directory}/id_ed25519", - remote_bind_address=(DB_RDS_HOST, 5432), - ) - ssh_tunnel.start() - - pg = psycopg2.connect( - host="localhost", - port=ssh_tunnel.local_bind_port, - user=DB_USER, - password=DB_PASS, - dbname=DB_NAME, - sslmode=DB_SSL_REQUIREMENT, - sslrootcert="/root/rds-combined-ca-bundle.pem", - ) - - sql = f"""UPDATE {schema}.crash - SET rpt_street_name = rpt_street_name || ' ' || lpad(to_hex((floor(random() * 16777215)::int)), 6, '0'); - """ - print(sql) - cursor = pg.cursor(cursor_factory=psycopg2.extras.RealDictCursor) - cursor.execute(sql) - - sql = f"""UPDATE {schema}.unit - SET vin = vin || ' ' || lpad(to_hex((floor(random() * 16777215)::int)), 6, '0'); - """ - print(sql) - cursor = pg.cursor(cursor_factory=psycopg2.extras.RealDictCursor) - cursor.execute(sql) - - sql = f"""UPDATE {schema}.person - SET prsn_last_name = prsn_last_name || ' ' || lpad(to_hex((floor(random() * 16777215)::int)), 6, '0'); - """ - print(sql) - cursor = pg.cursor(cursor_factory=psycopg2.extras.RealDictCursor) - cursor.execute(sql) - - sql = f"""UPDATE {schema}.primaryperson - SET prsn_last_name = prsn_last_name || ' ' || lpad(to_hex((floor(random() * 16777215)::int)), 6, '0'); - """ - print(sql) - cursor = pg.cursor(cursor_factory=psycopg2.extras.RealDictCursor) - cursor.execute(sql) - - pg.commit() - - return map_state diff --git a/atd-etl/cris_import/requirements.txt b/atd-etl/cris_import/requirements.txt index 02842b2eb..67e0dc982 100644 --- a/atd-etl/cris_import/requirements.txt +++ b/atd-etl/cris_import/requirements.txt @@ -1,7 +1,3 @@ -onepasswordconnectsdk==1.* -sysrsync==1.* -psycopg2-binary==2.* -sshtunnel==0.4.* -requests==2.* boto3==1.* -python-magic==0.* +pdf2image==1.* +requests==2.* diff --git a/atd-etl/cris_import/utils/cli.py b/atd-etl/cris_import/utils/cli.py new file mode 100644 index 000000000..8a5e40671 --- /dev/null +++ b/atd-etl/cris_import/utils/cli.py @@ -0,0 +1,58 @@ +import argparse + +from utils.settings import MULTIPROCESSING_PDF_MAX_WORKERS + + +def get_cli_args(): + """Create the CLI and parse args + + Returns: + argparse.Namespace: The CLI namespace + """ + parser = argparse.ArgumentParser( + description="Process CRIS extact zip files, including CSV data and CR3 crash reports", + usage="main.py --csv --verbose", + ) + parser.add_argument( + "--csv", + action="store_true", + help="Process CSV files. At least one of --csv or --pdf is required", + ) + parser.add_argument( + "--pdf", + action="store_true", + help="Process CR3 pdfs. At least one of --csv or --pdf is required", + ) + parser.add_argument( + "--s3-download", + action="store_true", + help="Source zip extracts from S3 bucket", + ) + parser.add_argument( + "--s3-upload", + action="store_true", + help="Upload cr3 pdfs and digrams to S3 bucket", + ) + parser.add_argument( + "--s3-archive", + action="store_true", + help="If using --s3-download, move the processed extracts from the ./inbox to ./archive subdirectory", + ) + parser.add_argument( + "--skip-unzip", + action="store_true", + help="Only process files that are already unzipped in the local directory", + ) + parser.add_argument( + "--verbose", + "-v", + action="store_true", + help="Sets logging level to DEBUG mode", + ) + parser.add_argument( + "--workers", + type=int, + default=MULTIPROCESSING_PDF_MAX_WORKERS, + help=f"The number of concurrent workers to use when processing PDFs. Default {MULTIPROCESSING_PDF_MAX_WORKERS}.", + ) + return parser.parse_args() diff --git a/atd-etl/cris_import/utils/exceptions.py b/atd-etl/cris_import/utils/exceptions.py new file mode 100644 index 000000000..90575f86f --- /dev/null +++ b/atd-etl/cris_import/utils/exceptions.py @@ -0,0 +1,3 @@ +class HasuraAPIError(Exception): + """Indicates an error when interacting with the Hasura graphQL API""" + pass diff --git a/atd-etl/cris_import/utils/files.py b/atd-etl/cris_import/utils/files.py new file mode 100644 index 000000000..430ec5d14 --- /dev/null +++ b/atd-etl/cris_import/utils/files.py @@ -0,0 +1,146 @@ +import os +import subprocess + +from boto3 import client, resource + +from utils.logging import get_logger + +from utils.settings import LOCAL_EXTRACTS_DIR + +ENV = os.environ["ENV"] +BUCKET_NAME = os.environ["BUCKET_NAME"] +EXTRACT_PASSWORD = os.environ["EXTRACT_PASSWORD"] + +logger = get_logger() +s3_client = client("s3") +s3_resource = resource("s3") + + +def format_megabytes(bytes): + """Format an integer as megabytes""" + return f"{round(bytes/1000000)}mb" + + +def get_extract_name_from_file_name(file_key): + """Parse the full extract name from the file name""" + return os.path.basename(file_key).replace(".zip", "") + + +def get_unzipped_extracts_local(): + """Gets a list of sudirectories in the , making the assumption that any subdirectory + is an unzipped CRIS extract. + + Returns a sorted list of dicts as { extract_name, extract_dest_dir } + """ + unzipped_extracts = [] + for extract_name in os.listdir(LOCAL_EXTRACTS_DIR): + extract_subdir_full_path = os.path.join(LOCAL_EXTRACTS_DIR, extract_name) + if os.path.isdir(extract_subdir_full_path): + unzipped_extracts.append( + { + "s3_file_key": None, + "extract_name": extract_name, + "extract_dest_dir": extract_subdir_full_path, + } + ) + return sorted(unzipped_extracts, key=lambda d: d["extract_name"]) + + +def get_extract_zips_todo_local(): + """Get a list of extract zips in + + Returns a sorted list of dicts as { s3_file_key, local_zip_file_path, file_size, extract_name } + """ + extracts = [] + for fname in os.listdir(LOCAL_EXTRACTS_DIR): + if fname.endswith(".zip"): + zip_extract_local_path = os.path.join(LOCAL_EXTRACTS_DIR, fname) + zip_size = os.path.getsize(zip_extract_local_path) + # we're matching the structure of the dict returned from get_extract_zips_to_download_s3 + extracts.append( + { + "s3_file_key": None, + "local_zip_file_path": zip_extract_local_path, + "file_size": zip_size, + "extract_name": get_extract_name_from_file_name(fname), + } + ) + return sorted(extracts, key=lambda d: d["extract_name"]) + + +def get_extract_zips_to_download_s3(subdir="inbox"): + """Fetch a list of CRIS extract zips that are in `inbox` subdirectory in the S3 bucket. + + Returns a sorted list of dicts as { s3_file_key, local_zip_file_path, file_size, extract_name } + """ + prefix = f"{ENV}/cris_extracts/{subdir}" + logger.info(f"Getting list of extracts in {prefix}") + response = s3_client.list_objects( + Bucket=BUCKET_NAME, + Prefix=prefix, + ) + extracts = [] + for item in response.get("Contents", []): + key = item.get("Key") + if key.endswith(".zip"): + extracts.append( + { + "s3_file_key": key, + "local_zip_file_path": os.path.join( + LOCAL_EXTRACTS_DIR, os.path.basename(key) + ), + "file_size": item.get("Size"), + "extract_name": get_extract_name_from_file_name(key), + } + ) + + if not len(extracts): + raise IOError("No extract zips found in S3 bucket") + + # assumes extract ids are sortable newsest -> oldest + return sorted(extracts, key=lambda d: d["extract_name"]) + + +def download_extract_from_s3(s3_file_key, file_size, local_zip_file_path): + """Download zip file from s3 into the provided """ + logger.info(f"Downloading {s3_file_key} ({format_megabytes(file_size)})") + s3_client.download_file(BUCKET_NAME, s3_file_key, local_zip_file_path) + + +def unzip_extract(local_zip_file_path, out_dir_path): + """Unzip a cris extract + + Args: + file_path (str): the full path to the extract zip + out_dir_path (str): the full path to the directory where extracted files will be saved + """ + logger.info(f"Unzipping {local_zip_file_path} to {out_dir_path}") + unzip_command = ( + f'7za -y -p{EXTRACT_PASSWORD} -o{out_dir_path} x "{local_zip_file_path}"' + ) + subprocess.run(unzip_command, check=True, shell=True, stdout=subprocess.DEVNULL) + + +def archive_extract_zip(file_key): + """Move an extract zip from ./inbox to ./archive + + Args: + s3_client (botocore.client.S3): the s3 client instance + s3_resource (boto3.resources.factory.s3.ServiceResource): the lower-level S3 "resource" instance + file_key (str): the s3 object file key of the zip file to be archved + """ + new_key = file_key.replace("inbox", "archive") + logger.info(f"Archiving {file_key}") + s3_resource.meta.client.copy( + {"Bucket": BUCKET_NAME, "Key": file_key}, BUCKET_NAME, new_key + ) + s3_client.delete_object(Bucket=BUCKET_NAME, Key=file_key) + + +def get_extract_dir(extract_name): + """Construct the full path to an unzipped extract""" + return os.path.join(LOCAL_EXTRACTS_DIR, extract_name) + + +def upload_file_to_s3(file_path, object_key): + s3_client.upload_file(file_path, BUCKET_NAME, object_key) diff --git a/atd-etl/cris_import/utils/graphql.py b/atd-etl/cris_import/utils/graphql.py new file mode 100644 index 000000000..70e32c741 --- /dev/null +++ b/atd-etl/cris_import/utils/graphql.py @@ -0,0 +1,185 @@ +from datetime import datetime, timezone +import os + +import requests + +from utils.exceptions import HasuraAPIError + +ENDPOINT = os.getenv("HASURA_GRAPHQL_ENDPOINT") +ADMIN_SECRET = os.getenv("HASURA_GRAPHQL_ADMIN_SECRET") + +COLUMN_METADATA_QUERY = """ +query ColumnMetadata { + _column_metadata(where: {is_imported_from_cris: {_eq: true}}) { + column_name + record_type + } +} +""" + +CRASH_UPSERT_MUTATION = """ +mutation UpsertCrashes($objects: [crashes_cris_insert_input!]!) { + insert_crashes_cris( + objects: $objects, + on_conflict: { + constraint: crashes_cris_cris_crash_id_key, + update_columns: [$updateColumns] + }) { + affected_rows + } +} +""" + +UNIT_UPSERT_MUTATION = """ +mutation UpsertUnits($objects: [units_cris_insert_input!]!) { + insert_units_cris( + objects: $objects, + on_conflict: { + constraint: unique_units_cris, + update_columns: [$updateColumns] + }) { + affected_rows + } +} +""" + +PERSON_UPSERT_MUTATION = """ +mutation UpsertPeople($objects: [people_cris_insert_input!]!) { + insert_people_cris( + objects: $objects, + on_conflict: { + constraint: unique_people_cris, + update_columns: [$updateColumns] + }) { + affected_rows + } +}""" + +CHARGES_DELETE_MUTATION = """ +mutation DeleteCharges($cris_crash_ids: [Int!]!) { + delete_charges_cris(where: {cris_crash_id: {_in: $cris_crash_ids}}) { + affected_rows + } +} +""" + +CHARGES_INSERT_MUTATION = """ +mutation InsertCharges($objects: [charges_cris_insert_input!]!) { + insert_charges_cris(objects: $objects) { + affected_rows + } +} +""" + +CRIS_IMPORT_LOG_INSERT_MUTATION = """ +mutation InsertImportLog($data: _cris_import_log_insert_input!) { + insert__cris_import_log_one(object: $data) { + id + } +} +""" + +CRIS_IMPORT_LOG_UPDATE_MUTATION = """ +mutation UpdateImportLog($data: _cris_import_log_set_input!, $id: Int!) { + update__cris_import_log_by_pk(pk_columns: {id: $id}, _set: $data) { + id + } +} +""" + +UPDATE_CRASH_CR3_FIELDS = """ +mutation UpdateCrashCR3Fields($cris_crash_id: Int!, $data: crashes_cris_set_input!) { + update_crashes_cris(where: { cris_crash_id: { _eq: $cris_crash_id } }, _set: $data) { + affected_rows + returning { + id + } + } +} +""" + +UPSERT_RECORD_MUTATIONS = { + "crashes": CRASH_UPSERT_MUTATION, + "units": UNIT_UPSERT_MUTATION, + "persons": PERSON_UPSERT_MUTATION, + "charges": CHARGES_INSERT_MUTATION, +} + + +def make_hasura_request(*, query, variables=None): + """Make a POST request to the graphql API. + + Requires HASURA_GRAPHQL_ENDPOINT env var. + + Args: + query (str): the graphql query + variables (dict, optional): the query variables. Defaults to None. + Raises: + HasuraAPIError: If the API response JSON does not contain a top-level `data` + property + Returns: + dict: The `data` property of the JSON response + """ + if not ENDPOINT: + raise OSError("HASURA_GRAPHQL_ENDPOINT env var is missing/None") + payload = {"query": query, "variables": variables} + res = requests.post( + ENDPOINT, json=payload, headers={"x-hasura-admin-secret": ADMIN_SECRET} + ) + res.raise_for_status() + data = res.json() + try: + return data["data"] + except (KeyError, TypeError) as err: + raise HasuraAPIError(data) from err + + +def create_log_entry( + *, s3_file_key=None, extract_name=None, local_zip_file_path=None, **kwargs +): + """Insert a new entry in the `_cris_import_log` tracking table. + + Args: + s3_file_key (str, optional): the S3 file key of the extract. Defaults to None. + extract_name (str, optional): the name of the extract. required if s3_file_key is None. + + Returns: + int: the record ID of the log entry that was created + """ + if not s3_file_key and not extract_name: + raise ValueError("s3_file_key or extract_name are required to create log entry") + + object_name = ( + s3_file_key + if s3_file_key + else local_zip_file_path if local_zip_file_path else extract_name + ) + + variables = { + "data": { + "object_path": s3_file_key if s3_file_key else "local", + "object_name": object_name, + } + } + data = make_hasura_request( + query=CRIS_IMPORT_LOG_INSERT_MUTATION, variables=variables + ) + return data["insert__cris_import_log_one"]["id"] + + +def set_log_entry_complete(*, log_entry_id, records_processed): + """Set the completed_at timestamp of a cris_activity_log record + + Args: + log_entry_id (int): the log record ID + records_processed (dict): a dict with the number of records processed by table type. + E.g.: {"crashes": 0,"units": 0,"persons": 0,"charges": 0,"pdfs": 0} + """ + variables = { + "id": log_entry_id, + "data": { + "completed_at": datetime.now(timezone.utc).isoformat(), + "records_processed": records_processed, + }, + } + make_hasura_request(query=CRIS_IMPORT_LOG_UPDATE_MUTATION, variables=variables) diff --git a/atd-etl/cris_import/utils/logging.py b/atd-etl/cris_import/utils/logging.py new file mode 100644 index 000000000..c39b693c0 --- /dev/null +++ b/atd-etl/cris_import/utils/logging.py @@ -0,0 +1,21 @@ +import logging +import sys + +LOGGER_NAME = "cris_import" + + +def get_logger(): + """Returns the logger instance that was iniatilized via init_logger""" + return logging.getLogger(LOGGER_NAME) + + +def init_logger(debug=False): + """Initialize and return a logger that streams to STDOUT. Call this once in the main script""" + level = logging.DEBUG if debug else logging.INFO + logger = logging.getLogger(LOGGER_NAME) + handler = logging.StreamHandler(stream=sys.stdout) + formatter = logging.Formatter(fmt="%(levelname)s: %(message)s") + handler.setFormatter(formatter) + logger.addHandler(handler) + logger.setLevel(level) + return logger diff --git a/atd-etl/cris_import/utils/process_csvs.py b/atd-etl/cris_import/utils/process_csvs.py new file mode 100644 index 000000000..c86127ef2 --- /dev/null +++ b/atd-etl/cris_import/utils/process_csvs.py @@ -0,0 +1,445 @@ +import csv +from datetime import datetime +import os +import time +from zoneinfo import ZoneInfo + +from utils.graphql import ( + make_hasura_request, + UPSERT_RECORD_MUTATIONS, + COLUMN_METADATA_QUERY, + CHARGES_DELETE_MUTATION, +) +from utils.logging import get_logger +from utils.settings import CSV_UPLOAD_BATCH_SIZE + +logger = get_logger() + + +"""list of fields to check when setting the prsn_exp_homelessness flag""" +peh_fields = [ + "drvr_street_nbr", + "drvr_street_pfx", + "drvr_street_name", + "drvr_street_sfx", + "drvr_apt_nbr", + "drvr_city_name", + "drvr_state_id", + "drvr_zip", +] + +"""list of fields which contain people's names - these fields will be nullified +except in cases of fatal injury""" +name_fields = [ + "prsn_first_name", + "prsn_mid_name", + "prsn_last_name", +] + + +def get_cris_columns(column_metadata, table_name): + """Get the list of column names for every column we want to handle in the CRIS csv. + + Args: + column_metadata (list): A list of dicts from the `_column_metadata` DB table, each with + a `column_name` and `record_type` attribute + table_name (str): the name of the CRIS table/record type to handle + + Returns: + list: a list of of column name strings + """ + table_key = table_name + if "person" in table_key: + table_key = "people" + return [ + col["column_name"] for col in column_metadata if col["record_type"] == table_key + ] + + +def make_upsert_mutation(table_name, cris_columns): + """Retrieves the graphql query string for a record mutation + + Args: + table_name (str): `crashes`, `units`, `charges`, or `people` + cris_columns (list): a list of column names that should be updated if a given + record already exists. Essentially this is a list of all columns except the + table's primary key. It enables upserting. + See: https://hasura.io/docs/latest/mutations/postgres/upsert/ + + Returns: + str: the graphql query string + """ + upsert_mutation = UPSERT_RECORD_MUTATIONS[table_name] + update_columns = cris_columns.copy() + return upsert_mutation.replace("$updateColumns", ", ".join(update_columns)) + + +def get_file_meta(filename): + """Parse file metadata out of the CRIS CSV filename. + + If CRIS changes this naming convention it causes headaches. + + Returns: + list: [, , ] + - schema_year: the CRIS schema year of the records + - table_name: the record type (crash, unit, person, priamryperson, charges) + - extract_id: the unique extract ID of the file + """ + filename_parts = filename.split("_") + return filename_parts[1], filename_parts[2], filename_parts[3] + + +def get_csvs_todo(extract_dir): + """Construct a list of CSV file metadata for each CSV in the given directory + + Args: + extract_dir (str): The full path to the directory which contains the CSV files + + Raises: + ValueError: If an unsupported CRIS schema version is detected + + Returns: + list: A list of dicts where entry contains important file metadata: + - schema_year: the CRIS schema year of the records + - table_name: the record type (crash, unit, person, priamryperson, charges) + - path: the full path to the CSV + - extract_id: the unique extract ID of the file + """ + csvs_todo = [] + for filename in os.listdir(extract_dir): + if not filename.endswith(".csv"): + continue + schema_year, extract_id, table_name = get_file_meta(filename) + + # ignore all tables except these + if table_name not in ("crash", "unit", "person", "primaryperson", "charges"): + continue + + if not int(schema_year) > 2000 or not int(schema_year) < 2024: + raise ValueError(f"Unexpected CRIS schema year provided: {schema_year}") + + file = { + "schema_year": schema_year, + "table_name": table_name, + "path": os.path.join(extract_dir, filename), + "extract_id": extract_id, + } + csvs_todo.append(file) + return csvs_todo + + +def load_csv(filename): + """Read a CSV file into a list of dicts""" + with open(filename, "r") as fin: + reader = csv.DictReader(fin) + return [row for row in reader] + + +def lower_case_keys(records): + """Copy a list of record dicts by making each key lower case""" + return [{key.lower(): value for key, value in record.items()} for record in records] + + +def remove_unsupported_columns(records, columns_to_keep): + """Copy a list of dicts by excluding all attributes not defined in """ + return [ + {key: val for key, val in record.items() if key in columns_to_keep} + for record in records + ] + + +def set_empty_strings_to_none(records): + """Traverse every record property and set '' to None""" + for record in records: + for key, val in record.items(): + if val == "": + record[key] = None + return records + + +def set_default_values(records, key_values): + """Assign default values to a list of dicts + + Args: + records (list): list of record dicts + key_values (dict): a dict of keys with their default values in the form of { : } + + Returns: + None: records are updated in place + """ + for record in records: + for key, value in key_values.items(): + record[key] = value + + +def combine_date_time_fields( + records, + *, + date_field_name, + time_field_name, + output_field_name, + is_am_pm_format, + tz="America/Chicago", +): + """Combine a date and time field and format as ISO string. The new ISO + string is stored in the output_field_name. + + Args: + record (list): list of CRIS record dicts + date_field_name (str): the name of the attribute which holds the date value + time_field_name (str): the name of the attribute which holds the time value + output_field_name (str): the name of attribute to which the date-time will be assigned + is_am_pm_format (bool): indictates which flavor of timestamp is provided. if true, + the input format is expected to match, e.g. '12:15 PM', otherwise a 24hr clock + is expected. We are handling quirky formatting in the CRIS extract data. + tz (string): The IANA time zone name of the input time value. Defaluts to America/Chicago + + Returns: + None: records are updated in-place + """ + tzinfo = ZoneInfo(tz) + for record in records: + input_date_string = record[date_field_name] + input_time_string = record[time_field_name] + + if not input_date_string or not input_time_string: + continue + + # parse a date string that looks like '12/22/2023' + month, day, year = input_date_string.split("/") + + hour = None + minute = None + if is_am_pm_format: + # parse a time string that looks like '12:15 PM' + hour_minute, am_pm = input_time_string.split(" ") + hour, minute = hour_minute.split(":") + if am_pm.lower() == "pm": + hour = int(hour) + 12 if hour != "12" else int(hour) + else: + hour = int(hour) if hour != "12" else 0 + else: + # parse a time string that looks like '12:00:00' + hour, minute, second = input_time_string.split(":") + + # create a tz-aware instance of this datetime + + dt = datetime( + int(year), + int(month), + int(day), + hour=int(hour), + minute=int(minute), + tzinfo=tzinfo, + ) + # save the ISO string with tz offset + crash_date_iso = dt.isoformat() + record[output_field_name] = crash_date_iso + + +def chunks(lst, n): + """Yield successive n-sized chunks from lst.""" + for i in range(0, len(lst), n): + yield lst[i : i + n] + + +def set_peh_field(record): + """Assign the `prsn_exp_homelessness` flag based on reporting conventions used by + law enforcement crash investigators""" + for field in peh_fields: + record_val = record[field] + for search_term in ["homeless", "unhoused", "transient"]: + if record_val and search_term in record_val.lower(): + record["prsn_exp_homelessness"] = True + # no need to continue further + return + + +def nullify_name_fields(records): + """Assigns `None` to all name fields where prsn_injry_sev_id is not 4 (fatality)""" + for record in records: + if record["prsn_injry_sev_id"] != "4": + for field in name_fields: + record[field] = None + + +def rename_crash_id(records): + """Rename CRIS's `crash_id` column to `cris_crash_id`. Records are modified in-place.""" + for record in records: + record["cris_crash_id"] = record.pop("Crash_ID") + + +def remove_non_charges(records): + """Remove charges records where the charge = 'NO CHARGES'. we don't use this data, and + because it's quite a lot of data we elect to exclude t from the DB entirely""" + return [r for r in records if r["charge"] != "NO CHARGES"] + + +def process_csvs(extract_dir): + """Main function for loading CRIS CSVs into the database. This function handles + one unzipped CRIS extract, which itself may contain multiple schema years. + + Args: + extract_dir (str): The full path to the directory which contains the + unzipped CSV files to be processed + + Returns: + dict: number of records processed with one entry per table type + """ + records_processed = {"crashes": 0, "units": 0, "persons": 0, "charges": 0} + overall_start_tme = time.time() + + logger.debug("Fetching column metadata") + column_metadata = make_hasura_request(query=COLUMN_METADATA_QUERY)[ + "_column_metadata" + ] + + csvs_to_import = get_csvs_todo(extract_dir) + + extract_ids = list(set([f["extract_id"] for f in csvs_to_import])) + # assumes extract ids are sortable oldest > newest by filename. todo: is that right? + extract_ids.sort() + for extract_id in extract_ids: + logger.info(f"Processing CSVs for extract ID: {extract_id}") + # get schema years that match this extract ID + schema_years = list( + set( + [ + f["schema_year"] + for f in csvs_to_import + if f["extract_id"] == extract_id + ] + ) + ) + schema_years.sort() + for schema_year in schema_years: + logger.debug(f"Processing schema year: {schema_year}") + for table_name in ["crashes", "units", "persons", "charges"]: + cris_columns = get_cris_columns(column_metadata, table_name) + + file = next( + ( + f + for f in csvs_to_import + if f["extract_id"] == extract_id + and f["schema_year"] == schema_year + and table_name.startswith(f["table_name"]) + ), + None, + ) + + if not file: + raise Exception( + f"No {table_name} file found in extract. This should never happen!" + ) + + logger.debug(f"processing {table_name}") + + records = load_csv(file["path"]) + + # rename Crash_ID to cris_crash_id for all tables except crashes + rename_crash_id(records) + + records = lower_case_keys(records) + + if table_name == "crashes": + combine_date_time_fields( + records, + date_field_name="crash_date", + time_field_name="crash_time", + output_field_name="crash_timestamp", + is_am_pm_format=True, + ) + + # annoying redundant branch to combine primary persons and persons + if table_name == "persons": + + p_person_file = next( + ( + f + for f in csvs_to_import + if f["extract_id"] == extract_id + and f["schema_year"] == schema_year + and f["table_name"].startswith("primaryperson") + ), + None, + ) + + set_default_values(records, {"is_primary_person": False}) + pp_records = load_csv(p_person_file["path"]) + rename_crash_id(pp_records) + pp_records = lower_case_keys(pp_records) + + for record in pp_records: + set_peh_field(record) + + set_default_values(pp_records, {"is_primary_person": True}) + + records = pp_records + records + + nullify_name_fields(records) + + combine_date_time_fields( + records, + date_field_name="prsn_death_date", + time_field_name="prsn_death_time", + output_field_name="prsn_death_timestamp", + is_am_pm_format=False, + ) + + if table_name == "charges": + # set created_by audit field only + set_default_values( + records, + {"created_by": "cris", "cris_schema_version": schema_year}, + ) + delete_charges_batch_size = 500 + crash_ids = list( + set([int(record["cris_crash_id"]) for record in records]) + ) + logger.debug( + f"Deleting charges in batches for {len(crash_ids)} total crashes" + ) + for chunk in chunks(crash_ids, delete_charges_batch_size): + logger.debug(f"Deleting {delete_charges_batch_size} crashes") + make_hasura_request( + query=CHARGES_DELETE_MUTATION, + variables={"cris_crash_ids": crash_ids}, + ) + # now that we've deleted all charges we can purge the non-charge records + # from our import + records = remove_non_charges(records) + else: + # set created_by and updated_by audit fields + set_default_values( + records, + { + "created_by": "cris", + "updated_by": "cris", + "cris_schema_version": schema_year, + }, + ) + + records = remove_unsupported_columns( + records, + cris_columns + ["created_by", "updated_by"], + ) + + records = set_empty_strings_to_none(records) + + upsert_mutation = make_upsert_mutation(table_name, cris_columns) + + for chunk in chunks(records, CSV_UPLOAD_BATCH_SIZE): + logger.info(f"Uploading {len(chunk)} {table_name}") + start_time = time.time() + make_hasura_request( + query=upsert_mutation, + variables={"objects": chunk}, + ) + logger.debug( + f"✅ done in {round(time.time() - start_time, 3)} seconds" + ) + records_processed[table_name] += len(records) + logger.debug(f"Records processed: {records_processed}") + logger.info(f"✅ Done in {round((time.time() - overall_start_tme)/60, 2)} minutes") + return records_processed diff --git a/atd-etl/cris_import/utils/process_pdfs.py b/atd-etl/cris_import/utils/process_pdfs.py new file mode 100644 index 000000000..383679536 --- /dev/null +++ b/atd-etl/cris_import/utils/process_pdfs.py @@ -0,0 +1,176 @@ +from datetime import datetime, timezone +from concurrent.futures import ProcessPoolExecutor +import os +from pathlib import Path + +import time + +from pdf2image import convert_from_path + +from utils.graphql import UPDATE_CRASH_CR3_FIELDS, make_hasura_request +from utils.logging import get_logger +from utils.files import upload_file_to_s3 +from utils.settings import ( + DIAGRAM_BBOX_PIXELS, + NEW_CR3_FORM_TEST_PIXELS, +) + +ENV = os.getenv("ENV") +logger = get_logger() + + +def is_new_cr3_form(page): + """Determine if the CR3 is following the older or newer format. + + The check is conducted by sampling if various pixels are black. + + Args: + page (PIL image): the pdf page as an image + + Returns: + bool: true if the provided page passes the sampling tests + """ + new_cr3_form = True + for pixel in NEW_CR3_FORM_TEST_PIXELS: + rgb_pixel = page.getpixel(pixel) + if rgb_pixel[0] != 0 or rgb_pixel[1] != 0 or rgb_pixel[2] != 0: + new_cr3_form = False + break + return new_cr3_form + + +def crop_and_save_diagram(page, cris_crash_id, is_new_cr3_form, extract_dir): + """Crop out the crash diagram and save it to the local directory. + + The diagram is saved to /crash_diagrams/.jpeg + + Args: + page (PIL image): the CR3 pdf page as an image + cris_crash_id (int): the CRIS crash ID + is_new_cr3_form (bool): if the CR3 is in the 'new' format + extract_dir (str): the local directory in which to save the file + + Returns: + str: diagram_full_path - the full path to the saved diagram, including it's name + str: diagram_filename - the name of diagram file, .e.g 12345678.jpeg + """ + bbox = DIAGRAM_BBOX_PIXELS["new"] if is_new_cr3_form else DIAGRAM_BBOX_PIXELS["old"] + diagram_image = page.crop(bbox) + diagram_filename = f"{cris_crash_id}.jpeg" + diagram_full_path = os.path.join(extract_dir, "crash_diagrams", diagram_filename) + diagram_image.save(diagram_full_path) + return diagram_full_path, diagram_filename + + +def get_cr3_object_key(filename, kind): + """Format the S3 object to which the CR3 PDF or diagram saved""" + return f"{ENV}/cr3s/{kind}/{filename}" + + +def process_pdf(extract_dir, filename, s3_upload, index): + """Handles processing of one CR3 PDF document. + + Args: + extract_dir (str): the local path to the current extract + filename (str): the filename of the CR3 PDF process, e.g. 123456.pdf + s3_upload (bool): if the diagram and PDF should be uploaded to the S3 bucket + index (int): the index ID of this pdf among all PDFs being processed + """ + logger.info(f"Processing {filename} ({index})") + cris_crash_id = int(filename.replace(".pdf", "")) + pdf_path = os.path.join(extract_dir, "crashReports", filename) + logger.debug("Converting PDF to image...") + page = convert_from_path( + pdf_path, + fmt="jpeg", # jpeg is much faster than the default ppm fmt + first_page=2, # page 2 has the crash diagram + last_page=2, + dpi=150, + )[0] + + logger.debug("Cropping crash diagram...") + diagram_full_path, diagram_filename = crop_and_save_diagram( + page, cris_crash_id, is_new_cr3_form(page), extract_dir + ) + + if s3_upload: + s3_object_key_pdf = get_cr3_object_key(filename, "pdfs") + logger.debug(f"Uploading CR3 pdf to {s3_object_key_pdf}") + upload_file_to_s3(pdf_path, s3_object_key_pdf) + + s3_object_key_diagram = get_cr3_object_key(diagram_filename, "crash_diagrams") + logger.debug(f"Uploading crash diagram to {s3_object_key_diagram}") + upload_file_to_s3(diagram_full_path, s3_object_key_diagram) + + logger.debug(f"Updating crash CR3 metadata") + res = make_hasura_request( + query=UPDATE_CRASH_CR3_FIELDS, + variables={ + "cris_crash_id": cris_crash_id, + "data": { + "cr3_processed_at": datetime.now(timezone.utc).isoformat(), + "cr3_stored_fl": True, + }, + }, + ) + # check to make sure that we actually updated a crash record + affected_rows = res["update_crashes_cris"]["affected_rows"] + if not affected_rows: + raise ValueError( + f"Crash ID: {cris_crash_id} - CR3 PDF has no matching crash record in the DB. This should never happen." + ) + + +def process_pdfs(extract_dir, s3_upload, max_workers): + """Main loop for extract crash diagrams from CR3 PDFs + + Args: + extract_dir (str): the local path to the current extract + s3_upload (bool): if the diagram and PDF should be uploaded to the S3 bucket + max_workers (int): the maximum number of workers to assign to the + multiprocressing pool + """ + overall_start_tme = time.time() + # make the crash_diagram extract directory + Path(os.path.join(extract_dir, "crash_diagrams")).mkdir(parents=True, exist_ok=True) + + pdfs = [ + filename + for filename in os.listdir(os.path.join(extract_dir, "crashReports")) + if filename.endswith(".pdf") + ] + + pdf_count = len(pdfs) + + logger.info(f"Found {pdf_count} PDFs to process") + + futures = [] + with ProcessPoolExecutor(max_workers=max_workers) as executor: + for index, filename in enumerate(pdfs): + future = executor.submit( + process_pdf, extract_dir, filename, s3_upload, index + ) + futures.append(future) + # inspect results and collect all errors—this must be done after all pdfs have + # processed because future.result() is blocking + errors = [] + for index, future in enumerate(futures): + try: + future.result() + except Exception as e: + # grab the filename from the pdf list + filename = pdfs[index] + errors.append([filename, e]) + + if errors: + logger.error( + f"Encountered {len(errors)} error(s) processing PDFs. Logging up to 10 errors and raising the first..." + ) + for filename, e in errors[0:10]: + logger.info(f"Error processing {filename}: {e}") + raise errors[0][1] + + logger.info( + f"✅ {pdf_count} CR3s processed in {round((time.time() - overall_start_tme)/60, 2)} minutes" + ) + return pdf_count diff --git a/atd-etl/cris_import/utils/settings.py b/atd-etl/cris_import/utils/settings.py new file mode 100644 index 000000000..c4fba923f --- /dev/null +++ b/atd-etl/cris_import/utils/settings.py @@ -0,0 +1,20 @@ +LOCAL_EXTRACTS_DIR = "extracts" + +"""This is the bbox used to crop the crash diagram""" +DIAGRAM_BBOX_PIXELS = { + "old": (2589, 3531, 5001, 6048), + "new": (2496, 3036, 4836, 5464), +} + +"""If all four of these pixels are black, it is a 'new' CR3 pdf""" +NEW_CR3_FORM_TEST_PIXELS = [ + (215, 2567), + (872, 2568), + (625, 1806), + (4834, 279), +] + +CSV_UPLOAD_BATCH_SIZE = 1000 + +# max number of CPU cores to utilize when processing PDFs concurrently +MULTIPROCESSING_PDF_MAX_WORKERS = 4 diff --git a/atd-etl/populate_cr3_file_metadata/.dockerignore b/atd-etl/populate_cr3_file_metadata/.dockerignore deleted file mode 100644 index 0a764a4de..000000000 --- a/atd-etl/populate_cr3_file_metadata/.dockerignore +++ /dev/null @@ -1 +0,0 @@ -env diff --git a/atd-etl/populate_cr3_file_metadata/.gitignore b/atd-etl/populate_cr3_file_metadata/.gitignore deleted file mode 100644 index 3c4b7906b..000000000 --- a/atd-etl/populate_cr3_file_metadata/.gitignore +++ /dev/null @@ -1,3 +0,0 @@ -*pdf -env - diff --git a/atd-etl/populate_cr3_file_metadata/Dockerfile b/atd-etl/populate_cr3_file_metadata/Dockerfile deleted file mode 100644 index 8a2f1dfe5..000000000 --- a/atd-etl/populate_cr3_file_metadata/Dockerfile +++ /dev/null @@ -1,12 +0,0 @@ -FROM python:3.10-slim - -RUN apt-get update -RUN apt-get upgrade -y -RUN apt-get install -y file - -# Copy our own application -WORKDIR /app -COPY . /app - -# Install requirements -RUN pip install -r requirements.txt diff --git a/atd-etl/populate_cr3_file_metadata/README.md b/atd-etl/populate_cr3_file_metadata/README.md deleted file mode 100644 index 6c4c0bcf1..000000000 --- a/atd-etl/populate_cr3_file_metadata/README.md +++ /dev/null @@ -1,29 +0,0 @@ -# CR3 metadata generator ETL - -## Intent - -This program is used to inspect the CR3s on file in S3 and to generate some metadata about them. -This metadata is then stored in the database and used by the various portions of the stack to determine -if and when a CR3 can be made available to users. - -## Airflow DAG - -This program is a python script which is bundled up into a docker image and to be run by [Airflow](https://github.com/cityofaustin/atd-airflow/blob/production/dags/vz_populate_cr3_metadata.py). - -## Local use - -This program also comes with a docker compose stack. To run it locally, you can do something along these lines: - -```bash -cp env_template env; - -# Edit the env file to include the necessary environment variables - -# The following command will drop you in a bash shell in the metadata container. -docker compose run metadata; - -# some example invocations -./populate_cr3_file_metadata.py -h; # see the options -./populate_cr3_file_metadata.py -a; # process the entire queue, quietly, with a progress bar -./populate_cr3_file_metadata.py -t 10 -s 100 -v; # process the first 100 CR3s in the queue, verbosely, using 10 threads. -``` diff --git a/atd-etl/populate_cr3_file_metadata/docker-compose.yaml b/atd-etl/populate_cr3_file_metadata/docker-compose.yaml deleted file mode 100644 index c28f930f4..000000000 --- a/atd-etl/populate_cr3_file_metadata/docker-compose.yaml +++ /dev/null @@ -1,10 +0,0 @@ -services: - metadata: - build: - context: . - dockerfile: Dockerfile - volumes: - - .:/app - entrypoint: /bin/bash - env_file: - - env diff --git a/atd-etl/populate_cr3_file_metadata/env_template b/atd-etl/populate_cr3_file_metadata/env_template deleted file mode 100644 index 267112955..000000000 --- a/atd-etl/populate_cr3_file_metadata/env_template +++ /dev/null @@ -1,7 +0,0 @@ -PDF_MAX_RECORDS=100 -AWS_BUCKET_NAME= -AWS_BUCKET_ENVIRONMENT= -HASURA_ENDPOINT= -HASURA_ADMIN_KEY= -AWS_ACCESS_KEY_ID= -AWS_SECRET_ACCESS_KEY= diff --git a/atd-etl/populate_cr3_file_metadata/populate_cr3_file_metadata.py b/atd-etl/populate_cr3_file_metadata/populate_cr3_file_metadata.py deleted file mode 100755 index 6af157cdf..000000000 --- a/atd-etl/populate_cr3_file_metadata/populate_cr3_file_metadata.py +++ /dev/null @@ -1,390 +0,0 @@ -#!/usr/bin/env python - -import os, json, boto3, datetime, requests -from typing import Optional, Set -from string import Template -import argparse -from tqdm import tqdm -import tempfile -from concurrent.futures import ThreadPoolExecutor - -PDF_MIME_COMMAND = Template("/usr/bin/file -b --mime $PDF_FILE") -AWS_BUCKET_NAME = os.getenv("AWS_BUCKET_NAME", "") -AWS_BUCKET_ENVIRONMENT = os.getenv("AWS_BUCKET_ENVIRONMENT", "") -AWS_S3_CLIENT = boto3.client("s3") - -def main(): - """ - Main Loop - """ - parser = argparse.ArgumentParser(description='Process some CR3s for metadata') - parser.add_argument('-t', '--threads', type=int, default=25, help='Number of threads') - parser.add_argument('-v', '--verbose', action='store_true', help='Verbose output') - parser.add_argument('-s', '--batch-size', type=int, default=os.getenv('PDF_MAX_RECORDS', 100), help='Batch size') - parser.add_argument('-a', '--all', action='store_true', help='Process all records') - - args = parser.parse_args() - - if args.threads <= 0: - raise argparse.ArgumentTypeError("Number of threads must be a positive integer") - - if args.batch_size < 0: - raise argparse.ArgumentTypeError("Batch size must be a non-negative integer") - - PDF_MAX_RECORDS = 0 if args.all else args.batch_size - - todo_count = get_todo_count() if args.all else args.batch_size - print(f"\nItems to process: {todo_count}\n") - - with ThreadPoolExecutor(max_workers=args.threads) as executor: - futures = [] - for crash_id in get_records(limit=PDF_MAX_RECORDS): - futures.append(executor.submit(process_record, crash_id=crash_id, args=args)) - - if not args.verbose: - for future in tqdm(futures, total=todo_count): - future.result() - else: - for future in futures: - future.result() - -def is_crash_id(crash_id: int) -> bool: - """ - Returns True if it is a valid integer - :param int crash_id: The id to be tested - :return bool: - """ - return str(crash_id).isdigit() - - -def is_valid_metadata(metadata: dict) -> bool: - if ( - metadata.get("last_update", None) is not None - and metadata.get("file_size", None) is not None - and metadata.get("mime_type", None) is not None - and metadata.get("encoding", None) is not None - ): - return True - return False - - -def file_exists(crash_id: int) -> bool: - """ - Returns True if the file exists, False otherwise - :param int crash_id: - :return bool: - """ - try: - if is_crash_id(crash_id): - return os.path.isfile(f"./{crash_id}.pdf") - else: - return False - except: - return False - - -def download_file(crash_id: int) -> bool: - """ - Downloads a CR3 PDF file into disk - :param int crash_id: The crash id of the record to be downloaded - :return bool: True if it succeeds, false otherwise. - """ - try: - if is_crash_id(crash_id): - AWS_S3_CLIENT.download_file( - AWS_BUCKET_NAME, - f"{AWS_BUCKET_ENVIRONMENT}/cris-cr3-files/{crash_id}.pdf", - f"{crash_id}.pdf", - ) - return file_exists(crash_id) - else: - return False - except Exception as e: - print(f"An error occurred: {e}") - return False - - -def delete_file(crash_id: int) -> bool: - """ - Deletes a CR3 PDF file from disk - :param int crash_id: The crash id of the file to be deleted - :return bool: - """ - if is_crash_id(crash_id) and file_exists(crash_id): - os.remove(f"./{crash_id}.pdf") - return file_exists(crash_id) is False - else: - return False - - -def get_mime_attributes(crash_id: int) -> dict: - """ - Runs a shell command and returns a dictionary with mime attributes - :return dict: - """ - # Make sure the id is an integer and that the file exists... - if not is_crash_id(crash_id) or not file_exists(crash_id): - return {} - - # Execute command to get mime attributes as accurately as possible: - try: - command = PDF_MIME_COMMAND.substitute(PDF_FILE=f"./{crash_id}.pdf") - mime_attr_str = os.popen(command).read() - mime_attr = mime_attr_str.replace(" charset=", "").strip().split(";", 2) - - return {"mime_type": mime_attr[0], "encoding": mime_attr[1]} - except IndexError: - return {} - - -def get_file_size(crash_id: int) -> int: - """ - Gets the file size for crash_id - :param int crash_id: The crash id of the file to be tested - :return int: - """ - if not is_crash_id(crash_id) or not file_exists(crash_id): - return 0 - - try: - return os.path.getsize(f"./{crash_id}.pdf") - except FileNotFoundError: - return 0 - - -def get_timestamp() -> str: - """ - Returns a string containing the date and time the file was tested - :return str: - """ - return datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") - - -def get_file_metadata(crash_id: int) -> dict: - """ - Returns a dictionary containing the metadata for a file. It assumes the file already exists in disk. - :param int crash_id: - :return dict: - """ - - if not is_crash_id(crash_id) or not file_exists(crash_id): - return {} - - timestamp = get_timestamp() - file_size = get_file_size(crash_id) - mime_attr = get_mime_attributes(crash_id) - - return { - "last_update": timestamp, - "file_size": file_size, - "mime_type": mime_attr.get("mime_type", None), - "encoding": mime_attr.get("encoding", None), - } - - -def process_record(crash_id: int, args) -> bool: - """ - Controls the process for a single file - """ - if not is_crash_id(crash_id): - print(f"Invalid crash_id: {crash_id}") - return False - - if args.verbose: - print(f"Processing crash_id: {crash_id}") - - # 1. Download file to disk - if not download_file(crash_id): - print(f"Could not find CR3 file for crash_id: {crash_id}") - return False - - if not file_exists(crash_id): - print(f"The PDF file for crash_id: {crash_id} does not exist. Skipping.") - return False - - # 2. Generate file metadata - metadata = get_file_metadata(crash_id) - if not is_valid_metadata(metadata): - print(f"Invalid metadata for file for crash_id: {crash_id}") - return False - - if args.verbose: - print("Metadata: " + json.dumps(metadata)) - - # 3. Execute GraphQL with new metadata - update_metadata(crash_id, metadata, args) - - # 4. Delete the file from disk - delete_file(crash_id) - return True - - -def get_file_metadata_cloud(crash_id: int) -> Optional[dict]: - """ - Attempts to retrieve the metadata from the database, which can be NULL. - :param int crash_id: The crash_id to retrieve it from - :return dict: - """ - if not is_crash_id(crash_id): - # If the crash id is not valid, return None - return None - - # Executes GraphQL to fetch any crashes without CR3 PDF metadata, with a limit as indicated - query_get_record = """ - query getUnverifiedCr3($crash_id:Int!) { - atd_txdot_crashes(where: {crash_id: {_eq:$crash_id}}) { - cr3_file_metadata - } - } - """ - response = requests.post( - url=os.getenv("HASURA_ENDPOINT"), - headers={ - "Accept": "*/*", - "content-type": "application/json", - "x-hasura-admin-secret": os.getenv("HASURA_ADMIN_KEY"), - }, - json={"query": query_get_record, "variables": {"crash_id": int(crash_id)}}, - ) - response.encoding = "utf-8" - try: - return response.json()["data"]["atd_txdot_crashes"][0]["cr3_file_metadata"] - except (IndexError, TypeError, KeyError): - return None - -def get_todo_count() -> int: - """ - Returns the count of all CR3 crashes without CR3 PDF metadata - :return int: - """ - query_get_unverified_cr3_count = """ - query getUnverifiedCr3Count { - atd_txdot_crashes_aggregate(where: {cr3_file_metadata: {_is_null: true}, cr3_stored_flag: {_eq: "Y"}}) { - aggregate { - count - } - } - } - """ - - response = requests.post( - url=os.getenv("HASURA_ENDPOINT"), - headers={ - "Accept": "*/*", - "content-type": "application/json", - "x-hasura-admin-secret": os.getenv("HASURA_ADMIN_KEY"), - }, - json={"query": query_get_unverified_cr3_count}, - ) - - try: - response.encoding = "utf-8" - count = response.json() - - except Exception as e: - print("Error: " + str(e)) - count = {"data": {"atd_txdot_crashes_aggregate": {"aggregate": {"count": 0}}}} - - return count['data']['atd_txdot_crashes_aggregate']['aggregate']['count'] - -def get_records(limit: int = 0) -> Set[int]: - """ - Returns a list of all CR3 crashes without CR3 PDF metadata - :return Set[int]: - """ - if not str(limit).isdigit(): - return set() - - # Executes GraphQL to fetch any crashes without CR3 PDF metadata, with a limit as indicated - if limit > 0: - query_get_records = """ - query getUnverifiedCr3($limit:Int!) { - atd_txdot_crashes(where: {cr3_file_metadata: {_is_null: true}, cr3_stored_flag: {_eq: "Y"}}, limit: $limit, order_by: {crash_id: desc}) { - crash_id - } - } - """ - variables = {"limit": int(limit)} - else: - query_get_records = """ - query getUnverifiedCr3 { - atd_txdot_crashes(where: {cr3_file_metadata: {_is_null: true}, cr3_stored_flag: {_eq: "Y"}}, order_by: {crash_id: desc}) { - crash_id - } - } - """ - variables = {} - - response = requests.post( - url=os.getenv("HASURA_ENDPOINT"), - headers={ - "Accept": "*/*", - "content-type": "application/json", - "x-hasura-admin-secret": os.getenv("HASURA_ADMIN_KEY"), - }, - json={"query": query_get_records, "variables": variables}, - ) - - try: - response.encoding = "utf-8" - records = response.json() - - except Exception as e: - print("Error: " + str(e)) - records = {"data": {"atd_txdot_crashes": []}} - - return {record['crash_id'] for record in records['data']['atd_txdot_crashes']} - -def update_metadata(crash_id: int, metadata: dict, args) -> bool: - """ - Returns True if it manages to update the metadata for an object. - :param int crash_id: The crash id to be updated - :param dict metadata: The metadata to be set - :return bool: - """ - if ( - not is_crash_id(crash_id) - or not isinstance(metadata, dict) - or not is_valid_metadata(metadata) - ): - return False - - if args.verbose: - print(f"Updating crash_id: {crash_id}, with metadata: {json.dumps(metadata)}") - - mutation_update_crash_cr3_metadata = """ - mutation updateCrashCr3Metadata($crash_id:Int!, $metadata: jsonb) { - update_atd_txdot_crashes( - where: { - crash_id:{_eq: $crash_id} - }, - _set: { - cr3_file_metadata: $metadata - updated_by: "SYSTEM" - } - ){ - affected_rows - } - } - """ - response = requests.post( - url=os.getenv("HASURA_ENDPOINT"), - headers={ - "Accept": "*/*", - "content-type": "application/json", - "x-hasura-admin-secret": os.getenv("HASURA_ADMIN_KEY"), - }, - json={ - "query": mutation_update_crash_cr3_metadata, - "variables": {"crash_id": int(crash_id), "metadata": metadata}, - }, - ) - response.encoding = "utf-8" - try: - return response.json()["data"]["update_atd_txdot_crashes"]["affected_rows"] > 0 - except (KeyError, TypeError): - return False - - -if __name__ == "__main__": - main() diff --git a/atd-etl/populate_cr3_file_metadata/requirements.txt b/atd-etl/populate_cr3_file_metadata/requirements.txt deleted file mode 100644 index 2634628b7..000000000 --- a/atd-etl/populate_cr3_file_metadata/requirements.txt +++ /dev/null @@ -1,3 +0,0 @@ -boto3==1.33.* -requests==2.31.* -tqdm==4.* diff --git a/atd-etl/socrata_export/.dockerignore b/atd-etl/socrata_export/.dockerignore index 263cc15ec..5ab46398c 100644 --- a/atd-etl/socrata_export/.dockerignore +++ b/atd-etl/socrata_export/.dockerignore @@ -1,2 +1,3 @@ env *.env +**.pyc diff --git a/atd-etl/socrata_export/Dockerfile b/atd-etl/socrata_export/Dockerfile index 0c42063d0..39f4afd6b 100644 --- a/atd-etl/socrata_export/Dockerfile +++ b/atd-etl/socrata_export/Dockerfile @@ -1,10 +1,8 @@ -FROM python:3.10-slim - -RUN apt-get update -RUN apt-get upgrade -y +FROM python:3.11-slim WORKDIR /app - COPY . /app -RUN cd /app && pip install -r requirements.txt +RUN apt-get -y update +RUN chmod -R 755 /app/* +RUN pip install -r requirements.txt diff --git a/atd-etl/socrata_export/README.md b/atd-etl/socrata_export/README.md index 17418e0fb..e42bc680a 100644 --- a/atd-etl/socrata_export/README.md +++ b/atd-etl/socrata_export/README.md @@ -1,20 +1,43 @@ -## Vision Zero Socrata Export +# Open Data Portal (Socrata) Export -### Invocation +This ETL downloads crash and people records from the VZ database and publishes them to the Open Data Portal, formerly known as Socrata. -After creating an .env file using the variables listed in the env_template file, you can run this script with: -``` -$ docker compose run -it socrata_export python socrata_export.py +Records are pushed to two datasets, a crash-level dataset and a person-level dataset: + +| name | dataset staging | dataset prod | +| ------- | --------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- | +| crashes | [`3aut-fhzp`](https://datahub.austintexas.gov/Transportation-and-Mobility/Test-Crash-Report-Data/3aut-fhzp/about_data) | [`y2wy-tgr5`](https://datahub.austintexas.gov/Transportation-and-Mobility/Austin-Crash-Report-Data-Crash-Level-Records/y2wy-tgr5/about_data) | +| people | [`v3x4-fjgm`](https://datahub.austintexas.gov/Transportation-and-Mobility/Test-Austin-Crash-Demographic-Statistics-incomplet/v3x4-fjgm) | [`xecs-rpy9`](https://data.austintexas.gov/Transportation-and-Mobility/Austin-Crash-Report-Data-Crash-Victim-Demographic-/xecs-rpy9/about_data) | + +## Quick start + +1. Save a copy of the `env_template` file as `.env`, and fill in the details. + +2. Build and run the docker image. This will drop you into the docker image's shell: + +```shell +$ docker compose run socrata_export ``` -If you are developing, you may find that you need to run and build: +3. Run the export import script. This will download and publish crashes records, then people records. + +```shell +# from the socrata_export container's shell +$ ./socrata_export.py --crashes --people ``` -$ docker compose run --build -it socrata_export python socrata_export.py + +## CLI + +The CLI args `--crashes` and `--people` control which dataset(s) will be processed. At least one must be specified. + +```shell +$ ./socrata_export.py --people ``` -In production, they will be run from a DAG which handles starting the containers with -the needed environment and other parameters. +## Column metadata helper -### Continuous integration +The script `_compare_column_metadata.py` can be used to compare the column definitions between two Open Data Portal datasets. It can be useful when you need to replicate changes between the staging and production datasets: -This ETL image is published as `atd-etl/socrata_export` to DockerHub automatically via Github Action. It is tagged with `:production` when changes to this directory are merged to the `production` branch, otherwise the updated image is published with the `development` tag. +```shell +$ _compare_column_metadata.py +``` diff --git a/atd-etl/socrata_export/_compare_column_metadata.py b/atd-etl/socrata_export/_compare_column_metadata.py new file mode 100755 index 000000000..0be83fa41 --- /dev/null +++ b/atd-etl/socrata_export/_compare_column_metadata.py @@ -0,0 +1,80 @@ +#!/usr/bin/env python +"""helper to compare socrata dataset metadata between staging and prod""" +from utils.queries import QUERIES +from utils.socrata import get_socrata_client + +datasets = [ + {"name": "crashes", "staging": "3aut-fhzp", "prod": "y2wy-tgr5"}, + {"name": "people", "staging": "v3x4-fjgm", "prod": "xecs-rpy9"}, +] + + +def compare_column_lists(source_columns, target_columns, target_dataset_name="prod"): + """Compare lists of Socrata column metadata and print the changes that need to be + made to the **target** columns to make the dataset match the **source** columns + + Args: + source_columns (list): list of columns from the source dataset, usually the staging + dataset + target_columns (list): lst of columns from the dataset that is desired to be modified + to look match teh source dataset, usually prod + target_dataset_name (str, optional): the name of the dataset you are targeting, + this is only used in the `print` statements. Defaults to 'prod'. + + Returns: + list: of plain text "todos" that can be printed as instructions that describe + what edits need to be made to the target dataset. + """ + todos = [] + + for col in source_columns: + key = col["fieldName"] + matching_col = None + try: + matching_col = next( + col_to_match + for col_to_match in target_columns + if col_to_match["fieldName"] == key + ) + except StopIteration: + todo = f"- create column `{key}` type `{col['dataTypeName']}` in the {target_dataset_name} dataset" + todos.append(todo) + continue + # see if the column type is the same + a_col_type = col["dataTypeName"] + b_col_type = matching_col["dataTypeName"] + if a_col_type != b_col_type: + todo = f"- change `{key}` from type `{b_col_type}` to `{a_col_type}` in the {target_dataset_name} dataset" + todos.append(todo) + + ## identify any columns in the target that don't exist in the source + for col in target_columns: + key = col["fieldName"] + matching_col = None + try: + matching_col = next( + col_to_match + for col_to_match in source_columns + if col_to_match["fieldName"] == key + ) + except StopIteration: + todo = f"- delete column `{key}` from the {target_dataset_name} dataset" + todos.append(todo) + continue + + return todos + + +def main(): + socrata_client = get_socrata_client() + for dataset in datasets: + print(f"\n**** {dataset['name']} dataset changes ****\n") + cols_staging = socrata_client.get_metadata(dataset["staging"])["columns"] + cols_prod = socrata_client.get_metadata(dataset["prod"])["columns"] + todos = compare_column_lists(cols_staging, cols_prod) + todos.sort() + print("\n".join(todos)) + + +if __name__ == "__main__": + main() diff --git a/atd-etl/socrata_export/docker-compose.yaml b/atd-etl/socrata_export/docker-compose.yaml index b1fa65cff..3ab087c8a 100644 --- a/atd-etl/socrata_export/docker-compose.yaml +++ b/atd-etl/socrata_export/docker-compose.yaml @@ -1,9 +1,9 @@ -version: '3' - services: socrata_export: build: . volumes: - .:/app env_file: - - ./.env + - .env + network_mode: host + entrypoint: /bin/bash diff --git a/atd-etl/socrata_export/env_template b/atd-etl/socrata_export/env_template index 4a8b92ddd..2aa3dd0b2 100644 --- a/atd-etl/socrata_export/env_template +++ b/atd-etl/socrata_export/env_template @@ -1,7 +1,8 @@ -SOCRATA_APP_TOKEN= +HASURA_GRAPHQL_ENDPOINT="http://localhost:8084/v1/graphql" +HASURA_GRAPHQL_ADMIN_SECRET=hasurapassword SOCRATA_KEY_ID= SOCRATA_KEY_SECRET= -SOCRATA_DATASET_CRASHES= -SOCRATA_DATASET_PERSONS= -HASURA_ADMIN_KEY= -HASURA_ENDPOINT= +SOCRATA_APP_TOKEN= +# staging datasets +SOCRATA_DATASET_CRASHES=3aut-fhzp +SOCRATA_DATASET_PEOPLE=v3x4-fjgm diff --git a/atd-etl/socrata_export/process/config.py b/atd-etl/socrata_export/process/config.py deleted file mode 100644 index f76ed659e..000000000 --- a/atd-etl/socrata_export/process/config.py +++ /dev/null @@ -1,24 +0,0 @@ -""" -ETL Configuration File -Author: Austin Transportation Department, Data and Technology Services - -Description: This file contains an dictionary that contains environment -variables for all scripts, including CRIS, Hasura, Socrata, ETC. These -environment variables are fed through Docker. Please refer to the project -readme for further details on how to import environment variables. -""" - -import os - -# AWS Bucket -ATD_ETL_CONFIG = { - # HASURA - "HASURA_ENDPOINT": os.getenv("HASURA_ENDPOINT", ""), - "HASURA_ADMIN_KEY": os.getenv("HASURA_ADMIN_KEY", ""), - # SOCRATA - "SOCRATA_KEY_ID": os.getenv("SOCRATA_KEY_ID", ""), - "SOCRATA_KEY_SECRET": os.getenv("SOCRATA_KEY_SECRET", ""), - "SOCRATA_APP_TOKEN": os.getenv("SOCRATA_APP_TOKEN", ""), - "SOCRATA_DATASET_CRASHES": os.getenv("SOCRATA_DATASET_CRASHES", ""), - "SOCRATA_DATASET_PERSONS": os.getenv("SOCRATA_DATASET_PERSONS", ""), -} diff --git a/atd-etl/socrata_export/process/helpers_socrata.py b/atd-etl/socrata_export/process/helpers_socrata.py deleted file mode 100644 index 486ed5099..000000000 --- a/atd-etl/socrata_export/process/helpers_socrata.py +++ /dev/null @@ -1,344 +0,0 @@ -""" -Helpers for Socrata Export -Author: Austin Transportation Department, Data & Technology Services - -Description: This script contains methods that help in the download -of records from Hasura and upserting into an existing Socrata data table. - -The application requires the requests and sodapy libraries: - https://pypi.org/project/requests/ - https://pypi.org/project/sodapy/ -""" -import sys -import requests -import json -from copy import deepcopy -from process.config import ATD_ETL_CONFIG -from datetime import date, timedelta, datetime - -# Dict to translate modes to correlate with atd__mode_category_lkp table -mode_categories = { - "motor_vehicle": [1, 2, 4], - "motorcycle": [3], - "bicycle": [5], - "pedestrian": [7], - "micromobility": [10, 11], - "other": [6, 8, 9], -} - - -def replace_chars(target_str, char_list, replacement_str): - """ - Replaces characters in a given string with a given string - :param target_str: string - String needing character replacement - :param char_list: list - List of characters to be replaced - :param replacement_str: string - String to replace given characters - """ - for char in char_list: - target_str = target_str.replace(char, replacement_str) - return target_str - - -def run_hasura_query(query): - """ - Queries Hasura and returns the response - :param query: string - The GraphQL query to post - """ - # Build Header with Admin Secret - headers = {"x-hasura-admin-secret": ATD_ETL_CONFIG["HASURA_ADMIN_KEY"]} - - # Try making insertion - try: - return requests.post( - ATD_ETL_CONFIG["HASURA_ENDPOINT"], json={"query": query}, headers=headers - ).json() - except Exception as e: - print("Exception, could not insert: " + str(e)) - print("Query: '%s'" % query) - return None - - -def flatten_hasura_response(records): - """ - Flattens data response from Hasura - :param records: list - List of record dicts - """ - formatted_records = [] - for record in records: - # Create copy of record to mutate - formatted_record = deepcopy(record) - # Look through key values for nested data structures - for first_level_key, first_level_value in record.items(): - # If list is found, iterate to bring key values to top-level - if type(first_level_value) == list: - for item in first_level_value: - for second_level_key, second_level_value in item.items(): - # Handle nested values - if type(second_level_value) == dict: - # Handles concat of values here - for ( - third_level_key, - third_level_value, - ) in second_level_value.items(): - if third_level_key in formatted_record.keys(): - # If key already exists at top-level, concat with existing values - next_record = f" & {third_level_value}" - formatted_record[third_level_key] = ( - formatted_record[third_level_key] + next_record - ) - else: - # Create key at top-level - formatted_record[third_level_key] = ( - third_level_value - ) - # Copy non-nested key-values to top-level (if value is not null) - # Null records can create unwanted columns at top level of record - elif second_level_value is not None: - formatted_record[second_level_key] = second_level_value - # Remove key with values that were moved to top-level - del formatted_record[first_level_key] - # If dict is found, iterate to bring key values to top-level - elif type(first_level_value) == dict: - for dict_key, dict_value in first_level_value.items(): - formatted_record[dict_key] = dict_value - del formatted_record[first_level_key] - formatted_records.append(formatted_record) - return formatted_records - - -def set_mode_columns(records): - """ - Stringify atd_mode_category_metadata and concat mode descriptions - :param records: list - List of record dicts - """ - formatted_records = [] - for record in records: - # Create copy of record to mutate - formatted_record = deepcopy(record) - metadata_column = "atd_mode_category_metadata" - if metadata_column in record.keys() and record[metadata_column] != None: - # Concat mode_desc strings for all units - units_involved = [] - for unit in record[metadata_column]: - units_involved.append(unit.get("mode_desc")) - formatted_record["units_involved"] = " & ".join(units_involved) - - # Stringify metadata - formatted_record[metadata_column] = json.dumps(record[metadata_column]) - formatted_records.append(formatted_record) - return formatted_records - - -def create_mode_flags(records): - """ - Creates mode flag columns in data along with "Y" or "N" value - :param records: list - List of record dicts - """ - for record in records: - crash_metadata = record.get("atd_mode_category_metadata") - # Gather mode IDs in record - mode_ids = [] - if crash_metadata != None: - for unit in crash_metadata: - mode_ids.append(unit.get("mode_id")) - - # Check for id matches in flags dict and set flags to Y for matches - for id in mode_ids: - for flag_key, flag_value in mode_categories.items(): - if id in flag_value: - record[flag_key + "_fl"] = "Y" - return records - - -def concatTimeAndDate(records): - """ - Concat crash date and time to make date/time queryable - :param records: list - List of record dicts - """ - for record in records: - concatDateAndTime = record.get("crash_date") + "T" + record.get("crash_time") - record["crash_date"] = concatDateAndTime - return records - - -def calc_mode_injury_totals(records): - """ - Totals number of fatalities and serious injuries per mode type - :param records: list - List of record dicts - """ - fatality_field = "death_cnt" - serious_injury_field = "sus_serious_injry_cnt" - - for record in records: - # Initialize counts - total_dict = {} - for mode in mode_categories.keys(): - total_dict[mode + "_death_count"] = 0 - total_dict[mode + "_serious_injury_count"] = 0 - - crash_metadata = record.get("atd_mode_category_metadata") - # Count number of injuries per mode of units in metadata - if crash_metadata != None: - for unit in crash_metadata: - unit_mode_id = unit.get("mode_id") - for [mode, id_list] in mode_categories.items(): - if unit_mode_id in id_list: - total_dict[mode + "_death_count"] += unit[fatality_field] - total_dict[mode + "_serious_injury_count"] += unit[ - serious_injury_field - ] - record = record.update(total_dict) - return records - - -def create_point_datatype(records): - """ - Creates point datatype to enable fetching GeoJSON from Socrata - :param records: list - List of record dicts - """ - for record in records: - latitude = record["latitude"] - longitude = record["longitude"] - # Socrata rejects point upserts with no lat/lon - if latitude != None and longitude != None: - record["point"] = f"POINT ({longitude} {latitude})" - return records - - -def rename_record_columns(records, columns_to_rename): - """ - Renames columns for better desc and to match Socrata column names - :param records: list - List of record dicts - :param columns_to_rename: dict - Dict of Hasura columns and matching Socrata columns - """ - for record in records: - for column, rename_value in columns_to_rename.items(): - if column in record.keys(): - record[rename_value] = record.pop(column) - return records - - -def add_value_prefix(records, prefix_dict): - """ - Prefixes a record value - :param records: list - List of record dicts - :param prefix_dict: dict - Dict of columns and prefixes to add to values - """ - for record in records: - for prefix_key, prefix_value in prefix_dict.items(): - if prefix_key in record.keys(): - record[prefix_key] = prefix_value + str(record[prefix_key]) - return records - - -def set_person_mode(records): - """ - Sets mode of person from crash record metadata and person mode flag - Person (unit_nbr) => Units (unit_nbr & unit_id) => Crash metadata (unit_id) - :param records: list - List of record dicts - """ - for record in records: - # Gather person, unit, and crash data - person_unit_number = record.get("unit_nbr") - crash = record.get("crash") - units = crash.get("units", []) - - # Find unit_id - unit_id = "" - for unit in units: - if unit.get("unit_nbr") == person_unit_number: - unit_id = unit.get("unit_id") - - # Find unit in metadata and set mode_desc column and set mode id - mode_id = "" - crash_metadata = crash.get("atd_mode_category_metadata", []) - if crash_metadata != None: - for unit in crash_metadata: - if unit.get("unit_id") == unit_id: - record["mode_desc"] = unit.get("mode_desc") - mode_id = unit.get("mode_id") - record["mode_id"] = mode_id - del record["crash"]["units"] - del record["crash"]["atd_mode_category_metadata"] - del record["unit_nbr"] - - return records - - -def format_crash_data(data, formatter_config): - """ - Prepares crash data for Socrata upsertion - :param data: dict - Dict containing list of Hasura records - :param formatter_config: dict - Dict containing config for data formatting - """ - records = data["data"][formatter_config["tables"][0]] - - # Format records - formatted_records = create_mode_flags(records) - formatted_records = calc_mode_injury_totals(formatted_records) - formatted_records = concatTimeAndDate(formatted_records) - formatted_records = set_mode_columns(formatted_records) - formatted_records = flatten_hasura_response(formatted_records) - formatted_records = rename_record_columns( - formatted_records, formatter_config["columns_to_rename"] - ) - formatted_records = create_point_datatype(formatted_records) - - return formatted_records - - -def format_person_data(data, formatter_config): - """ - Prepares person data for Socrata upsertion - :param data: dict - Dict containing list of Hasura records - :param formatter_config: dict - Dict containing config for data formatting - """ - person_records = data["data"][formatter_config["tables"][0]] - primary_person_records = data["data"][formatter_config["tables"][1]] - - # Make record IDs unique by adding prefixes and set mode of person - person_records = add_value_prefix(person_records, formatter_config["prefixes"]) - person_records = set_person_mode(person_records) - primary_person_records = add_value_prefix( - primary_person_records, formatter_config["prefixes"] - ) - primary_person_records = set_person_mode(primary_person_records) - - # Join records and format - people_records = person_records + primary_person_records - formatted_records = rename_record_columns( - people_records, formatter_config["columns_to_rename"] - ) - formatted_records = flatten_hasura_response(formatted_records) - formatted_records = concatTimeAndDate(formatted_records) - - return formatted_records - - -def two_weeks_ago(): - """ - Returns a string with the date two weeks ago in iso format: yyyy-mm-dd - :return str: - """ - d = date.today() - if is_no_time_constraint(): - return d.strftime("%Y-%m-%d") - else: - return (d - timedelta(days=14)).strftime("%Y-%m-%d") - - -def ten_years_ago(): - """ - Returns a string with the date on January 1st, ten years ago in format: yyyy-mm-dd. - :return str: - """ - year = datetime.now().year - return f"{year - 10}-01-01" - - -def is_no_time_constraint(): - """ - Returns True if the no-time-constraint flag is present - :return bool: - """ - return "--no-time-constraint" in sys.argv diff --git a/atd-etl/socrata_export/process/socrata_queries.py b/atd-etl/socrata_export/process/socrata_queries.py deleted file mode 100644 index a56502734..000000000 --- a/atd-etl/socrata_export/process/socrata_queries.py +++ /dev/null @@ -1,140 +0,0 @@ -""" -Socrata Queries -Author: Austin Transportation Department, Data & Technology Services - -Description: The purpose of this script is to define graphql query templates -to run against the Hasura endpoint for Socrata upsertion. - -Important: These templates require importing the Template class from the string library. -""" -from string import Template - -# Queries Hasura to retrieve records for -# https://data.austintexas.gov/d/y2wy-tgr5 -crashes_query_template = Template( - """ - query getCrashesSocrata { - atd_txdot_crashes ( - limit: $limit, - offset: $offset, - order_by: {crash_id: asc}, - where: { - crash_date: { _lt: "$date_limit", _gte: "$initial_date_limit" }, - private_dr_fl: { _eq: "N" }, - in_austin_full_purpose: { _eq: true}, - _and: [ - { crash_date: { _is_null: false }}, - { crash_time: { _is_null: false }} - ] - } - ) { - apd_confirmed_fatality - apd_confirmed_death_count - crash_id - crash_fatal_fl - crash_date - crash_time - case_id - onsys_fl - private_dr_fl - rpt_latitude - rpt_longitude - rpt_block_num - rpt_street_pfx - rpt_street_name - rpt_street_sfx - crash_speed_limit - road_constr_zone_fl - latitude_primary - longitude_primary - street_name - street_nbr - street_name_2 - street_nbr_2 - crash_sev_id - sus_serious_injry_cnt - nonincap_injry_cnt - poss_injry_cnt - non_injry_cnt - unkn_injry_cnt - tot_injry_cnt - atd_fatality_count - atd_mode_category_metadata - units { - contrib_factr_p1_id - contrib_factr_p2_id - } - } - } -""" -) - -# Queries Hasura to retrieve records for -# https://data.austintexas.gov/d/xecs-rpy9 -people_query_template = Template( - """ - query getPeopleSocrata { - atd_txdot_person( - limit: $limit, - offset: $offset, - order_by: {person_id: asc}, - where: { - crash: { private_dr_fl: { _eq: "N" }}, - _or: [ - {prsn_injry_sev_id: {_eq: 1}}, - {prsn_injry_sev_id: {_eq: 4}} - ], - _and: { - crash: {crash_date: {_lt: "$date_limit", _gte: "$initial_date_limit" }, in_austin_full_purpose: { _eq: true}} - } - } - ) { - person_id - prsn_injry_sev_id - prsn_age - prsn_gndr_id - prsn_ethnicity_id - unit_nbr - crash { - crash_date - crash_time - crash_id - atd_mode_category_metadata - units { - unit_nbr - unit_id - } - } - } - atd_txdot_primaryperson( - limit: $limit, - offset: $offset, - order_by: {primaryperson_id: asc}, - where: { - crash: { private_dr_fl: { _eq: "N" }}, - _or: [{prsn_injry_sev_id: {_eq: 1}}, {prsn_injry_sev_id: {_eq: 4}}], - _and: { - crash: {crash_date: {_lt: "$date_limit", _gte: "$initial_date_limit"}, in_austin_full_purpose: { _eq: true}} - } - } - ) { - primaryperson_id - prsn_injry_sev_id - prsn_age - prsn_gndr_id - prsn_ethnicity_id - unit_nbr - crash { - crash_date - crash_time - crash_id - atd_mode_category_metadata - units { - unit_nbr - unit_id - } - } - } - } -""" -) diff --git a/atd-etl/socrata_export/requirements.txt b/atd-etl/socrata_export/requirements.txt index 971f1269d..5f746407c 100644 --- a/atd-etl/socrata_export/requirements.txt +++ b/atd-etl/socrata_export/requirements.txt @@ -1 +1,2 @@ +requests==2.* sodapy==2.* diff --git a/atd-etl/socrata_export/socrata_export.py b/atd-etl/socrata_export/socrata_export.py index 9cbd4acb6..ddff8b69a 100755 --- a/atd-etl/socrata_export/socrata_export.py +++ b/atd-etl/socrata_export/socrata_export.py @@ -1,121 +1,110 @@ #!/usr/bin/env python -""" -Socrata - Exporter -Author: Austin Transportation Department, Data & Technology Services +import os -Description: The purpose of this script is to gather data from Hasura -and export it to the Socrata database. +from utils.cli import get_cli_args +from utils.graphql import make_hasura_request +from utils.logging import init_logger +from utils.queries import QUERIES +from utils.socrata import get_socrata_client -The application requires the requests and sodapy libraries: - https://pypi.org/project/requests/ - https://pypi.org/project/sodapy/ -""" -import os -import time -from string import Template -from sodapy import Socrata -from process.config import ATD_ETL_CONFIG -from process.helpers_socrata import * -from process.socrata_queries import * - -print("Socrata - Exporter: Started.") - -# Setup connection to Socrata -client = Socrata( - "datahub.austintexas.gov", - ATD_ETL_CONFIG["SOCRATA_APP_TOKEN"], - username=ATD_ETL_CONFIG["SOCRATA_KEY_ID"], - password=ATD_ETL_CONFIG["SOCRATA_KEY_SECRET"], - timeout=20, -) - -# Define tables to query from Hasura and publish to Socrata -query_configs = [ +SOCRATA_DATASET_CRASHES = os.getenv("SOCRATA_DATASET_CRASHES") +SOCRATA_DATASET_PEOPLE = os.getenv("SOCRATA_DATASET_PEOPLE") + +# number of records to download from Hasura and upload to Socrata +RECORD_BATCH_SIZE = 1000 +# number of times to try a single socrata upload +MAX_UPLOAD_RETRIES = 1 + +datasets = [ { - "table": "crash", - "template": crashes_query_template, - "formatter": format_crash_data, - "formatter_config": { - "tables": ["atd_txdot_crashes"], - "columns_to_rename": { - "veh_body_styl_desc": "unit_desc", - "veh_unit_desc_desc": "unit_mode", - "latitude_primary": "latitude", - "longitude_primary": "longitude", - "atd_fatality_count": "death_cnt", - }, - }, - "dataset_uid": ATD_ETL_CONFIG["SOCRATA_DATASET_CRASHES"], + "name": "crashes", + "typename": "socrata_export_crashes_view", + "dataset_id": SOCRATA_DATASET_CRASHES, + "query": QUERIES["crashes"], }, { - "table": "person", - "template": people_query_template, - "formatter": format_person_data, - "formatter_config": { - "tables": ["atd_txdot_person", "atd_txdot_primaryperson"], - "columns_to_rename": {"primaryperson_id": "person_id"}, - "prefixes": { - "person_id": "P", - "primaryperson_id": "PP", - }, - }, - "dataset_uid": ATD_ETL_CONFIG["SOCRATA_DATASET_PERSONS"], + "name": "people", + "typename": "socrata_export_people_view", + "dataset_id": SOCRATA_DATASET_PEOPLE, + "query": QUERIES["people"], }, ] -# Start timer -start = time.time() - -# For each config, get records from Hasura and upsert to Socrata until res is [] -for config in query_configs: - print(f'Starting {config["table"]} table...') - is_truncate_complete = False - records = None - offset = 0 - limit = 1000 - total_records = 0 - - # Query records from Hasura and upsert to Socrata - while records != []: - # Create query, increment offset, and query DB - query = config["template"].substitute( - limit=limit, - offset=offset, - date_limit=two_weeks_ago(), - initial_date_limit=ten_years_ago(), + +def main(args_dict): + socrata_client = get_socrata_client() + + for dataset in datasets: + dataset_name = dataset["name"] + if not args_dict.get(dataset_name): + continue + + logger.info(f"Processing {dataset_name}") + + min_record_id_to_process = 0 + records_processed = 0 + + while True: + """ + Main loop for upserting records. we fetch and upload records based on the last + minimum record ID that was processed. we contune until no records are returned + from our Hasura query + """ + logger.info(f"Fetching up to {RECORD_BATCH_SIZE} records") + variables = {"limit": RECORD_BATCH_SIZE, "minId": min_record_id_to_process} + records = make_hasura_request(query=dataset["query"], variables=variables)[ + dataset["typename"] + ] + + is_first_batch_of_records = min_record_id_to_process == 0 + + if is_first_batch_of_records and not records: + raise Exception( + "No records returned from Hasura. This should never happen" + ) + elif is_first_batch_of_records and records: + """ + we truncate the existing dataset by replacing it with an empty array + we only need to do this during the first bathc of records and all + subsequent batches will be upserted/appeneded to the dataset + """ + logger.info(f"Truncating dataset {dataset['dataset_id']}") + socrata_client.replace(dataset["dataset_id"], []) + elif not records: + # we're done :) + break + + logger.info( + f"Upserting {len(records)} records IDs: {records[0]['id']} - {records[-1]['id']}" + ) + + upload_error_count = 0 + while True: + # try to upload to socrata until max retries is exceeded - then raise an error + try: + socrata_client.upsert(dataset["dataset_id"], records) + except Exception as e: + upload_error_count += 1 + if upload_error_count < MAX_UPLOAD_RETRIES: + logger.error(f"Error uploading to Socrata: {e}. Retrying...") + continue + else: + logger.error(f"Max Socrata upload retries exceeded") + raise e + # success - break loop + break + records_processed += len(records) + min_record_id_to_process = records[-1]["id"] + 1 + logger.info(f"{records_processed} {dataset_name} records processed") + return + + +if __name__ == "__main__": + args = get_cli_args() + logger = init_logger() + if not args.crashes and not args.people: + raise ValueError( + "No dataset(s) specify. At least one of '--crashes' or '--people' is required" ) - offset += limit - data = run_hasura_query(query) - - if "data" not in data: - print("query: ", query) - print("data: ", data) - raise RuntimeError("There was a problem gathering data.") - - # Format records - records = config["formatter"](data, config["formatter_config"]) - - # truncate the existing data set once we have records - if records and not is_truncate_complete: - print(f'Truncating {config["table"]} table...') - client.replace(config["dataset_uid"], []) - is_truncate_complete = True - - # Upsert records to Socrata - client.upsert(config["dataset_uid"], records) - total_records += len(records) - - if len(records) == 0: - print(f'{total_records} {config["table"]} records upserted.') - print(f'Completed {config["table"]} table.') - elif total_records != 0: - print(f"{total_records} records upserted") - -# Terminate Socrata connection -client.close() - -# Stop timer and print duration -end = time.time() -hours, rem = divmod(end - start, 3600) -minutes, seconds = divmod(rem, 60) -print("Finished in: {:0>2}:{:0>2}:{:05.2f}".format(int(hours), int(minutes), seconds)) + args_dict = vars(args) + main(args_dict) diff --git a/atd-etl/socrata_export/utils/cli.py b/atd-etl/socrata_export/utils/cli.py new file mode 100644 index 000000000..f83122f51 --- /dev/null +++ b/atd-etl/socrata_export/utils/cli.py @@ -0,0 +1,24 @@ +import argparse + + +def get_cli_args(): + """Create the CLI and parse args + + Returns: + argparse.Namespace: The CLI namespace + """ + parser = argparse.ArgumentParser( + description="Export crash and people records to the Socrata Open Data Portal", + usage="socrata_export.py --crashes --people", + ) + parser.add_argument( + "--people", + action="store_true", + help="Export the people dataset", + ) + parser.add_argument( + "--crashes", + action="store_true", + help="Export the crashes", + ) + return parser.parse_args() diff --git a/atd-etl/socrata_export/utils/graphql.py b/atd-etl/socrata_export/utils/graphql.py new file mode 100644 index 000000000..254944004 --- /dev/null +++ b/atd-etl/socrata_export/utils/graphql.py @@ -0,0 +1,38 @@ +import os + +import requests + +ENDPOINT = os.getenv("HASURA_GRAPHQL_ENDPOINT") +ADMIN_SECRET = os.getenv("HASURA_GRAPHQL_ADMIN_SECRET") + +class HasuraAPIError(Exception): + """Indicates an error when interacting with the Hasura graphQL API""" + + pass + + +def make_hasura_request(*, query, variables=None): + """Make a POST request to the graphql API. + + Requires HASURA_GRAPHQL_ENDPOINT env var. + + Args: + query (str): the graphql query + variables (dict, optional): the query variables. Defaults to None. + Raises: + HasuraAPIError: If the API the response JSON not contain a top-level `data` property + Returns: + dict: The `data` property of the JSON response + """ + if not ENDPOINT: + raise OSError("HASURA_GRAPHQL_ENDPOINT env var is missing/None") + payload = {"query": query, "variables": variables} + res = requests.post( + ENDPOINT, json=payload, headers={"x-hasura-admin-secret": ADMIN_SECRET} + ) + res.raise_for_status() + data = res.json() + try: + return data["data"] + except (KeyError, TypeError) as err: + raise HasuraAPIError(data) from err diff --git a/atd-etl/socrata_export/utils/logging.py b/atd-etl/socrata_export/utils/logging.py new file mode 100644 index 000000000..4830bff77 --- /dev/null +++ b/atd-etl/socrata_export/utils/logging.py @@ -0,0 +1,21 @@ +import logging +import sys + +LOGGER_NAME = "socrata_export" + + +def get_logger(): + """Returns the logger instance that was iniatilized via init_logger""" + return logging.getLogger(LOGGER_NAME) + + +def init_logger(debug=False): + """Initialize and return a logger that streams to STDOUT. Call this once in the main script""" + level = logging.DEBUG if debug else logging.INFO + logger = logging.getLogger(LOGGER_NAME) + handler = logging.StreamHandler(stream=sys.stdout) + formatter = logging.Formatter(fmt="%(levelname)s: %(message)s") + handler.setFormatter(formatter) + logger.addHandler(handler) + logger.setLevel(level) + return logger diff --git a/atd-etl/socrata_export/utils/queries.py b/atd-etl/socrata_export/utils/queries.py new file mode 100644 index 000000000..00004fed6 --- /dev/null +++ b/atd-etl/socrata_export/utils/queries.py @@ -0,0 +1,77 @@ +CRASHES_QUERY = """ +query SocrataExportCrashes($limit: Int!, $minId: Int!) { + socrata_export_crashes_view(limit: $limit, where: {id: {_gte: $minId}}) { + id + address_primary + address_secondary + bicycle_death_count + bicycle_serious_injury_count + case_id + crash_timestamp + crash_timestamp_ct + crash_fatal_fl + cris_crash_id + crash_sev_id + crash_speed_limit + death_cnt + is_deleted + is_temp_record + latitude + longitude + point + law_enf_fatality_count + micromobility_death_count + micromobility_serious_injury_count + motor_vehicle_death_count + motor_vehicle_serious_injury_count + motorcycle_death_count + motorcycle_serious_injury_count + non_injry_cnt + nonincap_injry_cnt + onsys_fl + other_death_count + other_serious_injury_count + pedestrian_death_count + pedestrian_serious_injury_count + poss_injry_cnt + private_dr_fl + road_constr_zone_fl + rpt_block_num + rpt_street_name + rpt_street_sfx + sus_serious_injry_cnt + tot_injry_cnt + units_involved + unkn_injry_cnt + } +} +""" + +PEOPLE_QUERY = """ +query SocrataExportPeople($limit: Int!, $minId: Int!) { + socrata_export_people_view(order_by: {id: asc}, limit: $limit, where: {id: {_gte: $minId}}) { + id + cris_crash_id + crash_pk + crash_timestamp + crash_timestamp_ct + is_primary_person + is_deleted + is_temp_record + mode_desc + mode_id + prsn_age + prsn_ethnicity_id + prsn_ethnicity_label + prsn_injry_sev_id + prsn_sex_label + prsn_sex_id + unit_id + } +} +""" + +QUERIES = { + "people": PEOPLE_QUERY, + "crashes": CRASHES_QUERY, +} diff --git a/atd-etl/socrata_export/utils/socrata.py b/atd-etl/socrata_export/utils/socrata.py new file mode 100644 index 000000000..5f523227e --- /dev/null +++ b/atd-etl/socrata_export/utils/socrata.py @@ -0,0 +1,17 @@ +import os + +from sodapy import Socrata + +SOCRATA_APP_TOKEN = os.getenv("SOCRATA_APP_TOKEN") +SOCRATA_KEY_ID = os.getenv("SOCRATA_KEY_ID") +SOCRATA_KEY_SECRET = os.getenv("SOCRATA_KEY_SECRET") + + +def get_socrata_client(): + return Socrata( + "datahub.austintexas.gov", + SOCRATA_APP_TOKEN, + username=SOCRATA_KEY_ID, + password=SOCRATA_KEY_SECRET, + timeout=30, + ) diff --git a/atd-toolbox/bulk_user_management/README.md b/atd-toolbox/bulk_user_management/README.md new file mode 100644 index 000000000..3e4b366ac --- /dev/null +++ b/atd-toolbox/bulk_user_management/README.md @@ -0,0 +1,27 @@ +# Bulk user management + +Use this tool to block/unblock VZ's user in bulk via the Auth0 user management API. + +## Set up + +1. Create a python environment with `requests` installed +2. Export the variables in `env_template` into your python environment. +3. You can optionally set the `ADMIN_USER_EMAIL` env variable as the email address of a user to be *ignored* by the script. + +## Run the script + +This script will block or unblock *all* users of the app. By default it executes as a "dry run", in which no users are actually updated, their email addresses are merely printed. You must use the `--no-dry-run` flag to actually execute the script. + +The block versus unblock action is controlled with the first position command argument. Use `block` or `unblock`. + +For example, the following command *will block all VZE users*: + +```shell +python update_users.py block --no-dry-run +``` + +Conversely, this command will unblock all users: + +```shell +python update_users.py unblock --no-dry-run +``` diff --git a/atd-toolbox/bulk_user_management/env_template b/atd-toolbox/bulk_user_management/env_template new file mode 100644 index 000000000..c8202ebff --- /dev/null +++ b/atd-toolbox/bulk_user_management/env_template @@ -0,0 +1,4 @@ +AUTH0_DOMAIN= +CLIENT_ID= +CLIENT_SECRET= +ADMIN_USER_EMAIL= diff --git a/atd-toolbox/bulk_user_management/requirements.txt b/atd-toolbox/bulk_user_management/requirements.txt new file mode 100644 index 000000000..f2293605c --- /dev/null +++ b/atd-toolbox/bulk_user_management/requirements.txt @@ -0,0 +1 @@ +requests diff --git a/atd-toolbox/bulk_user_management/update_users.py b/atd-toolbox/bulk_user_management/update_users.py new file mode 100644 index 000000000..1a95fcddb --- /dev/null +++ b/atd-toolbox/bulk_user_management/update_users.py @@ -0,0 +1,119 @@ +import argparse +import os +import time + +import requests + + +AUTH0_DOMAIN = os.getenv("AUTH0_DOMAIN") +CLIENT_ID = os.getenv("CLIENT_ID") +CLIENT_SECRET = os.getenv("CLIENT_SECRET") +ADMIN_USER_EMAIL = os.getenv("ADMIN_USER_EMAIL") + + +def get_cli_args(): + parser = argparse.ArgumentParser( + description="Bulk update Auth0 users", + usage="update_users.py block --no-dry-run", + ) + parser.add_argument( + "--no-dry-run", + action="store_true", + help="Actually update users", + ) + parser.add_argument( + "mode", + choices=["block", "unblock"], + help='The action to take: "block" or "unblock"', + ) + return parser.parse_args() + + +def get_management_api_token(): + url = f"https://{AUTH0_DOMAIN}/oauth/token" + headers = {"Content-Type": "application/json"} + payload = { + "grant_type": "client_credentials", + "client_id": CLIENT_ID, + "client_secret": CLIENT_SECRET, + "audience": f"https://{AUTH0_DOMAIN}/api/v2/", + } + + response = requests.post(url, json=payload, headers=headers) + response.raise_for_status() + + data = response.json() + return data["access_token"] + + +def get_all_user_ids(token): + users = [] + url = f"https://{AUTH0_DOMAIN}/api/v2/users" + headers = {"Authorization": f"Bearer {token}"} + + params = {"per_page": 50, "page": 0} # Adjust as needed + + while True: + print(f"Getting 50 users...") + response = requests.get(url, headers=headers, params=params) + response.raise_for_status() + page_of_users = response.json() + + if not page_of_users: + break + + users.extend(page_of_users) + params["page"] += 1 + + return users + + +def update_user_status(blocked, dry_run): + token = get_management_api_token() + users = get_all_user_ids(token) + url = f"https://{AUTH0_DOMAIN}/api/v2/users" + headers = {"Authorization": f"Bearer {token}", "Content-Type": "application/json"} + + for user in users: + if user["email"] == ADMIN_USER_EMAIL: + continue + + if blocked and user.get("blocked"): + print(f"WARNING: user already blocked: {user['email']}") + continue + + elif not blocked and not user.get("blocked"): + print(f"WARNING: user already unblocked: {user['email']}") + continue + + user_id = user["user_id"] + if not dry_run: + response = requests.patch( + f"{url}/{user_id}", json={"blocked": blocked}, headers=headers + ) + try: + response.raise_for_status() + except requests.exceptions.HTTPError: + # the token has probably expired + if response.status_code == 401: + print("Hit 401 error. Fetching new token and trying...") + token = get_management_api_token() + # redo the last attempt + headers = { + "Authorization": f"Bearer {token}", + "Content-Type": "application/json", + } + response = requests.patch( + f"{url}/{user_id}", json={"blocked": blocked}, headers=headers + ) + response.raise_for_status() + + print(f'{user["email"]}: {"blocked" if blocked else "unblocked"}') + time.sleep(1) + + +if __name__ == "__main__": + args = get_cli_args() + blocked = args.mode == "block" + dry_run = args.no_dry_run == False + update_user_status(blocked, dry_run) diff --git a/atd-toolbox/data_model/python/05_pre_table_triggers.py b/atd-toolbox/data_model/python/05_pre_table_triggers.py new file mode 100755 index 000000000..1e3361d79 --- /dev/null +++ b/atd-toolbox/data_model/python/05_pre_table_triggers.py @@ -0,0 +1,18 @@ +#!/usr/bin/env python +from utils import save_file, make_migration_dir, save_empty_down_migration, delete_all_migrations + + +def load_sql_template(name): + with open(name, "r") as fin: + return fin.read() + + +def main(): + delete_all_migrations() + indexes_sql = load_sql_template("sql_templates/build_address_trigger.sql") + migration_path = make_migration_dir("address_trigger") + save_file(f"{migration_path}/up.sql", indexes_sql) + save_empty_down_migration(migration_path) + + +main() diff --git a/atd-toolbox/data_model/python/10_make_core_tables.py b/atd-toolbox/data_model/python/10_make_core_tables.py new file mode 100755 index 000000000..d358bd9a6 --- /dev/null +++ b/atd-toolbox/data_model/python/10_make_core_tables.py @@ -0,0 +1,172 @@ +#!/usr/bin/env python +from pprint import pprint as print + +from settings import SCHEMA_NAME + +from utils import ( + make_migration_dir, + save_file, + save_empty_down_migration, + load_column_metadata, +) + + +def load_sql_template(name): + with open(name, "r") as fin: + return fin.read() + + +def get_lookup_table_names(columns): + """Extract lookup table names from column data""" + lookup_table_names = [ + f"{col['foreign_table_schema']}.{col['foreign_table_name']}" + for col in columns + if col["foreign_table_name"] + and not col["foreign_table_name"].endswith("_cris") + and not col["foreign_table_name"].endswith("_edits") + and not col["foreign_table_name"] == "crashes" + and not col["foreign_table_name"] == "units" + and not col["foreign_table_name"] == "people" + and not col["is_existing_foreign_table"] + ] + return sorted(list(set(lookup_table_names))) + + +def make_lookup_table_sql(table_names): + create_table_stmts = [] + for table_name in table_names: + sql = f"create table {table_name} (\n id integer primary key,\n label text not null,\n source text not null default 'cris'\n);" + create_table_stmts.append(sql) + return "\n\n".join(create_table_stmts) + + +def make_column_sql(columns, full_table_name): + sql_parts = [] + for col in columns: + column_name = col["column_name"] + data_type = col["data_type"] + constraint = col["data_type_constraint"] + fk_table_name = col["foreign_table_name"] + fk_cascade = col["foreign_column_cascade"] + fk_column_name = col["foreign_column_name"] + fk_schema_name = col["foreign_table_schema"] or "public" + if constraint == "primary key" and not full_table_name.endswith("_cris"): + # hacky logic to manage id sequences and pks on the _edits and unified tables + if data_type == "serial": + data_type = "integer" + if full_table_name.endswith("_edits"): + fk_table_name = full_table_name.replace("_edits", "_cris") + elif full_table_name == "crashes": + fk_table_name = "crashes_cris" + # column name is always the same as the column name + fk_column_name = column_name + fk_cascade = "on update cascade on delete cascade" + elif column_name == "crash_pk": + if full_table_name == "units_edits": + # make nullable + constraint = "" + # reference units_cris + fk_table_name = "crashes_cris" + elif full_table_name == "units": + fk_table_name = "crashes" + elif column_name == "cris_crash_id": + if full_table_name == "units": + fk_table_name = "crashes" + elif column_name == "unit_id": + if full_table_name == "people_edits": + # make nullable + constraint = "" + # reference units_cris + fk_table_name = "units_cris" + elif full_table_name == "people": + fk_table_name = "units" + fk_cascade = "on update cascade on delete cascade" + elif column_name == "people_id": + if full_table_name == "charges_edits": + # reference units_cris + # make nullable + constraint = "" + fk_table_name = "charges_cris" + elif full_table_name == "charges": + fk_table_name = "people" + fk_cascade = "on update cascade on delete cascade" + elif constraint and "not null default false" in constraint and "_edits" in full_table_name: + constraint = "" + elif constraint == "not null" and column_name in ['unit_nbr', 'crash_timestamp'] and "_edits" in full_table_name: + constraint = "" + sql = f"{column_name} {data_type} {constraint}".strip() + if fk_table_name: + sql = f"{sql} references {fk_schema_name}.{fk_table_name} ({fk_column_name}) {fk_cascade}" + sql_parts.append(sql) + return ",\n ".join(sql_parts) + + +def main(): + all_columns = load_column_metadata() + # init the schema + migration_path = make_migration_dir("create_schema") + save_file( + f"{migration_path}/up.sql", + f"create schema if not exists lookups;", + ) + save_file( + f"{migration_path}/down.sql", + f"drop schema if exists lookups cascade;", + ) + # lookup tables + lookup_table_names = get_lookup_table_names(all_columns) + lookup_tables_sql = make_lookup_table_sql(lookup_table_names) + migration_path = make_migration_dir("lookups") + save_file(f"{migration_path}/up.sql", lookup_tables_sql) + # we don't write down migrations for each lookup table—we drop the whole lookups schema + save_empty_down_migration(migration_path) + for table_name in ["crashes", "units", "people", "charges"]: + tables_sql_stmts = [] + table_sql_down_stmts = [] + for table_suffix in ["_cris", "_edits", ""]: + if table_name == "charges" and table_suffix != "_cris": + # charges is a cris-only table + continue + column_table_key = f"is{table_suffix or '_unified'}_column" + full_table_name = f"{table_name}{table_suffix}" + this_table_columns = [ + col + for col in all_columns + if col[column_table_key] and col["record_type"] == table_name + ] + # sort primary key first, then by column name + this_table_columns = sorted( + this_table_columns, + key=lambda col: ( + "a" if col["is_primary_key"] else "b", + col["column_name"], + ), + ) + unique_cols = set() + # dedupe columns, which is only needed for primary/person tables + this_table_columns = [ + c + for c in this_table_columns + if not ( + c["column_name"] in unique_cols or unique_cols.add(c["column_name"]) + ) + ] + column_sql_str = make_column_sql(this_table_columns, full_table_name) + table_sql_str = f"create table {SCHEMA_NAME}.{full_table_name} (\n {column_sql_str}\n);" + tables_sql_stmts.append(table_sql_str) + table_sql_down_stmts.append( + f"drop table {SCHEMA_NAME}.{full_table_name} cascade;" + ) + tables_sql_str = "\n\n".join(tables_sql_stmts) + table_sql_down_str = "\n\n".join(table_sql_down_stmts) + migration_path = make_migration_dir(table_name) + save_file(f"{migration_path}/up.sql", tables_sql_str) + save_file(f"{migration_path}/down.sql", table_sql_down_str) + + table_constraints_sql = load_sql_template("./sql_templates/table_constraints.sql") + migration_path = make_migration_dir("table_constraints") + save_file(f"{migration_path}/up.sql", table_constraints_sql) + save_empty_down_migration(migration_path) + + +main() diff --git a/atd-toolbox/data_model/python/20_make_change_log.py b/atd-toolbox/data_model/python/20_make_change_log.py new file mode 100755 index 000000000..4ecbb4d3c --- /dev/null +++ b/atd-toolbox/data_model/python/20_make_change_log.py @@ -0,0 +1,48 @@ +#!/usr/bin/env python +# import csv +import io +from pprint import pprint as print + +import requests + +from utils import make_migration_dir, save_file, save_empty_down_migration +from settings import SCHEMA_NAME + + +def load_sql_template(name): + with open(name, "r") as fin: + return fin.read() + + +def main(): + sql_template = load_sql_template("./sql_templates/change_log_table.sql") + sql_strs_up = [] + sql_strs_down = [] + for table_name in ["crashes", "units", "people"]: + sql_strs_up.append( + f"""--- +--- {table_name} change log tables +---""" + ) + for table_suffix in ["_cris", "_edits", ""]: + if table_name == "charges" and table_suffix != "cris": + # charges is a cris-only table + continue + id_col_name = "id" + table_name_full = f"{table_name}{table_suffix}" + sql_up = sql_template.replace("$tableName$", table_name_full).replace( + "$idColName$", id_col_name + ) + sql_strs_up.append(sql_up) + sql_down = f"drop table {SCHEMA_NAME}.change_log_{table_name_full} cascade;" + sql_strs_down.append(sql_down) + + # load the triggers + sql_template = load_sql_template("./sql_templates/change_log_triggers.sql") + sql_strs_up.append(sql_template) + migration_path = make_migration_dir("change_log") + save_file(f"{migration_path}/up.sql", "\n\n".join(sql_strs_up)) + save_file(f"{migration_path}/down.sql", "\n\n".join(sql_strs_down)) + + +main() diff --git a/atd-toolbox/data_model/python/30_make_triggers.py b/atd-toolbox/data_model/python/30_make_triggers.py new file mode 100755 index 000000000..21d9e0504 --- /dev/null +++ b/atd-toolbox/data_model/python/30_make_triggers.py @@ -0,0 +1,124 @@ +#!/usr/bin/env python +from utils import ( + save_file, + make_migration_dir, + save_empty_down_migration, + load_column_metadata, +) + + +def load_sql_template(name): + with open(name, "r") as fin: + return fin.read() + + +def patch_template(template, table_name, pk_column_name, columns_unified): + affected_columns_with_new_prefix = [f"new.{col}" for col in columns_unified] + + return ( + template.replace("$tableName$", table_name) + .replace("$pkColumnName$", pk_column_name) + .replace("$affectedColumns$", ",\n ".join(columns_unified)) + .replace( + "$affectedColumnsWithNewPrefix$", + ",\n ".join(affected_columns_with_new_prefix), + ) + ) + + +def main(): + all_columns = load_column_metadata() + + # create audit field columns and triggers + audit_field_sql = load_sql_template("sql_templates/audit_fields.sql") + migration_path = make_migration_dir("audit_fields") + save_file(f"{migration_path}/up.sql", audit_field_sql) + save_empty_down_migration(migration_path) + + # triggers that fire on CRIS insert + insert_template = load_sql_template( + "sql_templates/cris_insert_trigger_template.sql" + ) + + stmts = [] + for table_name in ["crashes", "units", "people"]: + columns_unified = [ + col["column_name"] + for col in all_columns + if col["is_cris_column"] + and col["is_unified_column"] + and col["record_type"] == table_name + and col["column_name"] not in ["created_at", "updated_at"] + ] + # remove dupes, which was once a concern for persons tables + columns_unified = list(set(columns_unified)) + # sort columns to keep diffs consistent + columns_unified.sort() + pk_column = "id" + sql = patch_template(insert_template, table_name, pk_column, columns_unified) + stmts.append(sql) + + migration_path = make_migration_dir("cris_insert_triggers") + save_file(f"{migration_path}/up.sql", "\n\n".join(stmts)) + save_empty_down_migration(migration_path) + + # triggers that fire on CRIS update + update_template = load_sql_template( + "sql_templates/cris_update_trigger_template.sql" + ) + + stmts = [] + for table_name in ["crashes", "units", "people"]: + pk_column = "id" + sql = patch_template(update_template, table_name, pk_column, []) + stmts.append(sql) + + migration_path = make_migration_dir("cris_update_triggers") + save_file(f"{migration_path}/up.sql", "\n\n".join(stmts)) + save_empty_down_migration(migration_path) + + # triggers that fire on _edits update + update_template = load_sql_template( + "sql_templates/edits_update_trigger_template.sql" + ) + + stmts = [] + for table_name in ["crashes", "units", "people"]: + pk_column = "id" + sql = patch_template(update_template, table_name, pk_column, []) + stmts.append(sql) + + migration_path = make_migration_dir("edits_update_triggers") + save_file(f"{migration_path}/up.sql", "\n\n".join(stmts)) + save_empty_down_migration(migration_path) + + # trigger that assigns crash ID to unit records + units_set_crash_id_sql = load_sql_template("sql_templates/unit_set_crash_id.sql") + migration_path = make_migration_dir("units_set_crash_id") + save_file(f"{migration_path}/up.sql", units_set_crash_id_sql) + save_empty_down_migration(migration_path) + + # trigger that assigns unit ID to person records + people_set_unit_id_sql = load_sql_template("sql_templates/people_set_unit_id.sql") + migration_path = make_migration_dir("people_set_unit_id") + save_file(f"{migration_path}/up.sql", people_set_unit_id_sql) + save_empty_down_migration(migration_path) + + # trigger that assigns person ID to charges records + people_set_unit_id_sql = load_sql_template( + "sql_templates/charges_set_person_id.sql" + ) + migration_path = make_migration_dir("charges_set_person_id") + save_file(f"{migration_path}/up.sql", people_set_unit_id_sql) + save_empty_down_migration(migration_path) + + # trigger that assigns location ID to unified crashes + location_trigger_sql = load_sql_template( + "sql_templates/crash_reference_layer_triggers.sql" + ) + migration_path = make_migration_dir("crash_reference_layer_triggers") + save_file(f"{migration_path}/up.sql", location_trigger_sql) + save_empty_down_migration(migration_path) + + +main() diff --git a/atd-toolbox/data_model/python/40_make_lookup_seeds.py b/atd-toolbox/data_model/python/40_make_lookup_seeds.py new file mode 100755 index 000000000..71f1bfdca --- /dev/null +++ b/atd-toolbox/data_model/python/40_make_lookup_seeds.py @@ -0,0 +1,70 @@ +#!/usr/bin/env python +from pprint import pprint as print + +from utils import ( + make_migration_dir, + save_file, + save_empty_down_migration, + load_lookups_metadata, +) + + +def escape_single_quotes(input_string): + return input_string.replace("'", "''") + + +veh_direction_of_force_values = """insert into lookups.veh_direction_of_force (id, label) + select veh_direction_of_force_id, veh_direction_of_force_desc from atd_txdot__veh_direction_of_force_lkp;""" + +mode_category_values = """insert into lookups.mode_category (id, label, source) + select id, atd_mode_category_mode_name, 'vz' from atd__mode_category_lkp where id != 10;""" + +city_id_patch = """insert into lookups.city (id, label) values (9999, 'UNKNOWN');""" + +injry_sev_custom_values = """alter table lookups.injry_sev add constraint injry_sev_owner_check check ((id < 99 and source = 'cris') or (id >= 99 and source = 'vz')); +insert into lookups.injry_sev (id, label, source) values (99, 'KILLED (NON-ATD)', 'vz'); +alter table public.people_cris add constraint people_cris_prsn_injry_sev_id_check check (prsn_injry_sev_id < 99); +""" + +unit_desc_custom_values = """alter table lookups.unit_desc add constraint unit_desc_owner_check check ((id < 177 and source = 'cris') or (id >= 177 and source = 'vz')); +insert into lookups.unit_desc (id, label, source) values (177, 'MICROMOBILITY DEVICE', 'vz'); +alter table public.units_cris add constraint units_cris_unit_desc_id_check check ((unit_desc_id < 177) or (created_by <> 'cris' and created_by <> 'system')); +""" + +veh_body_styl_custom_values = """alter table lookups.veh_body_styl add constraint veh_body_styl_owner_check check ((id < 177 and source = 'cris') or (id >= 177 and source = 'vz')); +insert into lookups.veh_body_styl (id, label, source) values (177, 'E-SCOOTER', 'vz'); +alter table public.units_cris add constraint units_cris_veh_body_styl_id_check check (veh_body_styl_id < 177); +""" + +movt_custom_values = """insert into lookups.movt (select *, 'vz' as source from atd_txdot__movt_lkp);""" + + +def main(): + print("loading lookup metadata from column json...") + schema_name = "lookups" + data = load_lookups_metadata() + insert_stmts = [] + for row in data: + stmt = f"insert into {schema_name}.{row['table_name'].replace('_lkp', '')} (id, label, source) values ({row['id']}, '{escape_single_quotes(row['label'])}', '{row['source']}');" + insert_stmts.append(stmt) + # copy lookup table because it's not in the extract CSV lookup file + insert_stmts.append(veh_direction_of_force_values) + # copy lookup table because it's custom + insert_stmts.append(mode_category_values) + # adds backward compatibility to city ID 9999 + insert_stmts.append(city_id_patch) + # add custom injry_sev values and constraint + insert_stmts.append(injry_sev_custom_values) + # add custom unit_desc values and constraint + insert_stmts.append(unit_desc_custom_values) + # add custom veh_body_styl values and constraint + insert_stmts.append(veh_body_styl_custom_values) + # add custom movement lookup table values + insert_stmts.append(movt_custom_values) + sql = "\n".join(insert_stmts) + migration_path = make_migration_dir("lookup_table_seeds") + save_file(f"{migration_path}/up.sql", sql) + save_empty_down_migration(migration_path) + + +main() diff --git a/atd-toolbox/data_model/python/45_alter_units_vz_mode_category.py b/atd-toolbox/data_model/python/45_alter_units_vz_mode_category.py new file mode 100755 index 000000000..761df3b4e --- /dev/null +++ b/atd-toolbox/data_model/python/45_alter_units_vz_mode_category.py @@ -0,0 +1,15 @@ +#!/usr/bin/env python +from utils import save_file, make_migration_dir + +def load_sql_template(name): + with open(name, "r") as fin: + return fin.read() + +def main(): + sql_up = load_sql_template("sql_templates/vz_mode_category_generated_up.sql") + sql_down = load_sql_template("sql_templates/vz_mode_category_generated_down.sql") + migration_path = make_migration_dir("alter_units_vz_mode_category") + save_file(f"{migration_path}/up.sql", sql_up) + save_file(f"{migration_path}/down.sql", sql_down) + +main() diff --git a/atd-toolbox/data_model/python/50_add_indexes.py b/atd-toolbox/data_model/python/50_add_indexes.py new file mode 100755 index 000000000..bd5e87583 --- /dev/null +++ b/atd-toolbox/data_model/python/50_add_indexes.py @@ -0,0 +1,17 @@ +#!/usr/bin/env python +from utils import save_file, make_migration_dir, save_empty_down_migration + + +def load_sql_template(name): + with open(name, "r") as fin: + return fin.read() + + +def main(): + indexes_sql = load_sql_template("sql_templates/indexes.sql") + migration_path = make_migration_dir("indexes") + save_file(f"{migration_path}/up.sql", indexes_sql) + save_empty_down_migration(migration_path) + + +main() diff --git a/atd-toolbox/data_model/python/60_make_views.py b/atd-toolbox/data_model/python/60_make_views.py new file mode 100755 index 000000000..4833e62e9 --- /dev/null +++ b/atd-toolbox/data_model/python/60_make_views.py @@ -0,0 +1,39 @@ +#!/usr/bin/env python +from utils import save_file, make_migration_dir +from settings import SCHEMA_NAME + + +def load_sql_template(name): + with open(name, "r") as fin: + return fin.read() + + +def main(): + # crashes list and injury metrics + crashes_list_view_sql = load_sql_template("sql_templates/crashes_list_view.sql") + migration_path = make_migration_dir("crashes_list_and_fatality_metrics_views") + save_file(f"{migration_path}/up.sql", crashes_list_view_sql) + save_file( + f"{migration_path}/down.sql", + "drop view public.person_injury_metrics_view cascade;", + ) + # people list + people_list_view_sql = load_sql_template("sql_templates/people_list_view.sql") + migration_path = make_migration_dir("people_list_view") + save_file(f"{migration_path}/up.sql", people_list_view_sql) + save_file( + f"{migration_path}/down.sql", + "drop view public.people_list_view cascade;", + ) + # crashes unified change log + crashes_change_log_sql = load_sql_template("sql_templates/crashes_change_log_view.sql") + migration_path = make_migration_dir("change_log_view") + save_file(f"{migration_path}/up.sql", crashes_change_log_sql) + save_file(f"{migration_path}/down.sql", "drop view if exists public.crashes_change_log_view cascade;") + # socrata export view(s) + socrata_export_crashes_sql = load_sql_template("sql_templates/socrata_export_views.sql") + migration_path = make_migration_dir("socrata_export_views") + save_file(f"{migration_path}/up.sql", socrata_export_crashes_sql) + save_file(f"{migration_path}/down.sql", "drop view if exists public.socrata_export_crashes_view cascade; drop view if exists public.socrata_export_people_view cascade") + +main() diff --git a/atd-toolbox/data_model/python/70_make_column_metadata_table.py b/atd-toolbox/data_model/python/70_make_column_metadata_table.py new file mode 100755 index 000000000..5cc1ed04b --- /dev/null +++ b/atd-toolbox/data_model/python/70_make_column_metadata_table.py @@ -0,0 +1,36 @@ +#!/usr/bin/env python +from utils import save_file, make_migration_dir, load_column_metadata + + +def load_sql_template(name): + with open(name, "r") as fin: + return fin.read() + + +def main(): + # translate our data model migration column metadata into the db table structure + columns = load_column_metadata() + column_inserts = [] + for col in columns: + is_imported_from_cris = ( + True + if (col["source"] == "cris" or col["source"] == "etl") + and col["is_cris_column"] + else False + ) + col_insert_sql = f"""insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('{col['column_name']}', '{col['record_type']}', {str(is_imported_from_cris).lower()})""" + column_inserts.append(col_insert_sql) + + metadata_table_sql = load_sql_template("sql_templates/column_metadata_table.sql") + col_insert_sql = ";\n".join(column_inserts) + migration_sql = f"{metadata_table_sql}\n\n{col_insert_sql}" + migration_path = make_migration_dir("column_metadata_table") + save_file(f"{migration_path}/up.sql", migration_sql) + save_file( + f"{migration_path}/down.sql", + "drop table if exists public._column_metadata cascade;", + ) + + +main() diff --git a/atd-toolbox/data_model/python/80_update_notes_and_recs.py b/atd-toolbox/data_model/python/80_update_notes_and_recs.py new file mode 100755 index 000000000..7ff6fca19 --- /dev/null +++ b/atd-toolbox/data_model/python/80_update_notes_and_recs.py @@ -0,0 +1,15 @@ +#!/usr/bin/env python +from utils import save_file, make_migration_dir + +def load_sql_template(name): + with open(name, "r") as fin: + return fin.read() + +def main(): + recommendations_and_notes_sql_up = load_sql_template("sql_templates/recommendations_and_notes_up.sql") + recommendations_and_notes_sql_down = load_sql_template("sql_templates/recommendations_and_notes_down.sql") + migration_path = make_migration_dir("update_recommendations_and_notes_fks") + save_file(f"{migration_path}/up.sql", recommendations_and_notes_sql_up) + save_file(f"{migration_path}/down.sql", recommendations_and_notes_sql_down) + +main() diff --git a/atd-toolbox/data_model/python/90_fatalities_view.py b/atd-toolbox/data_model/python/90_fatalities_view.py new file mode 100755 index 000000000..78c073d4a --- /dev/null +++ b/atd-toolbox/data_model/python/90_fatalities_view.py @@ -0,0 +1,17 @@ +#!/usr/bin/env python +from utils import save_file, make_migration_dir, save_empty_down_migration + + +def load_sql_template(name): + with open(name, "r") as fin: + return fin.read() + + +def main(): + fatalities_view_sql = load_sql_template("sql_templates/fatalities_view.sql") + migration_path = make_migration_dir("fatalities_view") + save_file(f"{migration_path}/up.sql", fatalities_view_sql) + save_empty_down_migration(migration_path) + + +main() diff --git a/atd-toolbox/data_model/python/Dockerfile b/atd-toolbox/data_model/python/Dockerfile new file mode 100644 index 000000000..197fbf3ea --- /dev/null +++ b/atd-toolbox/data_model/python/Dockerfile @@ -0,0 +1,9 @@ +FROM python:3.12-slim-bullseye + +RUN mkdir /application +WORKDIR /application + +COPY requirements.txt requirements.txt +RUN pip3 install -r requirements.txt + +CMD [ "/bin/bash"] diff --git a/atd-toolbox/data_model/python/column_metadata.json b/atd-toolbox/data_model/python/column_metadata.json new file mode 100644 index 000000000..71a0c882e --- /dev/null +++ b/atd-toolbox/data_model/python/column_metadata.json @@ -0,0 +1,2708 @@ +[ + { + "column_name": "id", + "data_type": "serial", + "data_type_constraint": "primary key", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": true, + "is_unified_column": true, + "note": "only SERIAL on _cris table else integer and foreign key", + "record_type": "charges", + "source": "db sequence" + }, + { + "column_name": "crash_pk", + "data_type": "integer", + "data_type_constraint": "not null", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "crashes_cris", + "foreign_table_schema": "public", + "is_cris_column": true, + "is_edits_column": false, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": false, + "note": "", + "record_type": "charges", + "source": "db sequence" + }, + { + "column_name": "cris_crash_id", + "data_type": "integer", + "data_type_constraint": "not null", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "cris_crash_id", + "foreign_table_name": "crashes_cris", + "foreign_table_schema": "public", + "is_cris_column": true, + "is_edits_column": false, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": false, + "note": "", + "record_type": "charges", + "source": "cris" + }, + + { + "column_name": "created_at", + "data_type": "timestamptz", + "data_type_constraint": "not null default now()", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "public", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "audit field", + "record_type": "crashes", + "source": "db" + }, + { + "column_name": "updated_at", + "data_type": "timestamptz", + "data_type_constraint": "not null default now()", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "public", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "audit field", + "record_type": "crashes", + "source": "db" + }, + { + "column_name": "created_by", + "data_type": "text", + "data_type_constraint": "not null default 'system'", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "public", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "audit field", + "record_type": "crashes", + "source": "db" + }, + { + "column_name": "updated_by", + "data_type": "text", + "data_type_constraint": "not null default 'system'", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "public", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "audit field", + "record_type": "crashes", + "source": "db" + }, + + { + "column_name": "created_at", + "data_type": "timestamptz", + "data_type_constraint": "not null default now()", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "public", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "audit field", + "record_type": "units", + "source": "db" + }, + { + "column_name": "updated_at", + "data_type": "timestamptz", + "data_type_constraint": "not null default now()", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "public", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "audit field", + "record_type": "units", + "source": "db" + }, + { + "column_name": "created_by", + "data_type": "text", + "data_type_constraint": "not null default 'system'", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "public", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "audit field", + "record_type": "units", + "source": "db" + }, + { + "column_name": "updated_by", + "data_type": "text", + "data_type_constraint": "not null default 'system'", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "public", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "audit field", + "record_type": "units", + "source": "db" + }, + + { + "column_name": "created_at", + "data_type": "timestamptz", + "data_type_constraint": "not null default now()", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "public", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "audit field", + "record_type": "people", + "source": "db" + }, + { + "column_name": "updated_at", + "data_type": "timestamptz", + "data_type_constraint": "not null default now()", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "public", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "audit field", + "record_type": "people", + "source": "db" + }, + { + "column_name": "created_by", + "data_type": "text", + "data_type_constraint": "not null default 'system'", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "public", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "audit field", + "record_type": "people", + "source": "db" + }, + { + "column_name": "updated_by", + "data_type": "text", + "data_type_constraint": "not null default 'system'", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "public", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "audit field", + "record_type": "people", + "source": "db" + }, + { + "column_name": "created_at", + "data_type": "timestamptz", + "data_type_constraint": "not null default now()", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "public", + "is_cris_column": true, + "is_edits_column": false, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": false, + "note": "audit field", + "record_type": "charges", + "source": "db" + }, + { + "column_name": "created_by", + "data_type": "text", + "data_type_constraint": "not null default 'system'", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "public", + "is_cris_column": true, + "is_edits_column": false, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": false, + "note": "audit field", + "record_type": "charges", + "source": "db" + }, + { + "column_name": "is_deleted", + "data_type": "boolean", + "data_type_constraint": "not null default false", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "public", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "new column to enable soft deletes", + "record_type": "crashes", + "source": "vze" + }, + { + "column_name": "is_deleted", + "data_type": "boolean", + "data_type_constraint": "not null default false", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "public", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "new column to enable soft deletes", + "record_type": "units", + "source": "vze" + }, + { + "column_name": "is_deleted", + "data_type": "boolean", + "data_type_constraint": "not null default false", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "public", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "new column to enable soft deletes", + "record_type": "people", + "source": "vze" + }, + { + "column_name": "is_temp_record", + "data_type": "boolean", + "data_type_constraint": "not null default false", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "public", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "indicates if the record is a temporary record", + "record_type": "crashes", + "source": "vze" + }, + { + "column_name": "person_id", + "data_type": "integer", + "data_type_constraint": "not null", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "people_cris", + "foreign_table_schema": "public", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": true, + "is_primary_key": false, + "is_unified_column": true, + "note": "special handling via script", + "record_type": "charges", + "source": "db trigger" + }, + { + "column_name": "prsn_nbr", + "data_type": "integer", + "data_type_constraint": "not null", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "charges", + "source": "cris" + }, + { + "column_name": "cris_schema_version", + "data_type": "text", + "data_type_constraint": "not null", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": false, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": false, + "note": "new column to be populated via ETL", + "record_type": "charges", + "source": "etl" + }, + { + "column_name": "unit_nbr", + "data_type": "numeric", + "data_type_constraint": "not null", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": false, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": false, + "note": "only on _cris table", + "record_type": "charges", + "source": "cris" + }, + { + "column_name": "charge", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "charges", + "source": "cris" + }, + { + "column_name": "citation_nbr", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "charges", + "source": "cris" + }, + { + "column_name": "id", + "data_type": "serial", + "data_type_constraint": "primary key", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": true, + "is_unified_column": true, + "note": "new crash PK column sequence. only _cris table will be sequence", + "record_type": "crashes", + "source": "db generated field" + }, + { + "column_name": "cris_crash_id", + "data_type": "integer", + "data_type_constraint": "unique", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "cris_schema_version", + "data_type": "text", + "data_type_constraint": "not null", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": false, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": false, + "note": "new column to be populated via ETL", + "record_type": "crashes", + "source": "etl" + }, + { + "column_name": "rpt_city_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "city", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "see note about city_id", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "fhe_collsn_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "collsn", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "intrsct_relat_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "intrsct_relat", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "investigat_agency_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "agency", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "light_cond_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "light_cond", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "address_primary", + "data_type": "text", + "data_type_constraint": "generated always as (build_crash_address(rpt_block_num, rpt_street_pfx, rpt_street_name, rpt_street_sfx)) stored", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": false, + "is_edits_column": false, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "generated field identical to address_confirmed_primary in old data model", + "record_type": "crashes", + "source": "db generated field" + }, + { + "column_name": "address_secondary", + "data_type": "text", + "data_type_constraint": "generated always as (build_crash_address(rpt_sec_block_num, rpt_sec_street_pfx, rpt_sec_street_name, rpt_sec_street_sfx)) stored", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": false, + "is_edits_column": false, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "generated field identical to address_confirmed_secondary in old data model", + "record_type": "crashes", + "source": "db generated field" + }, + { + "column_name": "years_of_life_lost", + "data_type": "integer", + "data_type_constraint": "generated always as (case when prsn_injry_sev_id = 4 then greatest(75 - prsn_age, 0) else 0 end) stored", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": false, + "is_edits_column": false, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "change to generated field", + "record_type": "people", + "source": "" + }, + { + "column_name": "est_comp_cost_crash_based", + "data_type": "integer", + "data_type_constraint": "generated always as (case when (prsn_injry_sev_id = 1) then 3000000 when (prsn_injry_sev_id = 2) then 250000 when (prsn_injry_sev_id = 3) then 200000 when (prsn_injry_sev_id = 4) then 3500000 else 20000 end) stored", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": false, + "is_edits_column": false, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "move to people_unified as generated column (no more lookup tbl dependency)", + "record_type": "people", + "source": "db generated" + }, + { + "column_name": "obj_struck_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "obj_struck", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "rpt_cris_cnty_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "cnty", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "rpt_rdwy_sys_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "rwy_sys", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "rpt_road_part_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "road_part", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "rpt_sec_rdwy_sys_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "rwy_sys", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "rpt_sec_road_part_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "road_part", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "surf_cond_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "surf_cond", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "surf_type_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "surf_type", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "traffic_cntl_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "traffic_cntl", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "wthr_cond_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "wthr_cond", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "crash_timestamp", + "data_type": "timestamp with time zone", + "data_type_constraint": "not null", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "created via CRIS import ETL. it is the combined crash_date and crash_time with timezone", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "rpt_sec_street_pfx", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "not a lookup value despite what the extract spec says", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "rpt_sec_street_sfx", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "not a lookup value despite what the extract spec says", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "rpt_street_pfx", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "not a lookup value despite what the extract spec says", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "rpt_street_sfx", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "not a lookup value despite what the extract spec says", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "rpt_ref_mark_nbr", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "rpt_ref_mark_dir", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "not an integer lookup desipte what the spec says", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "rpt_ref_mark_dist_uom", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "the spec said it should exist but its not in the export. this is typical of other columns that supposedly use a lookup table but their type is text. i think these lookups are not included in the lookup file that comes with each extract", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "active_school_zone_fl", + "data_type": "boolean", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "at_intrsct_fl", + "data_type": "boolean", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "engineering_area", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete set null", + "foreign_column_name": "area_id", + "foreign_table_name": "engineering_areas", + "foreign_table_schema": "public", + "is_cris_column": false, + "is_edits_column": false, + "is_existing_foreign_table": true, + "is_primary_key": false, + "is_unified_column": true, + "note": "set via trigger", + "record_type": "crashes", + "source": "db trigger" + }, + { + "column_name": "location_id", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete set null", + "foreign_column_name": "location_id", + "foreign_table_name": "atd_txdot_locations", + "foreign_table_schema": "public", + "is_cris_column": false, + "is_edits_column": false, + "is_existing_foreign_table": true, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "vze/custom" + }, + { + "column_name": "case_id", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "crash_speed_limit", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "law_enforcement_ytd_fatality_num", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": false, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "copy law_enforcement_num into this field", + "record_type": "crashes", + "source": "vze" + }, + { + "column_name": "cr3_processed_at", + "data_type": "timestamp with time zone", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "new column", + "record_type": "crashes", + "source": "etl-other" + }, + { + "column_name": "cr3_stored_fl", + "data_type": "boolean", + "data_type_constraint": "not null default false", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "renamed from cr3_stored-Flag", + "record_type": "crashes", + "source": "etl-other" + }, + { + "column_name": "investigator_narrative", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "latitude", + "data_type": "numeric", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "longitude", + "data_type": "numeric", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "medical_advisory_fl", + "data_type": "boolean", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "onsys_fl", + "data_type": "boolean", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "council_district", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": false, + "is_edits_column": false, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "set via trigger", + "record_type": "crashes", + "source": "db trigger" + }, + { + "column_name": "in_austin_full_purpose", + "data_type": "boolean", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": false, + "is_edits_column": false, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "set via trigger", + "record_type": "crashes", + "source": "db trigger" + }, + { + "column_name": "private_dr_fl", + "data_type": "boolean", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "position", + "data_type": "geometry(Point, 4326)", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": false, + "is_edits_column": false, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "we need this for location triggers, so using a generated field is slightly redundant because it will need to be generated within the trigger function as well.", + "record_type": "crashes", + "source": "db trigger" + }, + { + "column_name": "road_constr_zone_fl", + "data_type": "boolean", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "road_constr_zone_wrkr_fl", + "data_type": "boolean", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "rpt_block_num", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "rpt_hwy_num", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "rpt_hwy_sfx", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "rpt_ref_mark_offset_amt", + "data_type": "numeric", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "rpt_sec_block_num", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "rpt_sec_hwy_num", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "rpt_sec_hwy_sfx", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "rpt_sec_street_desc", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "rpt_sec_street_name", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "rpt_street_desc", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "rpt_street_name", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "rr_relat_fl", + "data_type": "boolean", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "schl_bus_fl", + "data_type": "boolean", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "thousand_damage_fl", + "data_type": "boolean", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "toll_road_fl", + "data_type": "boolean", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "txdot_rptable_fl", + "data_type": "boolean", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "record_locator", + "data_type": "text", + "data_type_constraint": "unique not null generated always as (case when is_temp_record = true then 'T' || id::text else cris_crash_id::text end) stored", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": false, + "is_edits_column": false, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "crashes", + "source": "cris" + }, + { + "column_name": "id", + "data_type": "serial", + "data_type_constraint": "primary key", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": true, + "is_unified_column": true, + "note": "only SERIAL on _cris table else integer and foreign key", + "record_type": "people", + "source": "db sequence" + }, + { + "column_name": "prsn_exp_homelessness", + "data_type": "boolean", + "data_type_constraint": "not null default false", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "cris_schema_version", + "data_type": "text", + "data_type_constraint": "not null", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": false, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": false, + "note": "new column to be populated via ETL", + "record_type": "people", + "source": "etl" + }, + { + "column_name": "unit_id", + "data_type": "integer", + "data_type_constraint": "not null", + "foreign_column_cascade": "", + "foreign_column_name": "id", + "foreign_table_name": "units_cris", + "foreign_table_schema": "public", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "special script handling will set foriegn table name", + "record_type": "people", + "source": "db trigger" + }, + { + "column_name": "cris_crash_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on delete cascade on update cascade", + "foreign_column_name": "cris_crash_id", + "foreign_table_name": "crashes_cris", + "foreign_table_schema": "public", + "is_cris_column": true, + "is_edits_column": false, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": false, + "note": "this will only exist on the people_cris table for ETL import reasons. for normalization reasons it will not be on vz or unified tabless", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "drvr_city_name", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "used for PEH flag", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "drvr_drg_cat_1_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "substnc_cat", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "drvr_zip", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "used for PEH flag", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "is_primary_person", + "data_type": "boolean", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "new column to manage primary vs non-priamry person. set via CRIS import. need to manually set constraint to not null default false on cris table only", + "record_type": "people", + "source": "etl" + }, + { + "column_name": "prsn_age", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "prsn_alc_rslt_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "substnc_tst_result", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "prsn_alc_spec_type_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "specimen_type", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "prsn_bac_test_rslt", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "prsn_death_timestamp", + "data_type": "timestamptz", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "combined prsn_death_date and prsn_death_time", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "prsn_drg_rslt_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "substnc_tst_result", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "prsn_drg_spec_type_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "specimen_type", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "prsn_ethnicity_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "drvr_ethncty", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "prsn_first_name", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "used for ftt", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "prsn_gndr_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "gndr", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "ems_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete set null", + "foreign_column_name": "id", + "foreign_table_name": "ems__incidents", + "foreign_table_schema": "public", + "is_cris_column": false, + "is_edits_column": true, + "is_existing_foreign_table": true, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "people", + "source": "" + }, + { + "column_name": "prsn_helmet_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "helmet", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "prsn_injry_sev_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "injry_sev", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "we have atd_txdot__injry_sev_lkp for peeople and atd_txdot__crash_sev_lkp for crashes. the latter of which has 99 KILLED (NON-ATD) and it's unclear how we deal with this at the person level. it appears we use the crash_sev lookup for persons as well", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "prsn_last_name", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "used for ftt", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "prsn_mid_name", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "used for ftt", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "prsn_name_sfx", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "prsn_nbr", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "prsn_occpnt_pos_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "occpnt_pos", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "prsn_rest_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "rest", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "prsn_taken_by", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "used for crash research with TCME data. only needed for fatalities and possibly serious injuries", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "prsn_taken_to", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "used for crash research with TCME data. only needed for fatalities and possibly serious injuries", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "prsn_type_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "prsn_type", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "unit_nbr", + "data_type": "integer", + "data_type_constraint": "not null", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": false, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": false, + "note": "", + "record_type": "people", + "source": "cris" + }, + { + "column_name": "id", + "data_type": "serial", + "data_type_constraint": "primary key", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": true, + "is_unified_column": true, + "note": "only SERIAL on _cris table else integer and foreign key", + "record_type": "units", + "source": "db sequence" + }, + { + "column_name": "cris_schema_version", + "data_type": "text", + "data_type_constraint": "not null", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": false, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": false, + "note": "new column to be populated via ETL", + "record_type": "units", + "source": "etl" + }, + { + "column_name": "crash_pk", + "data_type": "integer", + "data_type_constraint": "not null", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "crashes_cris", + "foreign_table_schema": "public", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "cris_crash_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "cris_crash_id", + "foreign_table_name": "crashes_cris", + "foreign_table_schema": "public", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "renamed from crash_id", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "vz_mode_category_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "mode_category", + "foreign_table_schema": "lookups", + "is_cris_column": false, + "is_edits_column": false, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "custom lookup table copied from atd__mode_category. the column must be altered to be generated after lookup values have been insterted", + "record_type": "units", + "source": "db generated field" + }, + { + "column_name": "movement_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "movt", + "foreign_table_schema": "lookups", + "is_cris_column": false, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "need to migrate this lookup table. this is a custom field and lookup table. als: https://github.com/cityofaustin/atd-data-tech/issues/3038", + "record_type": "units", + "source": "db trigger" + }, + { + "column_name": "veh_body_styl_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "veh_body_styl", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "DTS to review dupe lookup table", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "unit_desc_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "unit_desc", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "has custom lookup value 177 (micromobility device)", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "veh_trvl_dir_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "trvl_dir", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "the values in travel_direction need to be copied into this column in the edits table", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "contrib_factr_1_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "contrib_factr", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "this is bugged out in the VZE. DTS needs to investigate", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "contrib_factr_2_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "contrib_factr", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "this is bugged out in the VZE. DTS needs to investigate", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "contrib_factr_3_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "contrib_factr", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "this is bugged out in the VZE. DTS needs to investigate", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "veh_damage_direction_of_force1_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "veh_direction_of_force", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "this lookup table is in our db, and the extract spec, but it is not in the CRIS import lookup file", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "autonomous_unit_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "autonomous_unit", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "contrib_factr_p1_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "contrib_factr", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "contrib_factr_p2_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "contrib_factr", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "e_scooter_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "e_scooter", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "first_harm_evt_inv_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "harm_evnt", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "pbcat_pedalcyclist_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "pbcat_pedalcyclist", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "pbcat_pedestrian_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "pbcat_pedestrian", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "pedalcyclist_action_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "pedalcyclist_action", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "pedestrian_action_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "pedestrian_action", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "rpt_autonomous_level_engaged_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "autonomous_level_engaged", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "veh_damage_description1_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "veh_damage_description", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "veh_damage_description2_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "veh_damage_description", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "veh_damage_direction_of_force2_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "veh_direction_of_force", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "veh_damage_severity1_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "veh_damage_severity", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "veh_damage_severity2_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "veh_damage_severity", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "veh_make_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "veh_make", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "veh_mod_id", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "on update cascade on delete cascade", + "foreign_column_name": "id", + "foreign_table_name": "veh_mod", + "foreign_table_schema": "lookups", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "unit_nbr", + "data_type": "integer", + "data_type_constraint": "not null", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "veh_mod_year", + "data_type": "integer", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "units", + "source": "cris" + }, + { + "column_name": "vin", + "data_type": "text", + "data_type_constraint": "", + "foreign_column_cascade": "", + "foreign_column_name": "", + "foreign_table_name": "", + "foreign_table_schema": "", + "is_cris_column": true, + "is_edits_column": true, + "is_existing_foreign_table": false, + "is_primary_key": false, + "is_unified_column": true, + "note": "", + "record_type": "units", + "source": "cris" + } +] diff --git a/atd-toolbox/data_model/python/create_migrations.sh b/atd-toolbox/data_model/python/create_migrations.sh new file mode 100755 index 000000000..a474df9d0 --- /dev/null +++ b/atd-toolbox/data_model/python/create_migrations.sh @@ -0,0 +1,21 @@ +#!/bin/bash +# ------------ +# Helper to run the migration codegen +# +# Before you run this you should apply all down migrations, +# including and down to the 'create_schema' migration +# this script can be run multiple times without issue. +# ------------ +set -e + +./05_pre_table_triggers.py +./10_make_core_tables.py +./20_make_change_log.py +./30_make_triggers.py +./40_make_lookup_seeds.py +./45_alter_units_vz_mode_category.py +./50_add_indexes.py +./60_make_views.py +./70_make_column_metadata_table.py +./80_update_notes_and_recs.py +./90_fatalities_view.py diff --git a/atd-toolbox/data_model/python/debug_record_mismatched/debug.sql b/atd-toolbox/data_model/python/debug_record_mismatched/debug.sql new file mode 100644 index 000000000..75a35c675 --- /dev/null +++ b/atd-toolbox/data_model/python/debug_record_mismatched/debug.sql @@ -0,0 +1,61 @@ + -- all fatal crashes in the old schema that are missing in the new, based purely on the `atd_fatality_count` column +with newdm as ( + select + id, + cris_crash_id, + vz_fatality_count + from + crashes_list_view + where + vz_fatality_count > 0 + and private_dr_fl = FALSE + and in_austin_full_purpose = TRUE +), + +joined_crashes as ( + select + old.crash_id, + newdm.cris_crash_id as new_crash_id + from atd_txdot_crashes as old + left join newdm on old.crash_id = newdm.cris_crash_id + where + old.crash_date >= '2014-01-01' + and old.crash_date < '2024-01-01' + and old.atd_fatality_count > 0 + and old.private_dr_fl = 'N' + and old.in_austin_full_purpose = 'Y' +) + +select * from joined_crashes where new_crash_id is NULL; + + +-- sus serious injuries +with newdm as ( + select + id, + cris_crash_id as crash_id, + crash_injry_sev_id + from + crashes_list_view + where + sus_serious_injry_count > 0 + and private_dr_fl = FALSE + and in_austin_full_purpose = TRUE +), + +joined_crashes as ( + select + old.crash_id, + newdm.crash_id as new_crash_id, + newdm.crash_injry_sev_id as new_crash_injry_sev_id + from atd_txdot_crashes as old + left join newdm on old.crash_id = newdm.crash_id + where + old.crash_date >= '2014-01-01' + and old.crash_date < '2024-01-01' + and old.crash_sev_id = 1 + and old.private_dr_fl = 'N' + and old.in_austin_full_purpose = 'Y' +) + +select * from joined_crashes where new_crash_id is NULL; diff --git a/atd-toolbox/data_model/python/debug_record_mismatched/debug_crash_locations.sql b/atd-toolbox/data_model/python/debug_record_mismatched/debug_crash_locations.sql new file mode 100644 index 000000000..43f3daa0b --- /dev/null +++ b/atd-toolbox/data_model/python/debug_record_mismatched/debug_crash_locations.sql @@ -0,0 +1,25 @@ +-- wiggle all crash locations to refresh location ID +-- this is going to take a while... +UPDATE + atd_txdot_crashes atc +SET + latitude_primary = latitude_primary +.0000000001 +WHERe latitude_primary is not null; + +-- join old and new crashes and select all crashes from that set +-- which do not have a matching location ID +-- we want this to return 0 rows +WITH joined_crashes AS ( + SELECT + id, + atc.crash_id, + crash.location_id AS location_id_new, + atc.location_id AS location_id_old + FROM + atd_txdot_crashes atc + inner JOIN crashes crash ON atc.crash_id = crash.cris_crash_id +WHERE + crash.location_id IS NOT NULL + OR atc.location_id IS NOT NULL +) +select crash_id from joined_crashes where location_id_new != location_id_old; diff --git a/atd-toolbox/data_model/python/debug_record_mismatched/debug_lat_lon_diff.sql b/atd-toolbox/data_model/python/debug_record_mismatched/debug_lat_lon_diff.sql new file mode 100644 index 000000000..2bd75acd9 --- /dev/null +++ b/atd-toolbox/data_model/python/debug_record_mismatched/debug_lat_lon_diff.sql @@ -0,0 +1,41 @@ +-- after populating VZ differences +-- calculate the difference between CRIS lat/lon and edits lat lon +WITH joined AS ( + SELECT + cris.id, + ST_SETSRID(ST_MAKEPOINT( + cris.longitude, + cris.latitude + ), + 4326)::geography AS cris_pt, + ST_SETSRID(ST_MAKEPOINT( + edits.longitude, + edits.latitude + ), + 4326)::geography AS edits_pt + FROM + crashes_cris AS cris + LEFT JOIN crashes_edits AS edits ON cris.id = edits.id + WHERE + cris.latitude IS NOT NULL + AND cris.longitude IS NOT NULL + AND edits.latitude IS NOT NULL + AND edits.longitude IS NOT NULL +), + +dists AS ( + SELECT + id, + ST_DISTANCE( + cris_pt, + edits_pt + ) AS dist + FROM + joined +) + +SELECT * +FROM + dists +WHERE + dist < 10; diff --git a/atd-toolbox/data_model/python/debug_record_mismatched/debug_mode_meta_vs_crash.sql b/atd-toolbox/data_model/python/debug_record_mismatched/debug_mode_meta_vs_crash.sql new file mode 100644 index 000000000..c48efa72d --- /dev/null +++ b/atd-toolbox/data_model/python/debug_record_mismatched/debug_mode_meta_vs_crash.sql @@ -0,0 +1,49 @@ +-- compares crash level injuries to mode cat metadata +with metadata_crashes as ( + select + crash_id as crash_id_json, + SUM((item ->> 'mode_id')::int) as mode_id_json, + STRING_AGG( + item ->> 'mode_desc', + ', ' + ) as mode_desc_json, + SUM((item ->> 'unit_id')::int) as unit_id_json, + SUM((item ->> 'death_cnt')::int) as atd_fatality_count_json, + SUM( + (item ->> 'sus_serious_injry_cnt')::int + ) as sus_serious_injry_cnt_json, + SUM((item ->> 'nonincap_injry_cnt')::int) as nonincap_injry_cnt_json, + SUM((item ->> 'poss_injry_cnt')::int) as poss_injry_cnt_json, + SUM((item ->> 'non_injry_cnt')::int) as non_injry_cnt_json, + SUM((item ->> 'unkn_injry_cnt')::int) as unkn_injry_cnt_json, + SUM((item ->> 'tot_injry_cnt')::int) as tot_injry_cnt_json + from + atd_txdot_crashes, + JSON_ARRAY_ELEMENTS(atd_mode_category_metadata) as item + group by + crash_id +), + +joined_crashes as ( + select + crash_id, + crash_date, + sus_serious_injry_cnt, + atd_fatality_count, + crash_id_json, + sus_serious_injry_cnt_json, + atd_fatality_count_json + from + atd_txdot_crashes + left join metadata_crashes on crash_id_json = crash_id + where + (atd_fatality_count > 0 or sus_serious_injry_cnt_json > 0) + and crash_date >= '2014-01-01' + and in_austin_full_purpose = 'Y' + and private_dr_fl = 'N' +) + +select * +from + joined_crashes + where atd_fatality_count != atd_fatality_count_json or sus_serious_injry_cnt != sus_serious_injry_cnt_json; \ No newline at end of file diff --git a/atd-toolbox/data_model/python/debug_record_mismatched/debug_mode_meta_vs_people.sql b/atd-toolbox/data_model/python/debug_record_mismatched/debug_mode_meta_vs_people.sql new file mode 100644 index 000000000..b33aac27b --- /dev/null +++ b/atd-toolbox/data_model/python/debug_record_mismatched/debug_mode_meta_vs_people.sql @@ -0,0 +1,87 @@ +-- compares person level injuries to mode cat metadata +WITH metadata_crashes AS ( + SELECT + crash_id AS crash_id_json, + SUM((item ->> 'mode_id')::int) AS mode_id_json, + STRING_AGG(item ->> 'mode_desc', + ', ') AS mode_desc_json, + SUM((item ->> 'unit_id')::int) AS unit_id_json, + SUM((item ->> 'death_cnt')::int) AS atd_fatality_count_json, + SUM((item ->> 'sus_serious_injry_cnt')::int) AS sus_serious_injry_cnt_json, + SUM((item ->> 'nonincap_injry_cnt')::int) AS nonincap_injry_cnt_json, + SUM((item ->> 'poss_injry_cnt')::int) AS poss_injry_cnt_json, + SUM((item ->> 'non_injry_cnt')::int) AS non_injry_cnt_json, + SUM((item ->> 'unkn_injry_cnt')::int) AS unkn_injry_cnt_json, + SUM((item ->> 'tot_injry_cnt')::int) AS tot_injry_cnt_json + FROM + atd_txdot_crashes, + JSON_ARRAY_ELEMENTS(atd_mode_category_metadata) AS item + GROUP BY + crash_id +), +-- get all crashes with at least one serious or fatal person injury +unioned_people AS ( + SELECT + primaryperson_id AS record_id, + crash_id, + unit_nbr, + prsn_nbr, + prsn_injry_sev_id, + CASE WHEN prsn_injry_sev_id = 1 THEN + 1 + ELSE + 0 + END AS sus_serious_injry_cnt, + CASE WHEN prsn_injry_sev_id = 4 THEN + 1 + ELSE + 0 + END AS atd_fatality_cnt, + TRUE AS is_primary + FROM + atd_txdot_primaryperson + UNION ALL + SELECT + person_id AS record_id, + crash_id, + unit_nbr, + prsn_nbr, + prsn_injry_sev_id, + CASE WHEN prsn_injry_sev_id = 1 THEN + 1 + ELSE + 0 + END AS sus_serious_injry_cnt, + CASE WHEN prsn_injry_sev_id = 4 THEN + 1 + ELSE + 0 + END AS atd_fatality_cnt, + FALSE AS is_primary + FROM + atd_txdot_person +), +person_injuries AS ( + SELECT + crash_id, + sum(sus_serious_injry_cnt) AS sus_serious_injry_cnt, + sum(atd_fatality_cnt) AS atd_fatality_cnt + FROM + unioned_people +GROUP BY + crash_id +) +SELECT + atc.crash_id, + p.sus_serious_injry_cnt, + meta.sus_serious_injry_cnt_json, + p.atd_fatality_cnt, + meta.atd_fatality_count_json +FROM + atd_txdot_crashes atc + left join person_injuries p on p.crash_id = atc.crash_id + LEFT JOIN metadata_crashes meta ON meta.crash_id_json = p.crash_id + where (p.sus_serious_injry_cnt != sus_serious_injry_cnt_json or p.atd_fatality_cnt != atd_fatality_count_json) + and atc.crash_date >= '2018-01-01' + and atc.in_austin_full_purpose = 'Y' + and atc.private_dr_fl = 'N'; diff --git a/atd-toolbox/data_model/python/debug_record_mismatched/debug_units.sql b/atd-toolbox/data_model/python/debug_record_mismatched/debug_units.sql new file mode 100644 index 000000000..24c65071a --- /dev/null +++ b/atd-toolbox/data_model/python/debug_record_mismatched/debug_units.sql @@ -0,0 +1,27 @@ +-- identifies unit records missing from the new schema, but not necessarily if the unit +-- involves a serious or fatal injury. this is helpful to see how some CRIS data has changed +-- over time but it's not actionable +WITH joined_units AS ( + SELECT + old_u.crash_id, + old_u.unit_nbr, + atc.crash_sev_id, + new_u.id AS new_id + FROM + atd_txdot_units old_u + LEFT JOIN atd_txdot_crashes atc ON old_u.crash_id = atc.crash_id + LEFT JOIN units new_u ON old_u.unit_nbr = new_u.unit_nbr + AND old_u.crash_id = new_u.cris_crash_id +WHERE + atc.crash_date >= '2018-01-01' + AND atc.crash_date < '2024-01-01' + and crash_sev_id in (1,4) + and atc.in_austin_full_purpose = 'Y' + and atc.private_dr_fl = 'N' +) +SELECT + * +FROM + joined_units +WHERE + new_id IS NULL; \ No newline at end of file diff --git a/atd-toolbox/data_model/python/debug_record_mismatched/dedupe_people_v2.sql b/atd-toolbox/data_model/python/debug_record_mismatched/dedupe_people_v2.sql new file mode 100644 index 000000000..d3ded7d5f --- /dev/null +++ b/atd-toolbox/data_model/python/debug_record_mismatched/dedupe_people_v2.sql @@ -0,0 +1,122 @@ + +-- joins people to people to compare dupe values side by side +-- inclusive of serious and fatal crashes in afp not on private drive only +-- the result of this query shows upe person records that need to be address before +-- we can reliably populate the VZ edits +WITH unioned_people AS ( + SELECT + crash_id::text + || '_' + || unit_nbr::text + || '_' + || prsn_nbr::text AS dupe_key, + primaryperson_id AS record_id, + crash_id, + unit_nbr, + prsn_nbr, + prsn_type_id, + prsn_occpnt_pos_id, + prsn_injry_sev_id, + prsn_age, + prsn_last_name, + prsn_first_name, + prsn_mid_name, + prsn_gndr_id, + prsn_ethnicity_id, + peh_fl AS prsn_exp_homelessness, + updated_by, + last_update, + true AS is_primary + FROM + atd_txdot_primaryperson + UNION ALL + SELECT + crash_id::text + || '_' + || unit_nbr::text + || '_' + || prsn_nbr::text AS dupe_key, + person_id AS record_id, + crash_id, + unit_nbr, + prsn_nbr, + prsn_type_id, + prsn_occpnt_pos_id, + prsn_injry_sev_id, + prsn_age, + prsn_last_name, + prsn_first_name, + prsn_mid_name, + prsn_gndr_id, + prsn_ethnicity_id, + peh_fl AS prsn_exp_homelessness, + updated_by, + last_update, + false AS is_primary + FROM + atd_txdot_person +), + +joined_dupes AS ( + SELECT + p1.dupe_key, + p1.crash_id, + p1.unit_nbr, + p1.prsn_nbr, + p1.record_id, + p2.record_id AS record_id_p2, + p1.prsn_type_id, + p2.prsn_type_id AS prsn_type_id_p2, + p1.prsn_occpnt_pos_id, + p2.prsn_occpnt_pos_id AS prsn_occpnt_pos_id_p2, + p1.prsn_injry_sev_id, + p2.prsn_injry_sev_id AS prsn_injry_sev_id_p2, + p1.prsn_age, + p2.prsn_age AS prsn_age_p2, + p1.prsn_last_name, + p2.prsn_last_name AS prsn_last_name_p2, + p1.prsn_first_name, + p2.prsn_first_name AS prsn_first_name_p2, + p1.prsn_mid_name, + p2.prsn_mid_name AS prsn_mid_name_p2, + p1.prsn_gndr_id, + p2.prsn_gndr_id AS prsn_gndr_id_p2, + p1.prsn_ethnicity_id, + p2.prsn_ethnicity_id AS prsn_ethnicity_id_p2, + p1.prsn_exp_homelessness, + p2.prsn_exp_homelessness AS prsn_exp_homelessness_p2, + p1.updated_by, + p2.updated_by AS updated_by_p2, + p1.last_update, + p2.last_update AS last_update_p2, + p1.is_primary, + p2.is_primary AS is_primary_p2, + atc.in_austin_full_purpose + FROM + unioned_people AS p1 + LEFT JOIN unioned_people AS p2 + ON + p1.dupe_key = p2.dupe_key + AND p1.record_id < p2.record_id + left join atd_txdot_crashes atc on p1.crash_id = atc.crash_id +) + +SELECT * FROM joined_dupes WHERE + record_id_p2 IS NOT null + and in_austin_full_purpose = 'Y' + and (prsn_injry_sev_id_p2 in (1, 4) or prsn_injry_sev_id in (1, 4)) + -- you can remove this where conditiont to further validate dupes + -- but these are the only columns that are checked for edits when we populate + -- the VZ edits + AND ( + prsn_type_id != prsn_type_id_p2 + OR prsn_occpnt_pos_id != prsn_occpnt_pos_id_p2 + OR prsn_injry_sev_id != prsn_injry_sev_id_p2 + OR prsn_age != prsn_age_p2 + OR prsn_last_name != prsn_last_name_p2 + OR prsn_first_name != prsn_first_name_p2 + OR prsn_mid_name != prsn_mid_name_p2 + OR prsn_gndr_id != prsn_gndr_id_p2 + OR prsn_ethnicity_id != prsn_ethnicity_id_p2 + OR prsn_exp_homelessness != prsn_exp_homelessness_p2 + ); diff --git a/atd-toolbox/data_model/python/debug_record_mismatched/prod_dedupe_fixes.sql b/atd-toolbox/data_model/python/debug_record_mismatched/prod_dedupe_fixes.sql new file mode 100644 index 000000000..d6c01dab6 --- /dev/null +++ b/atd-toolbox/data_model/python/debug_record_mismatched/prod_dedupe_fixes.sql @@ -0,0 +1,7 @@ +-- these statements were run against prod to cleanup dupe person records +-- done +delete from atd_txdot_primaryperson +where + primaryperson_id in (3260011, 3844543, 3955109, 3852906, 3852910, 3938846, 3938845, 3964601, 3964602, 4013933); +-- done +delete from atd_txdot_person where person_id = 1446315; diff --git a/atd-toolbox/data_model/python/lookup_table_metadata.json b/atd-toolbox/data_model/python/lookup_table_metadata.json new file mode 100644 index 000000000..9d030665c --- /dev/null +++ b/atd-toolbox/data_model/python/lookup_table_metadata.json @@ -0,0 +1,66290 @@ +[ + { + "id": "8", + "label": "ABERNATHY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "9", + "label": "ABILENE CHRISTIAN UNIVERSITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10", + "label": "ABILENE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "12", + "label": "ADDISON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "13", + "label": "ALAMO COMMUNITY COLLEGE DISTRICT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "14", + "label": "ALAMO HEIGHTS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "15", + "label": "ALAMO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "16", + "label": "ALBA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "17", + "label": "ALBANY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "18", + "label": "ALDINE ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "19", + "label": "ALEDO ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "20", + "label": "ALICE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "21", + "label": "ALIEF ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "22", + "label": "ALLEN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "23", + "label": "ALPINE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "24", + "label": "ALTO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "25", + "label": "ALTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "26", + "label": "ALVARADO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "28", + "label": "ALVIN COMMUNITY COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "29", + "label": "ALVIN ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "30", + "label": "ALVIN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "31", + "label": "AMARILLO AIRPORT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "32", + "label": "AMARILLO COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "33", + "label": "AMARILLO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "40", + "label": "ANDREWS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "41", + "label": "ANGELINA COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "42", + "label": "ANGELINA COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "43", + "label": "ANGELO STATE UNIVERSITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "44", + "label": "ANGLETON ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "45", + "label": "ANGLETON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "46", + "label": "ANSON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "47", + "label": "ANTHONY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "48", + "label": "ANTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "49", + "label": "ARANSAS COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "53", + "label": "ARANSAS PASS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "54", + "label": "ARCHER CITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "55", + "label": "ARCHER COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "56", + "label": "ARCOLA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "57", + "label": "ARGYLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "59", + "label": "ARLINGTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "60", + "label": "ARMSTRONG COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "61", + "label": "ARP POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "67", + "label": "ATHENS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "68", + "label": "ATLANTA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "69", + "label": "AUBREY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "70", + "label": "AUSTIN COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "71", + "label": "AUSTIN COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "73", + "label": "AUSTIN ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "74", + "label": "AUSTIN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "76", + "label": "AZLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "77", + "label": "BAILEY COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "78", + "label": "BAIRD CITY MARSHAL'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "79", + "label": "BALCH SPRINGS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "80", + "label": "BALCONES HEIGHTS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "81", + "label": "BALLINGER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "83", + "label": "BANDERA COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "84", + "label": "BANDERA CITY MARSHAL'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "85", + "label": "BANGS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "86", + "label": "BARBERS HILL ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "88", + "label": "BARTLETT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "89", + "label": "BARTONVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "90", + "label": "BASTROP COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "91", + "label": "BASTROP POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "92", + "label": "BAY CITY ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "93", + "label": "BAY CITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "94", + "label": "BAYLOR COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "95", + "label": "BAYLOR SCOTT & WHITE HEALTH PUBLIC SAFETY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "98", + "label": "BAYLOR UNIVERSITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "99", + "label": "BAYOU VISTA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "100", + "label": "BAYTOWN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "103", + "label": "BEAUMONT ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "104", + "label": "BEAUMONT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "105", + "label": "BEDFORD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "106", + "label": "BEE COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "107", + "label": "BEEVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "108", + "label": "BELL COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "109", + "label": "BELLAIRE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "110", + "label": "BELLMEAD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "111", + "label": "BELLS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "112", + "label": "BELLVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "113", + "label": "BELTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "114", + "label": "BENAVIDES POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "115", + "label": "BENBROOK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "117", + "label": "BERTRAM POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "118", + "label": "BEVERLY HILLS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "120", + "label": "BEXAR COUNTY LAW ENFORCEMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "122", + "label": "BIG SANDY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "123", + "label": "BIG SPRING POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "124", + "label": "BISHOP POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "126", + "label": "BLANCO COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "127", + "label": "BLANCO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "128", + "label": "BLINN COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "133", + "label": "BLUE MOUND POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "135", + "label": "BOERNE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "136", + "label": "BONHAM POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "137", + "label": "BOOKER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "138", + "label": "BORDEN COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "140", + "label": "BORGER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "142", + "label": "BOVINA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "144", + "label": "BOWIE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "145", + "label": "BOYD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "146", + "label": "BRACKETTVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "147", + "label": "BRADY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "148", + "label": "BRAZORIA COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "149", + "label": "BRAZORIA COUNTY CONSTABLE PRECINCT 2", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "150", + "label": "BRAZORIA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "151", + "label": "BRAZOS COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "153", + "label": "BRAZOSPORT COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "154", + "label": "BRECKENRIDGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "155", + "label": "BREMOND POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "156", + "label": "BRENHAM POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "157", + "label": "BREWSTER COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "159", + "label": "BRIDGE CITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "160", + "label": "BRIDGEPORT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "161", + "label": "BRISCOE COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "163", + "label": "BROOKHAVEN COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "164", + "label": "BROOKS COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "165", + "label": "BROOKSHIRE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "166", + "label": "BROOKSIDE VILLAGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "167", + "label": "BROWN COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "168", + "label": "BROWNFIELD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "170", + "label": "BROWNSBORO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "171", + "label": "BROWNSVILLE ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "172", + "label": "BROWNSVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "173", + "label": "BRUCEVILLE-EDDY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "174", + "label": "BRYAN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "177", + "label": "BUFFALO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "179", + "label": "BULLARD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "180", + "label": "BULVERDE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "183", + "label": "BURKBURNETT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "184", + "label": "BURLESON COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "185", + "label": "BURLESON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "186", + "label": "BURNET COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "187", + "label": "BURNET POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "188", + "label": "BURTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "189", + "label": "CACTUS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "190", + "label": "CADDO MILLS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "191", + "label": "CALDWELL COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "194", + "label": "CALDWELL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "195", + "label": "CALHOUN COUNTY ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "196", + "label": "CALHOUN COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "197", + "label": "CALLAHAN COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "198", + "label": "CALVERT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "202", + "label": "CAMERON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "208", + "label": "CANEY CITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "209", + "label": "CANTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "210", + "label": "CANYON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "212", + "label": "CARRIZO SPRINGS CISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "214", + "label": "CARROLLTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "215", + "label": "CARSON COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "216", + "label": "CARTHAGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "218", + "label": "CASTLE HILLS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "219", + "label": "CASTLEBERRY ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "220", + "label": "CASTRO COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "221", + "label": "CASTROVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "222", + "label": "CEDAR HILL ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "223", + "label": "CEDAR HILL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "224", + "label": "CEDAR PARK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "225", + "label": "CEDAR VALLEY COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "226", + "label": "CELESTE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "227", + "label": "CELINA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "228", + "label": "CENTER ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "229", + "label": "CENTER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "232", + "label": "CENTRAL TEXAS COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "234", + "label": "CHAMBERS COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "235", + "label": "CHANDLER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "236", + "label": "CHAPEL HILL NORTHEAST ISD POLICE DEPARTMENT (TITUS)", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "240", + "label": "CHILDRESS COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "241", + "label": "CHILDRESS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "242", + "label": "CHILLICOTHE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "243", + "label": "CHINA GROVE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "244", + "label": "CHINA SPRING ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "247", + "label": "CIBOLO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "248", + "label": "CISCO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "252", + "label": "ANNA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "257", + "label": "BOGATA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "261", + "label": "HUDSON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "262", + "label": "LEFORS CITY MARSHAL'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "268", + "label": "PALM VALLEY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "274", + "label": "SANSOM PARK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "275", + "label": "STAR HARBOR POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "277", + "label": "PENITAS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "280", + "label": "CLARKSVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "282", + "label": "CLAY COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "283", + "label": "CLEAR LAKE SHORES POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "284", + "label": "CLEBURNE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "285", + "label": "CLEVELAND ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "286", + "label": "CLEVELAND POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "287", + "label": "CLIFTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "288", + "label": "CLINT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "289", + "label": "CLUTE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "290", + "label": "CLYDE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "292", + "label": "COCHRAN COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "293", + "label": "COCKRELL HILL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "294", + "label": "COFFEE CITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "295", + "label": "COKE COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "297", + "label": "COLEMAN COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "299", + "label": "COLEMAN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "300", + "label": "COLLEGE OF THE MAINLAND CAMPUS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "301", + "label": "COLLEGE STATION POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "302", + "label": "COLLEYVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "303", + "label": "COLLIN COUNTY COMMUNITY DISTRICT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "304", + "label": "COLLIN COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "306", + "label": "COLLINGSWORTH COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "307", + "label": "COLLINSVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "308", + "label": "COLORADO CITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "309", + "label": "COLORADO COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "311", + "label": "COLUMBUS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "312", + "label": "COMAL COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "313", + "label": "COMANCHE COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "314", + "label": "COMANCHE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "315", + "label": "COMBES POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "316", + "label": "COMBINE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "320", + "label": "CONCHO COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "321", + "label": "CONCORDIA UNIVERSITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "322", + "label": "CONNALLY ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "324", + "label": "CONROE ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "325", + "label": "CONROE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "334", + "label": "DENTON COUNTY CONSTABLE PRECINCT 6", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "511", + "label": "BLANCO COUNTY CONSTABLE PRECINCT 1", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "512", + "label": "BRAZORIA COUNTY CONSTABLE PRECINCT 1", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "522", + "label": "WHARTON COUNTY CONSTABLE PRECINCT 1", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "659", + "label": "SAN JACINTO COUNTY CONSTABLE PRECINCT 2", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "795", + "label": "FALLS COUNTY CONSTABLE PRECINCT 3", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "798", + "label": "LAMAR COUNTY CONSTABLE PRECINCT 3", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "923", + "label": "DENTON COUNTY CONSTABLE PRECINCT 4", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "931", + "label": "NUECES COUNTY CONSTABLE PRECINCT 4", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "933", + "label": "VAN ZANDT COUNTY CONSTABLE PRECINCT 4", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1030", + "label": "EL PASO COUNTY CONSTABLE PRECINCT 6", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1105", + "label": "CONVERSE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1107", + "label": "COOLIDGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1110", + "label": "COPPELL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1112", + "label": "COPPERAS COVE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1113", + "label": "CORINTH POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1114", + "label": "CORPUS CHRISTI ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1115", + "label": "CORPUS CHRISTI POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1116", + "label": "CORRIGAN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1118", + "label": "CORSICANA ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1119", + "label": "CORSICANA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1121", + "label": "COTTLE COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1122", + "label": "COTTONWOOD SHORES POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1128", + "label": "WILLIAMSON COUNTY CONSTABLE PRECINCT 1", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1141", + "label": "CRANDALL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1144", + "label": "CRANE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1145", + "label": "CRAWFORD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1146", + "label": "CROCKETT COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1147", + "label": "CROCKETT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1148", + "label": "CROSBY COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1150", + "label": "CROSBYTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1151", + "label": "CROSS PLAINS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1153", + "label": "CROWELL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1154", + "label": "CROWLEY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1157", + "label": "CRYSTAL CITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1158", + "label": "CUERO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1159", + "label": "CULBERSON COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1160", + "label": "CUMBY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1161", + "label": "CUNEY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1162", + "label": "CUT AND SHOOT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1163", + "label": "DAINGERFIELD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1164", + "label": "DAISETTA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1165", + "label": "DALHART POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1166", + "label": "DALLAM COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1167", + "label": "DALLAS CITY MARSHAL'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1168", + "label": "DALLAS COUNTY COMMUNITY COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1169", + "label": "DALLAS COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1173", + "label": "DALLAS FT WORTH AIRPORT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1174", + "label": "DALLAS ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1176", + "label": "DALWORTHINGTON GARDENS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1177", + "label": "DANBURY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1179", + "label": "DALLAS AREA RAPID TRANSIT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1181", + "label": "DAWSON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1184", + "label": "DAYTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1185", + "label": "DEKALB POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1186", + "label": "DE LEON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1187", + "label": "DESOTO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1188", + "label": "DEAF SMITH COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1189", + "label": "DECATUR POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1190", + "label": "DEER PARK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1191", + "label": "DEL RIO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1192", + "label": "DELTA COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1193", + "label": "DENISON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1194", + "label": "DENTON COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1196", + "label": "DENTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1197", + "label": "DENVER CITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1199", + "label": "DEVINE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1200", + "label": "DEWITT COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1201", + "label": "DIBOLL ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1202", + "label": "DIBOLL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1203", + "label": "DICKENS COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1204", + "label": "DICKINSON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1205", + "label": "DILLEY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1206", + "label": "DIMMIT COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1207", + "label": "DIMMITT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1211", + "label": "DONLEY COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1213", + "label": "DONNA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1214", + "label": "DOUBLE OAK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1218", + "label": "DRISCOLL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1219", + "label": "DUBLIN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1220", + "label": "DUMAS ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1221", + "label": "DUMAS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1223", + "label": "DUNCANVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1224", + "label": "DUVAL COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1225", + "label": "EAGLE LAKE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1226", + "label": "EAGLE PASS ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1227", + "label": "EAGLE PASS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1228", + "label": "EARLY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1229", + "label": "EARTH POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1230", + "label": "EAST CENTRAL ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1231", + "label": "EAST MOUNTAIN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1232", + "label": "EAST TAWAKONI POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1236", + "label": "EASTLAND POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1240", + "label": "ECTOR COUNTY ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1241", + "label": "ECTOR POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1242", + "label": "EDCOUCH POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1245", + "label": "EDGEWOOD ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1248", + "label": "EDINBURG POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1249", + "label": "EDNA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1250", + "label": "EDWARDS COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1251", + "label": "EL CAMPO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1252", + "label": "EL CENIZO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1256", + "label": "EL PASO COMMUNITY COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1258", + "label": "EL PASO ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1259", + "label": "EL PASO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1260", + "label": "EL PASO COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1262", + "label": "ELECTRA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1263", + "label": "ELGIN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1265", + "label": "ELLIS COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1266", + "label": "ELLIS COUNTY CONSTABLE PRECINCT 2", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1269", + "label": "ELMENDORF POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1270", + "label": "ELSA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1271", + "label": "EMORY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1273", + "label": "ENNIS ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1274", + "label": "ENNIS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1275", + "label": "ERATH COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1277", + "label": "ESCOBARES POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1278", + "label": "ESTELLINE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1279", + "label": "EULESS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1280", + "label": "EUSTACE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1281", + "label": "EVERMAN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1283", + "label": "FAIR OAKS RANCH POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1284", + "label": "FAIRFIELD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1285", + "label": "FAIRVIEW POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1287", + "label": "FALFURRIAS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1289", + "label": "FANNIN COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1290", + "label": "FARMERS BRANCH POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1291", + "label": "FARMERSVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1292", + "label": "FARWELL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1294", + "label": "FAYETTE COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1295", + "label": "FERRIS ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1296", + "label": "FERRIS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1299", + "label": "FISHER COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1300", + "label": "FLATONIA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1301", + "label": "FLORENCE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1302", + "label": "FLORESVILLE ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1303", + "label": "FLORESVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1304", + "label": "FLOWER MOUND POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1305", + "label": "FLOYD COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1306", + "label": "FLOYDADA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1309", + "label": "FOREST HILL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1310", + "label": "FORNEY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1312", + "label": "FORT BEND COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1315", + "label": "FORT BEND ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1317", + "label": "FORT STOCKTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1318", + "label": "FORT WORTH POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1320", + "label": "FRANKLIN COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1321", + "label": "FRANKLIN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1322", + "label": "FRANKSTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1323", + "label": "FREDERICKSBURG POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1324", + "label": "FREEPORT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1325", + "label": "FREER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1326", + "label": "FREESTONE COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1327", + "label": "FRENSHIP ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1328", + "label": "FRIENDSWOOD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1329", + "label": "FRIO COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1330", + "label": "FRIONA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1331", + "label": "FRISCO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1332", + "label": "FRITCH POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1334", + "label": "FULSHEAR POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1335", + "label": "GAINES COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1337", + "label": "GAINESVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1338", + "label": "GALENA PARK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1339", + "label": "GALVESTON COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1340", + "label": "GALVESTON ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1341", + "label": "GALVESTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1342", + "label": "GANADO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1343", + "label": "GARDEN RIDGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1344", + "label": "GARLAND POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1345", + "label": "GARRETT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1347", + "label": "GARRISON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1348", + "label": "GARZA COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1349", + "label": "GATESVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1350", + "label": "GEORGE WEST POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1351", + "label": "GEORGETOWN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1352", + "label": "GIDDINGS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1353", + "label": "GILLESPIE COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1354", + "label": "GILMER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1355", + "label": "GLADEWATER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1356", + "label": "GLASSCOCK COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1357", + "label": "GLEN ROSE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1359", + "label": "GLENN HEIGHTS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1360", + "label": "GODLEY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1362", + "label": "GOLIAD COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1364", + "label": "GONZALES COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1366", + "label": "GONZALES POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1369", + "label": "GORMAN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1370", + "label": "GRAHAM POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1371", + "label": "GRANBURY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1372", + "label": "GRAND PRAIRIE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1373", + "label": "GRAND SALINE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1374", + "label": "GRANDVIEW POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1376", + "label": "GRANGER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1377", + "label": "GRANITE SHOALS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1378", + "label": "GRAPELAND POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1379", + "label": "GRAPEVINE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1380", + "label": "GRAY COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1382", + "label": "GRAYSON COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1383", + "label": "GREENVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1386", + "label": "GREGORY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1387", + "label": "GREY FOREST POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1389", + "label": "GRIMES COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1390", + "label": "GROESBECK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1391", + "label": "GROVES POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1392", + "label": "GROVETON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1395", + "label": "GUADALUPE COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1397", + "label": "GUN BARREL CITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1398", + "label": "GUNTER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1401", + "label": "HALL COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1402", + "label": "HALLETTSVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1403", + "label": "HALLSVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1404", + "label": "HALTOM CITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1405", + "label": "HAMILTON COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1406", + "label": "HAMILTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1407", + "label": "HAMLIN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1409", + "label": "HANSFORD COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1411", + "label": "HARDEMAN COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1415", + "label": "HARKER HEIGHTS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1416", + "label": "HARLANDALE ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1417", + "label": "HARLINGEN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1418", + "label": "HARRIS COUNTY CONSTABLE PRECINCT 7", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1419", + "label": "HARRIS COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1422", + "label": "HARTLEY COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1423", + "label": "HASKELL COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1424", + "label": "HASKELL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1426", + "label": "HAWKINS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1427", + "label": "HAWLEY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1428", + "label": "HAYS COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1430", + "label": "HAYS COUNTY CONSTABLE PRECINCT 4", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1431", + "label": "HEARNE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1434", + "label": "HEDWIG VILLAGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1435", + "label": "HELOTES POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1436", + "label": "HEMPHILL COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1437", + "label": "HEMPHILL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1439", + "label": "HEMPSTEAD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1441", + "label": "HENDERSON COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1443", + "label": "HENDERSON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1445", + "label": "HEREFORD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1446", + "label": "HEWITT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1447", + "label": "HICKORY CREEK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1448", + "label": "HICO CITY MARSHAL'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1452", + "label": "HIDALGO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1455", + "label": "HIGHLAND PARK DEPARTMENT OF PUBLIC SAFETY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1456", + "label": "HIGHLAND VILLAGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1459", + "label": "HILL COUNTRY VILLAGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1462", + "label": "HILLSBORO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1464", + "label": "HITCHCOCK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1466", + "label": "HOLIDAY LAKES POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1467", + "label": "HOLLAND POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1468", + "label": "HOLLIDAY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1469", + "label": "HOLLYWOOD PARK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1470", + "label": "HONDO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1471", + "label": "HONEY GROVE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1472", + "label": "HOOD COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1474", + "label": "HOOKS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1475", + "label": "HOPKINS COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1476", + "label": "HORIZON CITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1477", + "label": "HORSESHOE BAY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1478", + "label": "HOUSTON CHRISTIAN UNIVERSITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1479", + "label": "HOUSTON COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1480", + "label": "HOUSTON COMMUNITY COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1483", + "label": "HOUSTON ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1487", + "label": "HOWARD COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1489", + "label": "HOWE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1490", + "label": "HUBBARD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1491", + "label": "HUDSON ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1492", + "label": "HUDSON OAKS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1493", + "label": "HUDSPETH COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1494", + "label": "HUGHES SPRINGS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1495", + "label": "HUMBLE ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1496", + "label": "HUMBLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1500", + "label": "HUNTINGTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1502", + "label": "HUNTSVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1503", + "label": "HURST POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1504", + "label": "HUTCHINS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1505", + "label": "HUTCHINSON COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1506", + "label": "HUTTO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1507", + "label": "IDALOU POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1511", + "label": "INGLESIDE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1512", + "label": "INGRAM POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1513", + "label": "IOWA COLONY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1514", + "label": "IOWA PARK CISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1515", + "label": "IOWA PARK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1517", + "label": "IRION COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1518", + "label": "IRVING POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1519", + "label": "ITALY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1520", + "label": "ITASCA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1521", + "label": "JACINTO CITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1523", + "label": "JACKSBORO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1524", + "label": "JACKSON COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1526", + "label": "JACKSONVILLE ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1527", + "label": "JACKSONVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1528", + "label": "JAMAICA BEACH POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1529", + "label": "JARRELL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1531", + "label": "JASPER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1533", + "label": "JEFF DAVIS COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1536", + "label": "JEFFERSON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1537", + "label": "JERSEY VILLAGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1538", + "label": "JEWETT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1539", + "label": "JIM HOGG COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1543", + "label": "JOHNSON CITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1544", + "label": "JOHNSON COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1545", + "label": "JONES COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1546", + "label": "JONES CREEK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1547", + "label": "JONESTOWN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1548", + "label": "JOSEPHINE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1550", + "label": "JOSHUA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1551", + "label": "JOURDANTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1552", + "label": "JUDSON ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1553", + "label": "JUNCTION POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1554", + "label": "JUSTIN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1556", + "label": "KARNES CITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1557", + "label": "KARNES COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1558", + "label": "KATY ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1559", + "label": "KATY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1562", + "label": "KAUFMAN ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1563", + "label": "KAUFMAN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1564", + "label": "KEENE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1565", + "label": "KELLER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1567", + "label": "KEMAH POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1569", + "label": "KEMP POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1571", + "label": "KEMPNER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1572", + "label": "KENDALL COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1575", + "label": "KENEDY COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1576", + "label": "KENEDY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1578", + "label": "KENNEDALE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1579", + "label": "KENT COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1580", + "label": "KERENS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1581", + "label": "KERMIT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1582", + "label": "KERR COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1583", + "label": "KERRVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1585", + "label": "KILGORE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1586", + "label": "KILLEEN ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1587", + "label": "KILLEEN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1588", + "label": "KIMBLE COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1589", + "label": "KING COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1590", + "label": "KINGSVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1591", + "label": "KINNEY COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1592", + "label": "KIRBY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1593", + "label": "KIRBYVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1594", + "label": "KLEBERG COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1596", + "label": "KLEIN ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1597", + "label": "KNOX CITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1598", + "label": "KNOX COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1599", + "label": "KOSSE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1600", + "label": "KOUNTZE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1602", + "label": "NORTHEAST POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1603", + "label": "KRUM POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1604", + "label": "KYLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1605", + "label": "LA FERIA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1606", + "label": "LA GRANGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1607", + "label": "LA GRULLA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1608", + "label": "LA JOYA ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1609", + "label": "LA JOYA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1612", + "label": "LA MARQUE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1614", + "label": "LA PORTE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1615", + "label": "LA SALLE COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1616", + "label": "LA VERNIA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1617", + "label": "LA VILLA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1619", + "label": "LACOSTE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1620", + "label": "LACY LAKEVIEW POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1621", + "label": "LADONIA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1622", + "label": "LAGO VISTA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1623", + "label": "LAGUNA VISTA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1626", + "label": "LAKE DALLAS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1627", + "label": "LAKE JACKSON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1628", + "label": "LAKE WORTH POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1629", + "label": "LAKEPORT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1630", + "label": "LAKESIDE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1632", + "label": "LAKEVIEW POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1633", + "label": "LAKEWAY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1634", + "label": "LAMAR COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1635", + "label": "LAMAR UNIVERSITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1637", + "label": "LAMESA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1639", + "label": "LAMPASAS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1640", + "label": "LANCASTER ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1641", + "label": "LANCASTER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1642", + "label": "LAREDO COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1643", + "label": "LAREDO ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1644", + "label": "LAREDO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1645", + "label": "LAVACA COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1647", + "label": "LAVON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1648", + "label": "LEAGUE CITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1649", + "label": "LEANDER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1650", + "label": "LEE COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1652", + "label": "LEON COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1654", + "label": "LEON VALLEY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1656", + "label": "LEONARD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1658", + "label": "LEVELLAND POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1659", + "label": "LEWISVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1661", + "label": "LEXINGTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1662", + "label": "LIBERTY COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1664", + "label": "LIBERTY HILL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1665", + "label": "LIBERTY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1666", + "label": "LIBERTY EYLAU ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1669", + "label": "LINDALE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1670", + "label": "LINDEN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1671", + "label": "LINDSAY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1672", + "label": "LIPAN CITY MARSHAL'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1673", + "label": "LIPSCOMB COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1674", + "label": "LITTLE ELM POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1675", + "label": "LITTLE RIVER ACADEMY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1676", + "label": "LITTLEFIELD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1678", + "label": "LIVE OAK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1679", + "label": "LIVERPOOL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1680", + "label": "LIVINGSTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1681", + "label": "LLANO COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1682", + "label": "LLANO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1683", + "label": "LOCKHART POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1684", + "label": "LOCKNEY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1685", + "label": "LOG CABIN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1687", + "label": "LOMETA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1688", + "label": "LONE OAK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1689", + "label": "LONE STAR COLLEGE SYSTEM DISTRICT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1690", + "label": "LONE STAR POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1691", + "label": "LONGVIEW POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1693", + "label": "LORENA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1694", + "label": "LORENZO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1695", + "label": "LOS FRESNOS CISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1696", + "label": "LOS FRESNOS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1698", + "label": "LOTT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1699", + "label": "LOVING COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1704", + "label": "LUBBOCK INTERNATIONAL AIRPORT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1705", + "label": "LUBBOCK ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1706", + "label": "LUBBOCK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1708", + "label": "LUFKIN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1709", + "label": "LULING POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1710", + "label": "LUMBERTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1711", + "label": "LYFORD CISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1712", + "label": "LYFORD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1713", + "label": "LYNN COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1714", + "label": "LYTLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1715", + "label": "MABANK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1716", + "label": "MADISON COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1719", + "label": "MADISONVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1720", + "label": "MAGNOLIA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1722", + "label": "MALAKOFF POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1723", + "label": "MALONE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1724", + "label": "MANOR POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1725", + "label": "MANSFIELD ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1726", + "label": "MANSFIELD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1727", + "label": "MANVEL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1728", + "label": "MARBLE FALLS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1729", + "label": "MARFA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1734", + "label": "MARION POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1736", + "label": "MARLIN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1740", + "label": "MARSHALL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1741", + "label": "MART POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1742", + "label": "MARTIN COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1743", + "label": "MARTINDALE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1744", + "label": "MASON COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1748", + "label": "MATHIS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1749", + "label": "MAUD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1750", + "label": "MAVERICK COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1752", + "label": "MAYPEARL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1753", + "label": "MCALLEN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1755", + "label": "MCALLEN ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1757", + "label": "MCCULLOCH COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1758", + "label": "MCGREGOR POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1759", + "label": "MCKINNEY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1762", + "label": "MCLENNAN COMMUNITY COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1764", + "label": "MEADOWS PLACE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1765", + "label": "MEDINA COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1766", + "label": "MELISSA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1767", + "label": "MEMORIAL VILLAGES POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1768", + "label": "MEMPHIS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1769", + "label": "MENARD COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1771", + "label": "MERCEDES POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1772", + "label": "MERIDIAN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1773", + "label": "MERKEL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1774", + "label": "MESQUITE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1775", + "label": "METRO TRANSIT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1776", + "label": "MEXIA ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1777", + "label": "MEXIA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1780", + "label": "MIDLAND COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1782", + "label": "MIDLAND POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1783", + "label": "MIDLOTHIAN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1784", + "label": "MIDWESTERN STATE UNIVERSITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1785", + "label": "MILAM COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1786", + "label": "MILES POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1787", + "label": "MILFORD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1788", + "label": "MILLS COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1789", + "label": "MINEOLA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1790", + "label": "MINERAL WELLS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1791", + "label": "MISSION POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1792", + "label": "MISSOURI CITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1793", + "label": "MITCHELL COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1794", + "label": "MONAHANS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1796", + "label": "MONT BELVIEU POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1797", + "label": "MONTAGUE COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1798", + "label": "MONTGOMERY COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1800", + "label": "MONTGOMERY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1801", + "label": "MOODY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1802", + "label": "MOORE COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1804", + "label": "MORGAN'S POINT RESORT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1805", + "label": "MORGAN'S POINT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1808", + "label": "MOTLEY COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1809", + "label": "MOULTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1811", + "label": "MOUNT ENTERPRISE CITY MARSHAL'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1812", + "label": "MOUNT PLEASANT ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1813", + "label": "MOUNT PLEASANT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1814", + "label": "MOUNT VERNON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1815", + "label": "MOUNTAIN VIEW COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1816", + "label": "MUENSTER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1817", + "label": "MULESHOE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1818", + "label": "MUNDAY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1820", + "label": "MURPHY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1821", + "label": "MUSTANG RIDGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1822", + "label": "NORTH FOREST ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1823", + "label": "NACOGDOCHES COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1825", + "label": "NACOGDOCHES POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1826", + "label": "NAPLES POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1828", + "label": "NASH POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1830", + "label": "NASSAU BAY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1831", + "label": "NATALIA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1832", + "label": "NAVARRO COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1833", + "label": "NAVARRO COLLEGE DEPARTMENT OF PUBLIC SAFETY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1834", + "label": "NAVASOTA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1835", + "label": "NAZARETH CITY MARSHAL'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1836", + "label": "NEDERLAND POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1838", + "label": "NEEDVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1839", + "label": "NEW BOSTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1841", + "label": "NEW BRAUNFELS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1842", + "label": "NEW CANEY ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1843", + "label": "NEW DEAL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1845", + "label": "NEW LONDON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1846", + "label": "NEW SUMMERFIELD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1849", + "label": "NEWTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1850", + "label": "NIXON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1851", + "label": "NOCONA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1853", + "label": "NOLANVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1855", + "label": "NORMANGEE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1858", + "label": "NORTH EAST ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1859", + "label": "NORTH LAKE COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1860", + "label": "NORTH RICHLAND HILLS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1863", + "label": "NORTHLAKE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1864", + "label": "NORTHSIDE ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1865", + "label": "NUECES COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1866", + "label": "OAK POINT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1867", + "label": "OAK RIDGE NORTH POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1868", + "label": "OAK RIDGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1869", + "label": "OAKWOOD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1870", + "label": "OCHILTREE COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1873", + "label": "ODESSA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1874", + "label": "O'DONNELL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1877", + "label": "OLMOS PARK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1878", + "label": "OLNEY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1879", + "label": "OLTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1880", + "label": "OMAHA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1881", + "label": "ONALASKA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1883", + "label": "ORANGE GROVE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1884", + "label": "ORANGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1885", + "label": "ORE CITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1888", + "label": "OVERTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1889", + "label": "OVILLA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1890", + "label": "OYSTER CREEK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1892", + "label": "PADUCAH POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1894", + "label": "PALACIOS ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1895", + "label": "PALACIOS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1896", + "label": "PALESTINE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1897", + "label": "PALMER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1898", + "label": "PALMHURST POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1899", + "label": "PALMVIEW POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1901", + "label": "PAMPA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1902", + "label": "PANHANDLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1904", + "label": "PANORAMA VILLAGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1905", + "label": "PANTEGO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1907", + "label": "PARIS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1909", + "label": "PARKER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1910", + "label": "PARMER COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1911", + "label": "PASADENA ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1912", + "label": "PASADENA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1913", + "label": "PATTON VILLAGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1914", + "label": "PAYNE SPRINGS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1915", + "label": "SOUTH PADRE ISLAND POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1917", + "label": "PEARLAND POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1918", + "label": "PEARSALL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1919", + "label": "PECOS COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1920", + "label": "PECOS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1921", + "label": "PELICAN BAY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1922", + "label": "PERRYTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1923", + "label": "PETERSBURG POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1924", + "label": "PFLUGERVILLE ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1925", + "label": "PFLUGERVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1926", + "label": "PHARR POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1929", + "label": "PILOT POINT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1930", + "label": "PINE FOREST POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1931", + "label": "PINEHURST POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1932", + "label": "PINELAND POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1935", + "label": "PITTSBURG POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1937", + "label": "PLAINVIEW POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1938", + "label": "PLANO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1940", + "label": "PLEASANTON ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1941", + "label": "PLEASANTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1942", + "label": "POINT COMFORT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1943", + "label": "POINT ISABEL ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1944", + "label": "POINT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1946", + "label": "PONDER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1947", + "label": "PORT ARANSAS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1948", + "label": "PORT ARTHUR POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1949", + "label": "PORT ISABEL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1950", + "label": "PORT LAVACA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1951", + "label": "PORT NECHES POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1953", + "label": "PORT OF BROWNSVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1954", + "label": "PORT OF CORPUS CHRISTI AUTHORITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1955", + "label": "PORT OF GALVESTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1956", + "label": "PORT OF HOUSTON AUTHORITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1957", + "label": "PORTLAND POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1960", + "label": "POTEET POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1961", + "label": "POTH POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1963", + "label": "POTTSBORO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1964", + "label": "PRAIRIE VIEW A&M UNIVERSITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1965", + "label": "PRAIRIE VIEW POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1966", + "label": "PREMONT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1967", + "label": "PRESIDIO COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1968", + "label": "PRESIDIO ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1969", + "label": "PRESIDIO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1970", + "label": "PRIMERA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1971", + "label": "PRINCETON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1972", + "label": "PROGRESO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1973", + "label": "PROSPER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1975", + "label": "QUEEN CITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1976", + "label": "QUINLAN ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1977", + "label": "QUINLAN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1978", + "label": "QUITMAN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1979", + "label": "RAINS COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1980", + "label": "RAINS ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1981", + "label": "RALLS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1983", + "label": "RANDALL COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1985", + "label": "RANGER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1988", + "label": "RAYMONDVILLE ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1989", + "label": "RAYMONDVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1990", + "label": "REAGAN COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1991", + "label": "REAL COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1992", + "label": "RED OAK ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1993", + "label": "RED OAK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1994", + "label": "RED RIVER COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1997", + "label": "REFUGIO COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2001", + "label": "REFUGIO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2005", + "label": "RENO POLICE DEPARTMENT (LAMAR)", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2006", + "label": "RHOME POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2008", + "label": "RICE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2010", + "label": "RICE UNIVERSITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2011", + "label": "RICHARDSON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2013", + "label": "RICHLAND HILLS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2014", + "label": "RICHMOND POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2015", + "label": "RICHWOOD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2016", + "label": "RIESEL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2019", + "label": "RIO GRANDE CITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2020", + "label": "RIO HONDO ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2021", + "label": "RIO HONDO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2022", + "label": "RIO VISTA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2023", + "label": "RISING STAR POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2024", + "label": "RIVER OAKS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2025", + "label": "ROANOKE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2027", + "label": "ROBERTS COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2030", + "label": "ROBINSON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2031", + "label": "ROBSTOWN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2032", + "label": "ROCKDALE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2033", + "label": "ROCKPORT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2034", + "label": "ROCKWALL COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2035", + "label": "ROCKWALL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2036", + "label": "ROGERS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2037", + "label": "ROLLINGWOOD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2038", + "label": "ROMA ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2039", + "label": "ROMA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2040", + "label": "ROMAN FOREST POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2041", + "label": "ROPESVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2042", + "label": "ROSCOE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2043", + "label": "ROSE CITY MARSHAL'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2044", + "label": "ROSEBUD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2045", + "label": "ROSENBERG POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2047", + "label": "ROUND ROCK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2049", + "label": "ROWLETT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2051", + "label": "ROYSE CITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2053", + "label": "RUNAWAY BAY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2057", + "label": "RUSK COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2058", + "label": "RUSK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2059", + "label": "SABINAL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2061", + "label": "SABINE COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2062", + "label": "SACHSE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2063", + "label": "SAGINAW POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2064", + "label": "SAINT JO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2065", + "label": "SAM HOUSTON STATE UNIVERSITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2067", + "label": "SAN ANGELO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2068", + "label": "SAN ANTONIO ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2070", + "label": "SAN ANTONIO PARK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2073", + "label": "SAN AUGUSTINE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2075", + "label": "SAN BENITO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2076", + "label": "SAN DIEGO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2077", + "label": "SAN ELIZARIO CITY MARSHAL'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2078", + "label": "SAN FELIPE DEL RIO CISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2079", + "label": "SAN FELIPE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2080", + "label": "SAN JACINTO COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2081", + "label": "SAN JACINTO COLLEGE DISTRICT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2083", + "label": "SAN JUAN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2084", + "label": "SAN MARCOS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2085", + "label": "SAN PATRICIO COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2087", + "label": "SAN SABA COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2088", + "label": "SAN SABA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2089", + "label": "SANGER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2090", + "label": "SANTA ANNA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2091", + "label": "SANTA FE ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2092", + "label": "SANTA ROSA ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2093", + "label": "SANTA ROSA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2094", + "label": "SANTA FE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2095", + "label": "SAVOY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2098", + "label": "SCHERTZ POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2099", + "label": "SCHLEICHER COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2100", + "label": "SCHULENBURG POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2103", + "label": "SEABROOK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2104", + "label": "SEADRIFT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2105", + "label": "SEAGOVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2106", + "label": "SEAGRAVES POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2107", + "label": "SEALY ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2108", + "label": "SEALY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2109", + "label": "SEGUIN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2110", + "label": "SELMA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2111", + "label": "SEMINOLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2112", + "label": "SEVEN POINTS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2113", + "label": "SEYMOUR POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2114", + "label": "SHACKELFORD COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2116", + "label": "SHALLOWATER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2117", + "label": "SHAMROCK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2118", + "label": "SHAVANO PARK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2121", + "label": "SHENANDOAH POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2123", + "label": "SHERMAN COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2124", + "label": "SHERMAN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2125", + "label": "SHINER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2126", + "label": "SHOREACRES POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2127", + "label": "SILSBEE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2129", + "label": "SINTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2131", + "label": "SLATON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2133", + "label": "SMITH COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2135", + "label": "SMITHVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2137", + "label": "SNYDER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2138", + "label": "SOCORRO ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2139", + "label": "SOCORRO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2140", + "label": "SOMERSET ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2142", + "label": "SOMERSET POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2143", + "label": "SOMERVELL COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2144", + "label": "SOMERVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2146", + "label": "SONORA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2147", + "label": "SOURLAKE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2148", + "label": "SOUTH HOUSTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2149", + "label": "SOUTH PLAINS COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2151", + "label": "SOUTHSIDE PLACE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2152", + "label": "SOUTHERN METHODIST UNIVERSITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2154", + "label": "SOUTHLAKE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2155", + "label": "SOUTHMAYD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2156", + "label": "SOUTHSIDE ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2160", + "label": "SOUTHWESTERN UNIVERSITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2161", + "label": "SPEARMAN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2162", + "label": "SPLENDORA ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2163", + "label": "SPLENDORA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2164", + "label": "SPRING BRANCH ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2166", + "label": "SPRING ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2167", + "label": "SPRING VALLEY VILLAGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2168", + "label": "SPRINGTOWN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2169", + "label": "SPUR POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2170", + "label": "ST EDWARD'S UNIVERSITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2171", + "label": "ST MARY'S UNIVERSITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2173", + "label": "STAFFORD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2174", + "label": "STAGECOACH POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2175", + "label": "STAMFORD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2176", + "label": "STANTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2179", + "label": "STEPHEN F AUSTIN STATE UNIVERSITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2180", + "label": "STEPHENS COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2181", + "label": "STEPHENVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2182", + "label": "STERLING COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2183", + "label": "STINNETT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2184", + "label": "STONEWALL COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2186", + "label": "STRATFORD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2188", + "label": "SUDAN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2189", + "label": "SUGAR LAND POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2190", + "label": "SUL ROSS STATE UNIVERSITY DEPARTMENT OF PUBLIC SAFETY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2191", + "label": "SULLIVAN CITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2193", + "label": "SULPHUR SPRINGS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2194", + "label": "SUNDOWN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2196", + "label": "SUNRAY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2197", + "label": "SUNRISE BEACH VILLAGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2199", + "label": "SUNSET VALLEY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2200", + "label": "SURFSIDE BEACH POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2201", + "label": "SUTTON COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2202", + "label": "SWEENY ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2203", + "label": "SWEENY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2204", + "label": "SWEETWATER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2205", + "label": "SWISHER COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2207", + "label": "TAFT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2208", + "label": "TAHOKA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2210", + "label": "TALTY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2211", + "label": "TARLETON STATE UNIVERSITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2212", + "label": "TARRANT COUNTY HOSPITAL DISTRICT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2213", + "label": "TARRANT COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2214", + "label": "TARRANT COUNTY COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2215", + "label": "TATUM POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2218", + "label": "TAYLOR POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2219", + "label": "TEAGUE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2220", + "label": "TEMPLE COLLEGE DEPARTMENT OF PUBLIC SAFETY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2221", + "label": "TEMPLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2222", + "label": "TENAHA CITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2223", + "label": "TERRELL COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2224", + "label": "TERRELL HILLS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2226", + "label": "TERRELL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2228", + "label": "TEXARKANA COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2230", + "label": "TEXARKANA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2231", + "label": "TEXAS A&M UNIVERSITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2232", + "label": "TEXAS A&M UNIVERSITY AT KINGSVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2233", + "label": "TEXAS A&M INTERN UNIVERSITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2235", + "label": "TEXAS A&M UNIVERSITY AT COMMERCE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2236", + "label": "TEXAS A&M UNIVERSITY AT CORPUS CHRISTI POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2239", + "label": "TEXAS CITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2256", + "label": "TEXAS LUTHERAN UNIVERSITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2257", + "label": "TEXAS MEDICAL CENTER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2258", + "label": "TEXAS SOUTHERN UNIVERSITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2259", + "label": "TEXAS STATE TECHNICAL COLLEGE POLICE DEPARTMENT - HARLINGEN", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2260", + "label": "TEXAS STATE TECHNICAL COLLEGE POLICE DEPARTMENT - WACO", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2261", + "label": "TEXAS STATE UNIVERSITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2262", + "label": "TEXAS TECH UNIVERSITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2264", + "label": "TEXAS WOMAN'S UNIVERSITY DEPARTMENT OF PUBLIC SAFETY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2265", + "label": "TEXLINE CITY MARSHAL'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2267", + "label": "BEE CAVE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2269", + "label": "THE COLONY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2270", + "label": "THORNDALE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2272", + "label": "THORNTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2273", + "label": "THRALL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2274", + "label": "THREE RIVERS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2275", + "label": "THROCKMORTON COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2276", + "label": "TIKI ISLAND POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2279", + "label": "TIMPSON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2280", + "label": "TIOGA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2282", + "label": "TOLAR POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2283", + "label": "TOM BEAN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2284", + "label": "TOM GREEN COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2286", + "label": "TOMBALL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2287", + "label": "TOOL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2289", + "label": "THOMPSONS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2290", + "label": "RANCHO VIEJO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2292", + "label": "TRAVIS COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2293", + "label": "TRENTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2294", + "label": "TRINIDAD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2295", + "label": "TRINITY COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2296", + "label": "TRINITY COUNTY CONSTABLE PRECINCT 3", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2297", + "label": "TRINITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2299", + "label": "TRINITY VALLEY COMMUNITY COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2300", + "label": "TROPHY CLUB POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2302", + "label": "TROUP POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2303", + "label": "TROY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2305", + "label": "TULIA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2306", + "label": "TEXAS A&M UNIVERSITY AT TEXARKANA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2307", + "label": "TEXAS A&M UNIVERSITY AT SAN ANTONIO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2311", + "label": "TYE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2314", + "label": "TYLER ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2315", + "label": "TYLER JUNIOR COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2316", + "label": "TYLER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2318", + "label": "UNIVERSITY OF HOUSTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2319", + "label": "UNIVERSITY OF HOUSTON - DOWNTOWN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2320", + "label": "UNIVERSITY OF MARY HARDIN BAYLOR POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2321", + "label": "UNIVERSITY OF NORTH TEXAS HEALTH SCIENCE CENTER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2323", + "label": "UNIVERSITY OF TEXAS AT TYLER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2324", + "label": "UNIVERSITY OF TEXAS AT ARLINGTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2325", + "label": "UNIVERSITY OF TEXAS AT DALLAS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2326", + "label": "UNIVERSITY OF TEXAS AT SAN ANTONIO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2328", + "label": "UNIVERSAL CITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2329", + "label": "UNIVERSITY OF HOUSTON - CLEAR LAKE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2330", + "label": "UNIVERSITY OF NORTH TEXAS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2333", + "label": "UNIVERSITY OF TEXAS HEALTH SCIENCE CENTER AT SAN ANTONIO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2334", + "label": "UNIVERSITY OF TEXAS MEDICAL BRANCH AT GALVESTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2335", + "label": "UNIVERSITY OF TEXAS OF THE PERMIAN BASIN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2337", + "label": "UNIVERSITY OF TEXAS AT AUSTIN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2339", + "label": "UNIVERSITY OF TEXAS SOUTHWESTERN MEDICAL CENTER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2341", + "label": "UNIVERSITY PARK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2343", + "label": "UPTON COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2345", + "label": "UNIVERSITY OF TEXAS HEALTH SCIENCE CENTER AT TYLER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2347", + "label": "UVALDE COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2348", + "label": "UVALDE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2349", + "label": "VAL VERDE COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2350", + "label": "VALLEY INTERNATIONAL AIRPORT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2351", + "label": "VALLEY MILLS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2352", + "label": "VALLEY VIEW POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2353", + "label": "VAN ALSTYNE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2356", + "label": "VAN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2357", + "label": "VAN ZANDT COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2360", + "label": "VENUS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2362", + "label": "VERNON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2364", + "label": "VICTORIA COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2365", + "label": "VICTORIA COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2366", + "label": "VICTORIA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2368", + "label": "VIDOR POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2370", + "label": "SALADO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2371", + "label": "WACO ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2372", + "label": "WACO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2373", + "label": "WAELDER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2374", + "label": "WAKE VILLAGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2377", + "label": "WALLER COUNTY CONSTABLE PRECINCT 2", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2378", + "label": "WALLER COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2379", + "label": "WALLER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2380", + "label": "WALLIS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2383", + "label": "WASHINGTON COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2384", + "label": "WASKOM POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2385", + "label": "WATAUGA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2386", + "label": "WAXAHACHIE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2388", + "label": "WEATHERFORD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2389", + "label": "WEBB COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2391", + "label": "WEBSTER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2392", + "label": "WEIMAR POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2394", + "label": "WELLS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2396", + "label": "WESLACO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2397", + "label": "WEST COLUMBIA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2398", + "label": "WEST LAKE HILLS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2399", + "label": "WEST ORANGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2400", + "label": "WEST POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2401", + "label": "WEST TAWAKONI POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2402", + "label": "WEST TEXAS A&M UNIVERSITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2406", + "label": "WEST UNIVERSITY PLACE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2410", + "label": "WESTOVER HILLS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2411", + "label": "WESTWORTH VILLAGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2412", + "label": "WHARTON COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2414", + "label": "WHARTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2415", + "label": "WHEELER COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2416", + "label": "WHITE DEER CITY MARSHAL'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2417", + "label": "WHITE OAK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2418", + "label": "WHITE SETTLEMENT ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2419", + "label": "WHITE SETTLEMENT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2420", + "label": "WHITEHOUSE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2421", + "label": "WHITESBORO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2422", + "label": "WHITEWRIGHT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2423", + "label": "WHITNEY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2424", + "label": "WICHITA COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2426", + "label": "WICHITA FALLS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2429", + "label": "WILLACY COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2430", + "label": "WILLIAMSON COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2432", + "label": "WILLIS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2433", + "label": "WILLOW PARK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2434", + "label": "WILLS POINT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2435", + "label": "WILMER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2437", + "label": "WILSON COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2439", + "label": "WINDCREST POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2442", + "label": "WINK POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2443", + "label": "WINKLER COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2445", + "label": "WINNSBORO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2446", + "label": "WINONA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2447", + "label": "WINTERS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2450", + "label": "WOLFE CITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2451", + "label": "WOLFFORTH POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2452", + "label": "WOOD COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2453", + "label": "WOODBRANCH POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2455", + "label": "WOODSBORO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2457", + "label": "WOODVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2458", + "label": "WOODWAY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2459", + "label": "WORTHAM POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2460", + "label": "WYLIE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2461", + "label": "YOAKUM COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2462", + "label": "YOAKUM POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2463", + "label": "YORKTOWN POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2464", + "label": "YOUNG COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2465", + "label": "ZAPATA COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2467", + "label": "ZAVALA COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2468", + "label": "ZAVALLA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2469", + "label": "HOUSTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2471", + "label": "DALLAS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2473", + "label": "SAN ANTONIO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2495", + "label": "ATASCOSA COUNTY CONSTABLE PRECINCT 3", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2499", + "label": "AUSTIN COUNTY CONSTABLE PRECINCT 3", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2507", + "label": "BANDERA COUNTY CONSTABLE PRECINCT 4", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2518", + "label": "BELL COUNTY CONSTABLE PRECINCT 4", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2521", + "label": "BEXAR COUNTY CONSTABLE PRECINCT 3", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2535", + "label": "BRAZORIA COUNTY CONSTABLE PRECINCT 3", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2536", + "label": "BRAZORIA COUNTY CONSTABLE PRECINCT 4", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2550", + "label": "BROWNWOOD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2555", + "label": "BURNET COUNTY CONSTABLE PRECINCT 1", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2557", + "label": "BURNET COUNTY CONSTABLE PRECINCT 4", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2586", + "label": "CHEROKEE COUNTY CONSTABLE PRECINCT 3", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2590", + "label": "COCHRAN COUNTY CONSTABLE PRECINCT 1", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2594", + "label": "COLLIN COUNTY CONSTABLE PRECINCT 1", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2596", + "label": "COLLIN COUNTY CONSTABLE PRECINCT 4", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2602", + "label": "COMAL COUNTY CONSTABLE PRECINCT 2", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2609", + "label": "COMMERCE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2656", + "label": "DUVAL COUNTY CONSTABLE PRECINCT 4", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2666", + "label": "EL PASO COUNTY CONSTABLE PRECINCT 1", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2667", + "label": "EL PASO COUNTY CONSTABLE PRECINCT 2", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2668", + "label": "EL PASO COUNTY CONSTABLE PRECINCT 3", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2669", + "label": "EL PASO COUNTY CONSTABLE PRECINCT 4", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2670", + "label": "EL PASO COUNTY CONSTABLE PRECINCT 5", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2671", + "label": "EL PASO COUNTY CONSTABLE PRECINCT 7", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2678", + "label": "FALLS COUNTY CONSTABLE PRECINCT 1", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2689", + "label": "FORT BEND COUNTY CONSTABLE PRECINCT 2", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2690", + "label": "FORT BEND COUNTY CONSTABLE PRECINCT 3", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2691", + "label": "FORT BEND COUNTY CONSTABLE PRECINCT 4", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2713", + "label": "GONZALES COUNTY CONSTABLE PRECINCT 1", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2715", + "label": "GONZALES COUNTY CONSTABLE PRECINCT 3", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2716", + "label": "GONZALES COUNTY CONSTABLE PRECINCT 4", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2719", + "label": "GRAYSON COUNTY CONSTABLE PRECINCT 1", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2741", + "label": "HARRIS COUNTY CONSTABLE PRECINCT 1", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2742", + "label": "HARRIS COUNTY CONSTABLE PRECINCT 2", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2743", + "label": "HARRIS COUNTY CONSTABLE PRECINCT 3", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2744", + "label": "HARRIS COUNTY CONSTABLE PRECINCT 4", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2745", + "label": "HARRIS COUNTY CONSTABLE PRECINCT 5", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2746", + "label": "HARRIS COUNTY CONSTABLE PRECINCT 6", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2747", + "label": "HARRIS COUNTY CONSTABLE PRECINCT 8", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2752", + "label": "HAYS COUNTY CONSTABLE PRECINCT 1", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2753", + "label": "HAYS COUNTY CONSTABLE PRECINCT 2", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2755", + "label": "HAYS COUNTY CONSTABLE PRECINCT 5", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2768", + "label": "HILL COUNTY CONSTABLE PRECINCT 4", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2779", + "label": "HOUSTON COUNTY CONSTABLE PRECINCT 2", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2789", + "label": "HUNT COUNTY CONSTABLE PRECINCT 4", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2831", + "label": "KENDALL COUNTY CONSTABLE PRECINCT 4", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2838", + "label": "KINNEY COUNTY CONSTABLE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2839", + "label": "KLEBERG COUNTY CONSTABLE PRECINCT 1", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2850", + "label": "LAMAR COUNTY CONSTABLE PRECINCT 2", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2870", + "label": "LIBERTY COUNTY CONSTABLE PRECINCT 2", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2871", + "label": "LIBERTY COUNTY CONSTABLE PRECINCT 3", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2872", + "label": "LIBERTY COUNTY CONSTABLE PRECINCT 4", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2873", + "label": "LIBERTY COUNTY CONSTABLE PRECINCT 5", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2874", + "label": "LIBERTY COUNTY CONSTABLE PRECINCT 6", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2885", + "label": "LUBBOCK COUNTY CONSTABLE PRECINCT 1", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2887", + "label": "LUBBOCK COUNTY CONSTABLE PRECINCT 3", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2920", + "label": "MONTGOMERY COUNTY CONSTABLE PRECINCT 1", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2921", + "label": "MONTGOMERY COUNTY CONSTABLE PRECINCT 2", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2922", + "label": "MONTGOMERY COUNTY CONSTABLE PRECINCT 3", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2923", + "label": "MONTGOMERY COUNTY CONSTABLE PRECINCT 4", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2924", + "label": "MONTGOMERY COUNTY CONSTABLE PRECINCT 5", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2939", + "label": "NUECES COUNTY CONSTABLE PRECINCT 1", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2940", + "label": "NUECES COUNTY CONSTABLE PRECINCT 2", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2941", + "label": "NUECES COUNTY CONSTABLE PRECINCT 3", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2942", + "label": "NUECES COUNTY CONSTABLE PRECINCT 5", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "2946", + "label": "OCHILTREE COUNTY CONSTABLE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3037", + "label": "SMITH COUNTY CONSTABLE PRECINCT 5", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3056", + "label": "TARRANT COUNTY CONSTABLE PRECINCT 4", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3060", + "label": "TARRANT COUNTY CONSTABLE PRECINCT 8", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3067", + "label": "TEXAS STATE TECHNICAL COLLEGE POLICE DEPARTMENT - SWEETWATER", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3073", + "label": "TRAVIS COUNTY CONSTABLE PRECINCT 1", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3074", + "label": "TRAVIS COUNTY CONSTABLE PRECINCT 2", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3075", + "label": "TRAVIS COUNTY CONSTABLE PRECINCT 3", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3076", + "label": "TRAVIS COUNTY CONSTABLE PRECINCT 4", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3078", + "label": "TRINITY COUNTY CONSTABLE PRECINCT 1", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3079", + "label": "TRINITY COUNTY CONSTABLE PRECINCT 2", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3080", + "label": "TRINITY COUNTY CONSTABLE PRECINCT 4", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3086", + "label": "UNIVERSITY OF TEXAS AT EL PASO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3087", + "label": "UNIVERSITY OF TEXAS AT HOUSTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3112", + "label": "WALKER COUNTY CONSTABLE PRECINCT 4", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3113", + "label": "WALLER COUNTY CONSTABLE PRECINCT 1", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3114", + "label": "WALLER COUNTY CONSTABLE PRECINCT 3", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3122", + "label": "WEBB COUNTY CONSTABLE PRECINCT 1", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3123", + "label": "WEBB COUNTY CONSTABLE PRECINCT 3", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3125", + "label": "WHARTON COUNTY CONSTABLE PRECINCT 2", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3126", + "label": "WHARTON COUNTY CONSTABLE PRECINCT 3", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3149", + "label": "WOOD COUNTY CONSTABLE PRECINCT 2", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3164", + "label": "BUDA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3165", + "label": "SOUTHWEST ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3166", + "label": "BUCKHOLTS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3167", + "label": "EASTFIELD COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3168", + "label": "LAREDO AIRPORT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3169", + "label": "LOWER COLORADO RIVER AUTHORITY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3170", + "label": "MONTGOMERY ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3171", + "label": "PANOLA COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3172", + "label": "TEXAS PARKS & WILDLIFE - STATE PARKS", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3173", + "label": "VINTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3174", + "label": "WHITE RIVER WATER DISTRICT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3175", + "label": "RENO POLICE DEPARTMENT (PARKER,TARRANT)", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3176", + "label": "FATE DEPARTMENT OF PUBLIC SAFETY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3177", + "label": "DALLAS COUNTY SCHOOLS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3178", + "label": "DALWORTHINGTON GARDENS DEPARTMENT OF PUBLIC SAFETY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3179", + "label": "HEATH DEPARTMENT OF PUBLIC SAFETY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3181", + "label": "HUGHES SPRINGS ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3183", + "label": "WAYLAND BAPTIST UNIVERSITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3184", + "label": "ALABAMA-COUSHATTA TRIBE OF TEXAS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3185", + "label": "ECTOR COUNTY HOSPITAL DISTRICT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3186", + "label": "SAN ANGELO REGIONAL AIRPORT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3187", + "label": "VAN ZANDT COUNTY FIRE MARSHAL'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3189", + "label": "CAMERON COUNTY PARK RANGER DIVISION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3190", + "label": "CYPRESS-FAIRBANKS ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3191", + "label": "MILANO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3193", + "label": "SOUTH TEXAS COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3194", + "label": "UNIVERSITY OF HOUSTON DEPARTMENT OF PUBLIC SAFETY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3195", + "label": "AUBREY ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3196", + "label": "TODD MISSION POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3198", + "label": "BRAZOSPORT ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3200", + "label": "DALHART ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3201", + "label": "ENCINAL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3202", + "label": "GOOSE CREEK CONSOLIDATED ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3203", + "label": "GRAYSON COUNTY COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3204", + "label": "HALLSVILLE ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3208", + "label": "MABANK ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3209", + "label": "PALESTINE CITY MARSHAL'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3210", + "label": "SLATON ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3211", + "label": "TEXAS A&M UNIVERSITY AT CENTRAL TEXAS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3212", + "label": "UNIVERSITY OF ST THOMAS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3214", + "label": "VEGA CITY MARSHAL'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3215", + "label": "VON ORMY CITY MARSHAL'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3217", + "label": "BASTROP ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3218", + "label": "ARGYLE ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3220", + "label": "MIDLAND COUNTY HOSPITAL DISTRICT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3221", + "label": "UNIVERSITY OF TEXAS RIO GRANDE VALLEY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3222", + "label": "FARMERSVILLE ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3223", + "label": "CISCO COLLEGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3224", + "label": "WALLER COUNTY DISTRICT ATTORNEY'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3225", + "label": "LOS INDIOS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3226", + "label": "REAL COUNTY CONSTABLE'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3227", + "label": "CORPUS CHRISTI INTERNATIONAL AIRPORT PUBLIC SAFETY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3229", + "label": "PROSPER ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3230", + "label": "IVANHOE CITY MARSHAL'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3231", + "label": "EUSTACE ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3232", + "label": "NORTH LAMAR ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3233", + "label": "CANUTILLO INDEPENDENT SCHOOL DISTRICT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3234", + "label": "CITY OF OAK RIDGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3235", + "label": "SOUTHWESTERN BAPTIST THEOLOGICAL SEMINARY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3236", + "label": "GONZALES ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3237", + "label": "HICO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3238", + "label": "JOSHUA ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3239", + "label": "DIMMITT ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3240", + "label": "WHITEWRIGHT ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3241", + "label": "VON ORMY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3242", + "label": "HITCHCOCK ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3243", + "label": "BRIARCLIFF POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3244", + "label": "HONEY GROVE ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3245", + "label": "ELM RIDGE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3246", + "label": "BELLS ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3247", + "label": "DUNCANVILLE ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3248", + "label": "RICHLAND POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3249", + "label": "KRUM ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3250", + "label": "UNIVERSITY OF NORTH TEXAS AT DALLAS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3251", + "label": "VALLEY VIEW ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3252", + "label": "BEEVILLE ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3253", + "label": "ODEM POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3254", + "label": "HOWE ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3255", + "label": "MELISSA ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3256", + "label": "OAK POINT DEPARTMENT OF PUBLIC SAFETY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3257", + "label": "ELLIS COUNTY CONSTABLE PRECINCT 3", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3258", + "label": "DALLAS COUNTY CONSTABLE PRECINCT 2", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3259", + "label": "WHITESBORO ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3260", + "label": "ANNA ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3261", + "label": "ALVARADO ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3262", + "label": "KAUFMAN COUNTY CONSTABLE PRECINCT 2", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3263", + "label": "WEBB COUNTY CONSTABLE PRECINCT 2", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3264", + "label": "OLDHAM COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3265", + "label": "TEAGUE ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3266", + "label": "VENUS ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3267", + "label": "LIBERTY HILL ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3268", + "label": "OUR LADY OF THE LAKE UNIVERSITY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3269", + "label": "TRINITY ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3270", + "label": "DODD CITY ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3271", + "label": "FORT BEND COUNTY CONSTABLE PRECINCT 1", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3272", + "label": "PHARR-SAN JUAN-ALAMO ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3273", + "label": "LONDON ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3274", + "label": "SUNNYVALE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3275", + "label": "SEYMOUR ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3276", + "label": "LUBBOCK COUNTY WATER CONTROL AND IMPROVEMENT DISTRICT #1 POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3277", + "label": "COCKRELL HILL CITY MARSHAL'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3278", + "label": "CITY VIEW ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3279", + "label": "FORNEY ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3280", + "label": "MANOR ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3281", + "label": "PECOS BARSTOW TOYAH ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3282", + "label": "ALMA POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3283", + "label": "FREER INDEPENDENT SCHOOL DISTRICT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3284", + "label": "SANDY OAKS MARSHAL'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3285", + "label": "CROWLEY ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3286", + "label": "COLUMBIA-BRAZORIA ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3287", + "label": "WALKER COUNTY CONSTABLE PRECINCT 3", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3288", + "label": "LAMAR CONSOLIDATED ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3289", + "label": "DELTA COUNTY CONSTABLE OFFICE PRECINCT 5", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3290", + "label": "MCMULLEN COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3291", + "label": "CAMERON COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3293", + "label": "UNIVERSITY MEDICAL CENTER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3294", + "label": "SAN MARCOS MARSHAL'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3295", + "label": "WASHINGTON COUNTY CONSTABLE PCT. 1", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3296", + "label": "LAKE TRAVIS ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3297", + "label": "SHELBY COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3298", + "label": "FREESTONE COUNTY CONSTABLE OFFICE PRECINCT 2", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3299", + "label": "JEFFERSON COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3300", + "label": "CROSS ROADS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3301", + "label": "GUADALUPE COUNTY CONSTABLE PRECINCT 1", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3302", + "label": "A+ CHARTER SCHOOLS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3303", + "label": "GALVESTON COUNTY CONSTABLE PRECINCT 4", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3304", + "label": "BURKBURNETT INDEPENDENT SCHOOL DISTRICT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3305", + "label": "LOCKNEY POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3306", + "label": "JOHNSON COUNTY CONSTABLE OFFICE PRECINCT 1", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3307", + "label": "KRUGERVILLE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3308", + "label": "WEST INDEPENDENT SCHOOL DISTRICT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3309", + "label": "PLUM GROVE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3310", + "label": "WASHINGTON COUNTY CONSTABLE OFFICE PRECINCT 2", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3311", + "label": "AMARILLO ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3312", + "label": "CHARLOTTE POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3313", + "label": "CENTER POINT ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3314", + "label": "SULPHUR SPRINGS ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3315", + "label": "SHERMAN ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3316", + "label": "DALLAS COUNTY CONSTABLE PRECINCT 5", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3318", + "label": "FULTON POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3319", + "label": "FLOUR BLUFF ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3320", + "label": "LUBBOCK COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3321", + "label": "METHODIST HEALTH SYSTEMS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3322", + "label": "WEST ORANGE-COVE CONSOLIDATED ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3323", + "label": "POLK COUNTY CONSTABLE PRECINCT 1", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3324", + "label": "LAREDO INTERNATIONAL AIRPORT PD", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3325", + "label": "SANDY OAKS POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3326", + "label": "STOCKDALE MARSHAL'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3327", + "label": "SAINT HEDWIG MARSHAL'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3328", + "label": "NEEDVILLE ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3329", + "label": "SANTA CLARA MARSHAL'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3330", + "label": "TERRY COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3331", + "label": "KICKAPOO TRIBAL POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3332", + "label": "EASTLAND COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3333", + "label": "HUFFMAN ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3334", + "label": "TEXAS TECH EL PASO POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3335", + "label": "IDALOU ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3336", + "label": "HILL COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3337", + "label": "CRANDALL ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3338", + "label": "EAGLE MOUNTAIN-SAGINAW ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3339", + "label": "WALKER COUNTY SHERIFF'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3340", + "label": "EDGEWOOD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3341", + "label": "SMILEY CITY MARSHAL'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3342", + "label": "SHEPHERD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3343", + "label": "HEMPSTEAD ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3344", + "label": "HALE CENTER POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3345", + "label": "SALADO INDEPENDENT SCHOOL DISTRICT POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3346", + "label": "WILLS POINT ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3347", + "label": "MAUD ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3348", + "label": "FROST POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3349", + "label": "SCURRY-ROSSER ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3350", + "label": "JARRELL ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3351", + "label": "PORT ARTHUR ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3352", + "label": "COOPER ISD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3353", + "label": "BLANCO COUNTY CONSTABLE OFFICE PRECINCT 4", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "3354", + "label": "GRIMES COUNTY CONSTABLE OFFICE PRECINCT 2", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "9999", + "label": "REQUIRES INTERPRETATION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10000", + "label": "DEPARTMENT OF PUBLIC SAFETY, STATE OF TEXAS", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10001", + "label": "DEPARTMENT OF TRANSPORTATION, STATE OF TEXAS", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10002", + "label": "NATIONAL HIGHWAY TRAFFIC SAFETY ADMINISTRATION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10003", + "label": "FEDERAL HIGHWAY ADMINISTRATION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10004", + "label": "US AIR FORCE LEGAL OPERATIONS AGENCY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10005", + "label": "US ARMY MEDICAL COMMAND", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10006", + "label": "US CONSUMER PRODUCT SAFETY COMMISSION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10007", + "label": "FORT HOOD CIVIL POLICE LIAISON", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10008", + "label": "JOINT BASE SAN ANTONIO FORT SAM HOUSTON POLICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10009", + "label": "TEXAS ARMY NATIONAL GUARD", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10010", + "label": "FEDERAL MOTOR CARRIER SAFETY ADMINISTRATION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10011", + "label": "NATIONAL INSTITUTE FOR OCCUPATIONAL SAFETY AND HEALTH", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10012", + "label": "UNION PACIFIC RAILROAD POLICE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10100", + "label": "DATA ENTRY VENDOR", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10101", + "label": "APPLICATION VERIFICATION AGENCY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10107", + "label": "TEXAS A&M TRANSPORTATION INSTITUTE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10108", + "label": "UNIVERSITY OF TEXAS CENTER FOR TRANSPORTATION RESEARCH", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10109", + "label": "CENTRAL TEXAS REGIONAL MOBILITY AUTHORITY (CTRMA)", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10110", + "label": "ABILENE METROPOLITAN PLANNING ORGANIZATION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10111", + "label": "ALAMO REGIONAL MOBILITY AUTHORITY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10112", + "label": "AMARILLO METROPOLITAN PLANNING ORGANIZATION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10113", + "label": "BROWNSVILLE METROPOLITAN PLANNING ORGANIZATION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10114", + "label": "BRYAN-COLLEGE STATION METROPOLITAN PLANNING ORGANIZATION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10115", + "label": "CAMERON COUNTY REGIONAL MOBILITY AUTHORITY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10116", + "label": "CAMINO REAL REGIONAL MOBILITY AUTHORITY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10117", + "label": "CAPITAL AREA METROPOLITAN PLANNING ORGANIZATION (CAMPO)", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10118", + "label": "CORPUS CHRISTIMETROPOLITAN PLANNING ORGANIZATION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10119", + "label": "EL PASO METROPOLITAN PLANNING ORGANIZATION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10120", + "label": "GRAYSON COUNTY REGIONAL MOBILITY AUTHORITY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10121", + "label": "HARLINGEN-SAN BENITO METROPOLITAN PLANNING ORGANIZATION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10122", + "label": "HIDALGO COUNTY METROPOLITAN PLANNING ORGANIZATION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10123", + "label": "HIDALGO COUNTY REGIONAL MOBILITY AUTHORITY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10124", + "label": "HOUSTON-GALVESTON AREA COUNCIL (H-GAC)", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10125", + "label": "KILLEEN-TEMPLE METROPOLITAN PLANNING ORGANIZATION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10126", + "label": "LAREDO METROPOLITAN PLANNING ORGANIZATION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10127", + "label": "LONGVIEW METROPOLITAN PLANNING ORGANIZATION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10128", + "label": "LUBBOCK METROPOLITAN PLANNING ORGANIZATION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10129", + "label": "MIDLAND-ODESSA METROPOLITAN PLANNING ORGANIZATION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10130", + "label": "NORTH CENTRAL TEXAS COUNCIL OF GOVERNMENTS (NCTCOG)", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10131", + "label": "NORTH EAST TEXAS REGIONAL MOBILITY AUTHORITY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10132", + "label": "SAN ANGELO METROPOLITAN PLANNING ORGANIZATION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10133", + "label": "SAN ANTONIO-BEXAR COUNTY METROPOLITAN PLANNING ORGANIZATION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10134", + "label": "SHERMAN-DENISON METROPOLITAN PLANNING ORGANIZATION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10135", + "label": "SOUTH EAST TEXAS REGIONAL PLANNING COMMISSION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10136", + "label": "SULPHUR SPRINGS REGIONAL MOBILITY AUTHORITY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10137", + "label": "TEXARKANA METROPOLITAN PLANNING ORGANIZATION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10138", + "label": "TYLER AREA METROPOLITAN PLANNING ORGANIZATION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10139", + "label": "VICTORIA METROPOLITAN PLANNING ORGANIZATION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10140", + "label": "WACO METROPOLITAN PLANNING ORGANIZATION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10141", + "label": "WICHITA FALLS METROPOLITAN PLANNING ORGANIZATION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10142", + "label": "CITY OF LUFKIN", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10143", + "label": "NORTH TEXAS TOLLWAY AUTHORITY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10144", + "label": "UNIVERSITY OF SAN ANTONIO", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10145", + "label": "ALAMO AREA MPO", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10146", + "label": "UNIVERSITY OF TEXAS AT EL PASO", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10147", + "label": "BRAZOS VALLEY COUNCIL OF GOVERNMENTS", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10148", + "label": "TEXAS ALCOHOLIC BEVERAGE COMMISSION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10150", + "label": "CITY OF NORTH RICHLAND HILLS", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10151", + "label": "CITY OF COLLEGE STATION", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10152", + "label": "HARRIS COUNTY ATTORNEYS OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10153", + "label": "CITY OF BRYAN", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10154", + "label": "HIDALGO COUNTY DISTRICT ATTORNEY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10155", + "label": "CITY OF MCKINNEY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10156", + "label": "CITY OF SUGAR LAND", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10157", + "label": "TRAVIS COUNTY COMMUNITY SUPERVISION AND CORRECTIONS DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10158", + "label": "TRAVIS COUNTY DISTRICT ATTORNEY'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10159", + "label": "CITY OF HOUSTON", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10160", + "label": "HARRIS COUNTY ENGINEERING DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10161", + "label": "CITY OF MIDLAND", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10162", + "label": "CITY OF CEDAR PARK", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10163", + "label": "BRIAR-RENO FIRE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10164", + "label": "BRAZOS COUNTY JUSTICE OF THE PEACE PRECINCT 2", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10165", + "label": "CITY OF AUSTIN - AUSTIN ENERGY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10166", + "label": "CITY OF RICHARDSON", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10167", + "label": "CITY OF CELINA", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10168", + "label": "NUECES COUNTY MEDICAL EXAMINER'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10169", + "label": "HELP DESK", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10170", + "label": "TRAVIS COUNTY-TNR-TE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10171", + "label": "ECTOR COUNTY PUBLIC WORKS DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10172", + "label": "TEXAS DEPARTMENT OF MOTOR VEHICLES", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10173", + "label": "TEXAS OFFICE OF ATTORNEY GENERAL", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10174", + "label": "TEXAS DEPARTMENT OF INSURANCE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10175", + "label": "WILLIAMSON COUNTY ATTORNEY'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10176", + "label": "CASS COUNTY DISTRICT ATTORNEY'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10177", + "label": "CITY OF AUSTIN - TRANSPORTATION DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10178", + "label": "CITY OF CORPUS CHRISTI STREET OPERATIONS", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10179", + "label": "TEXAS DEPARTMENT OF CRIMINAL JUSTICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10180", + "label": "ORANGE COUNTY - RISK MANAGEMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10181", + "label": "CITY OF SAN ANTONIO TRANSPORTATION AND CAPITAL IMPROVEMENTS", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10182", + "label": "BEXAR COUNTY DISTRICT ATTORNEY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10183", + "label": "CITY OF CORPUS CHRISTI", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10184", + "label": "CITY OF WACO", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10185", + "label": "FORT BEND COUNTY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10186", + "label": "WILLIAMSON COUNTY OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10187", + "label": "CITY OF FRISCO", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10188", + "label": "CITY OF MISSOURI CITY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10189", + "label": "MCLENNAN COUNTY DISTRICT ATTORNEY'S OFFICE IN WACO", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10190", + "label": "DALLAS COUNTY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10191", + "label": "HARRIS COUNTY DISTRICT ATTORNEY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10192", + "label": "CITY OF ALLEN", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10193", + "label": "TRAVIS COUNTY ATTORNEY'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10194", + "label": "CITY OF EL PASO", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10195", + "label": "CITY OF DALLAS", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10196", + "label": "CITY OF GRAND PRAIRIE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10197", + "label": "CITY OF BALCH SPRINGS", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10198", + "label": "TRAVIS COUNTY JUSTICE OF THE PEACE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10199", + "label": "CITY OF ABILENE ENGINEERING", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10200", + "label": "EXTRACT USERS", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10201", + "label": "FORT BEND COUNTY EMS", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10202", + "label": "CITY OF EAGLE PASS", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10203", + "label": "HILL COUNTY JUSTICE OF THE PEACE PRECINCT 4", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10204", + "label": "POLK COUNTY CRIMINAL DISTRICT ATTORNEY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10205", + "label": "CITY OF BROWNSVILLE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10206", + "label": "SAM HOUSTON STATE UNIVERSITY - OFFICE OF COMPLIANCE AND INSURANCE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10207", + "label": "FLINT-GRESHAM VOLUNTEER FIRE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10208", + "label": "BALCH SPRINGS FIRE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10210", + "label": "KEMAH MUNICIPAL COURT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10211", + "label": "HARRIS COUNTY INSTITUTE OF FORENSIC SCIENCES", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10212", + "label": "MONTGOMERY COUNTY DISTRICT ATTORNEY'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10213", + "label": "COLLIN COUNTY MEDICAL EXAMINER'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10214", + "label": "HENDERSON COUNTY DISTRICT ATTORNEY'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10215", + "label": "KERR COUNTY DISTRICT ATTORNEY'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10216", + "label": "CITY OF LUBBOCK", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10217", + "label": "FORT BEND COUNTY TOLL ROAD AUTHORITY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10218", + "label": "FARMERS BRANCH FIRE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10219", + "label": "GALVESTON COUNTY DISTRICT ATTORNEY'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10220", + "label": "CITY OF CARROLLTON", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10221", + "label": "CITY OF MESQUITE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10222", + "label": "CITY OF ARLINGTON", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10223", + "label": "TOM GREEN COUNTY", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10224", + "label": "FORT BEND COUNTY DISTRICT ATTORNEY'S OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10225", + "label": "PORTER FIRE DEPARTMENT", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10226", + "label": "LUBBOCK COUNTY MEDICAL EXAMINER OFFICE", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "10227", + "label": "MONTGOMERY COUNTY FORENSIC SERVICES", + "source": "cris", + "table_name": "agency_lkp" + }, + { + "id": "1", + "label": "ABERNATHY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2", + "label": "ABILENE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3", + "label": "ADDISON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4", + "label": "ALAMO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5", + "label": "ALAMO HEIGHTS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6", + "label": "ALICE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7", + "label": "ALLEN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8", + "label": "ALPINE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "9", + "label": "ALTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "10", + "label": "ALVARADO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "11", + "label": "ALVIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "12", + "label": "AMARILLO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "13", + "label": "ANDREWS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "14", + "label": "ANGLETON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "15", + "label": "ANSON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "16", + "label": "ANTHONY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "17", + "label": "ARANSAS PASS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "18", + "label": "ARGYLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "19", + "label": "ARLINGTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "20", + "label": "ATHENS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "21", + "label": "ATLANTA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "22", + "label": "AUSTIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "23", + "label": "AZLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "24", + "label": "BALCH SPRINGS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "25", + "label": "BALCONES HEIGHTS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "26", + "label": "BALLINGER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "27", + "label": "BASTROP", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "28", + "label": "BAY CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "29", + "label": "BAYTOWN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "30", + "label": "BEAUMONT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "31", + "label": "BEDFORD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "32", + "label": "BEEVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "33", + "label": "BELLAIRE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "34", + "label": "BELLMEAD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "35", + "label": "BELLVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "36", + "label": "BELTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "37", + "label": "BENBROOK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "38", + "label": "BIG LAKE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "39", + "label": "BIG SPRING", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "40", + "label": "BISHOP", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "41", + "label": "BOERNE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "42", + "label": "BONHAM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "43", + "label": "BORGER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "44", + "label": "BOWIE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "45", + "label": "BRADY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "46", + "label": "BRAZORIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "47", + "label": "BRECKENRIDGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "48", + "label": "BRENHAM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "49", + "label": "BRIDGE CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "50", + "label": "BRIDGEPORT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "51", + "label": "BROOKSHIRE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "52", + "label": "BROWNFIELD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "53", + "label": "BROWNSVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "54", + "label": "BROWNWOOD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "55", + "label": "BRYAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "56", + "label": "BUDA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "57", + "label": "BUNKER HILL VILLAGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "58", + "label": "BURKBURNETT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "59", + "label": "BURLESON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "60", + "label": "BURNET", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "61", + "label": "CACTUS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "62", + "label": "CALDWELL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "63", + "label": "CAMERON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "64", + "label": "CANTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "65", + "label": "CANYON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "66", + "label": "CARRIZO SPRINGS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "67", + "label": "CARROLLTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "68", + "label": "CARTHAGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "69", + "label": "CASTLE HILLS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "70", + "label": "CASTROVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "71", + "label": "CEDAR HILL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "72", + "label": "CEDAR PARK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "73", + "label": "CENTER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "74", + "label": "CHILDRESS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "75", + "label": "CIBOLO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "76", + "label": "CISCO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "77", + "label": "CLARKSVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "78", + "label": "CLEBURNE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "79", + "label": "CLEVELAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "80", + "label": "CLIFTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "81", + "label": "CLUTE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "82", + "label": "CLYDE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "83", + "label": "COCKRELL HILL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "84", + "label": "COLEMAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "85", + "label": "COLLEGE STATION", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "86", + "label": "COLLEYVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "87", + "label": "COLORADO CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "88", + "label": "COLUMBUS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "89", + "label": "COMANCHE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "90", + "label": "COMBES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "91", + "label": "COMMERCE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "92", + "label": "CONROE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "93", + "label": "CONVERSE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "94", + "label": "COPPELL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "95", + "label": "COPPERAS COVE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "96", + "label": "CORINTH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "97", + "label": "CORPUS CHRISTI", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "98", + "label": "CORSICANA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "99", + "label": "COTULLA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "100", + "label": "CRANDALL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "101", + "label": "CRANE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "102", + "label": "CROCKETT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "103", + "label": "CROWLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "104", + "label": "CRYSTAL CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "105", + "label": "CUERO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "106", + "label": "DALHART", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "107", + "label": "DALLAS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "108", + "label": "DAYTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "109", + "label": "DESOTO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "110", + "label": "DECATUR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "111", + "label": "DEER PARK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "112", + "label": "DEL RIO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "113", + "label": "DENISON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "114", + "label": "DENTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "115", + "label": "DENVER CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "116", + "label": "DEVINE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "117", + "label": "DIBOLL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "118", + "label": "DICKINSON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "119", + "label": "DILLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "120", + "label": "DIMMITT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "121", + "label": "DONNA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "122", + "label": "DUBLIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "123", + "label": "DUMAS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "124", + "label": "DUNCANVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "125", + "label": "EAGLE LAKE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "126", + "label": "EAGLE PASS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "127", + "label": "EARLY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "128", + "label": "EASTLAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "129", + "label": "EDCOUCH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "130", + "label": "EDEN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "131", + "label": "EDGECLIFF VILLAGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "132", + "label": "EDINBURG", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "133", + "label": "EDNA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "134", + "label": "EL CAMPO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "135", + "label": "EL LAGO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "136", + "label": "EL PASO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "137", + "label": "ELECTRA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "138", + "label": "ELGIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "139", + "label": "ELSA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "140", + "label": "ENNIS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "141", + "label": "EULESS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "142", + "label": "EVERMAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "143", + "label": "FAIR OAKS RANCH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "144", + "label": "FAIRFIELD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "145", + "label": "FAIRVIEW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "146", + "label": "FALFURRIAS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "147", + "label": "FARMERS BRANCH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "148", + "label": "FARMERSVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "149", + "label": "FERRIS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "150", + "label": "FLORESVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "151", + "label": "FLOWER MOUND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "152", + "label": "FLOYDADA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "153", + "label": "FOREST HILL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "154", + "label": "FORNEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "155", + "label": "FORT STOCKTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "156", + "label": "FORT WORTH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "157", + "label": "FREDERICKSBURG", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "158", + "label": "FREEPORT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "159", + "label": "FREER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "160", + "label": "FRIENDSWOOD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "161", + "label": "FRIONA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "162", + "label": "FRISCO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "163", + "label": "GAINESVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "164", + "label": "GALENA PARK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "165", + "label": "GALVESTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "166", + "label": "GARLAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "167", + "label": "GATESVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "168", + "label": "GEORGE WEST", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "169", + "label": "GEORGETOWN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "170", + "label": "GIDDINGS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "171", + "label": "GILMER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "172", + "label": "GLADEWATER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "173", + "label": "GLENN HEIGHTS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "174", + "label": "GONZALES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "175", + "label": "GRAHAM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "176", + "label": "GRANBURY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "177", + "label": "GRAND PRAIRIE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "178", + "label": "GRAND SALINE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "179", + "label": "GRAPEVINE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "180", + "label": "GREENVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "181", + "label": "GROESBECK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "182", + "label": "GROVES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "183", + "label": "GUN BARREL CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "184", + "label": "HALLETTSVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "185", + "label": "HALLSVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "186", + "label": "HALTOM CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "187", + "label": "HAMILTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "188", + "label": "HARKER HEIGHTS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "189", + "label": "HARLINGEN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "190", + "label": "HASKELL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "191", + "label": "HEARNE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "192", + "label": "HEATH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "193", + "label": "HELOTES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "194", + "label": "HEMPSTEAD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "195", + "label": "HENDERSON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "196", + "label": "HENRIETTA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "197", + "label": "HEREFORD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "198", + "label": "HEWITT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "199", + "label": "HIDALGO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "200", + "label": "HIGHLAND PARK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "201", + "label": "HIGHLAND VILLAGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "202", + "label": "HILLSBORO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "203", + "label": "HITCHCOCK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "204", + "label": "HOLLYWOOD PARK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "205", + "label": "HONDO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "206", + "label": "HOOKS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "207", + "label": "HORIZON CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "208", + "label": "HOUSTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "209", + "label": "HOWE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "210", + "label": "HUDSON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "211", + "label": "HUMBLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "212", + "label": "HUNTERS CREEK VILLAGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "213", + "label": "HUNTSVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "214", + "label": "HURST", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "215", + "label": "HUTCHINS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "216", + "label": "INGLESIDE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "217", + "label": "IOWA PARK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "218", + "label": "IRVING", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "219", + "label": "JACINTO CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "220", + "label": "JACKSBORO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "221", + "label": "JACKSONVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "222", + "label": "JASPER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "223", + "label": "JERSEY VILLAGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "224", + "label": "JOSHUA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "225", + "label": "JOURDANTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "226", + "label": "JUNCTION", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "227", + "label": "KARNES CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "228", + "label": "KATY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "229", + "label": "KAUFMAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "230", + "label": "KEENE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "231", + "label": "KELLER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "232", + "label": "KENNEDALE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "233", + "label": "KERMIT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "234", + "label": "KERRVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "235", + "label": "KILGORE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "236", + "label": "KILLEEN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "237", + "label": "KINGSVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "238", + "label": "KIRBY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "239", + "label": "KYLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "240", + "label": "LA FERIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "241", + "label": "LA GRANGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "242", + "label": "LA JOYA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "243", + "label": "LA MARQUE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "244", + "label": "LA PORTE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "245", + "label": "LACY-LAKEVIEW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "246", + "label": "LAGO VISTA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "247", + "label": "LAKE DALLAS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "248", + "label": "LAKE JACKSON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "249", + "label": "LAKE WORTH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "250", + "label": "LAKEWAY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "251", + "label": "LAMESA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "252", + "label": "LAMPASAS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "253", + "label": "LANCASTER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "254", + "label": "LAREDO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "255", + "label": "LEAGUE CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "256", + "label": "LEANDER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "257", + "label": "LEON VALLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "258", + "label": "LEVELLAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "259", + "label": "LEWISVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "260", + "label": "LIBERTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "261", + "label": "LINDALE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "262", + "label": "LITTLE ELM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "263", + "label": "LITTLEFIELD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "264", + "label": "LIVE OAK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "265", + "label": "LIVINGSTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "266", + "label": "LLANO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "267", + "label": "LOCKHART", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "268", + "label": "LONGVIEW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "269", + "label": "LOS FRESNOS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "270", + "label": "LUBBOCK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "271", + "label": "LUCAS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "272", + "label": "LUFKIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "273", + "label": "LULING", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "274", + "label": "LUMBERTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "275", + "label": "LYTLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "276", + "label": "MADISONVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "277", + "label": "MANSFIELD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "278", + "label": "MANVEL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "279", + "label": "MARBLE FALLS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "280", + "label": "MARLIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "281", + "label": "MARSHALL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "282", + "label": "MATHIS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "283", + "label": "MCALLEN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "284", + "label": "MCGREGOR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "285", + "label": "MCKINNEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "286", + "label": "MEADOW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "287", + "label": "MERCEDES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "288", + "label": "MERKEL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "289", + "label": "MESQUITE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "290", + "label": "MEXIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "291", + "label": "MIDLAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "292", + "label": "MIDLOTHIAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "293", + "label": "MINEOLA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "294", + "label": "MINERAL WELLS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "295", + "label": "MISSION", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "296", + "label": "MISSOURI CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "297", + "label": "MONAHANS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "298", + "label": "MONT BELVIEU", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "299", + "label": "MORGAN'S POINT RESORT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "300", + "label": "MOUNT PLEASANT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "301", + "label": "MULESHOE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "302", + "label": "MURPHY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "303", + "label": "NACOGDOCHES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "304", + "label": "NASSAU BAY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "305", + "label": "NAVASOTA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "306", + "label": "NEDERLAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "307", + "label": "NEEDVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "308", + "label": "NEW BOSTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "309", + "label": "NEW BRAUNFELS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "310", + "label": "NOCONA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "311", + "label": "NOLANVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "312", + "label": "NORTH RICHLAND HILLS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "313", + "label": "OAK RIDGE NORTH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "314", + "label": "ODEM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "315", + "label": "ODESSA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "316", + "label": "OLNEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "317", + "label": "ORANGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "318", + "label": "OVILLA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "319", + "label": "PALACIOS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "320", + "label": "PALESTINE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "321", + "label": "PALMVIEW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "322", + "label": "PAMPA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "323", + "label": "CHULA VISTA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "324", + "label": "PARIS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "325", + "label": "PASADENA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "326", + "label": "PEARLAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "327", + "label": "PEARSALL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "328", + "label": "PECOS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "329", + "label": "PERRYTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "330", + "label": "PFLUGERVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "331", + "label": "PHARR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "332", + "label": "PILOT POINT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "333", + "label": "PINEY POINT VILLAGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "334", + "label": "PITTSBURG", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "335", + "label": "PLAINVIEW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "336", + "label": "PLANO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "337", + "label": "PLEASANTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "338", + "label": "PORT ARANSAS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "339", + "label": "PORT ARTHUR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "340", + "label": "PORT ISABEL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "341", + "label": "PORT LAVACA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "342", + "label": "PORT NECHES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "343", + "label": "PORTLAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "344", + "label": "POST", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "345", + "label": "POTEET", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "346", + "label": "PRAIRIE VIEW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "347", + "label": "PREMONT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "348", + "label": "PRESIDIO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "349", + "label": "PRIMERA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "350", + "label": "PRINCETON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "351", + "label": "PROGRESO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "352", + "label": "QUANAH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "353", + "label": "RANGER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "354", + "label": "RAYMONDVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "355", + "label": "RED OAK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "356", + "label": "REFUGIO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "357", + "label": "RICHARDSON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "358", + "label": "RICHLAND HILLS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "359", + "label": "RICHMOND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "360", + "label": "RICHWOOD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "361", + "label": "RIO BRAVO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "362", + "label": "RIO GRANDE CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "363", + "label": "RIVER OAKS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "364", + "label": "ROANOKE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "365", + "label": "ROBINSON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "366", + "label": "ROBSTOWN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "367", + "label": "ROCKDALE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "368", + "label": "ROCKPORT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "369", + "label": "ROCKWALL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "370", + "label": "ROMA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "371", + "label": "ROSENBERG", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "372", + "label": "ROUND ROCK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "373", + "label": "ROWLETT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "374", + "label": "ROYSE CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "375", + "label": "RUSK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "376", + "label": "SACHSE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "377", + "label": "SAGINAW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "378", + "label": "SAN ANGELO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "379", + "label": "SAN ANTONIO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "380", + "label": "SAN BENITO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "381", + "label": "SAN DIEGO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "382", + "label": "SAN JUAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "383", + "label": "SAN MARCOS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "384", + "label": "SAN SABA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "385", + "label": "SANGER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "386", + "label": "SANSOM PARK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "387", + "label": "SANTA FE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "388", + "label": "SANTA ROSA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "389", + "label": "SCHERTZ", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "390", + "label": "SCHULENBURG", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "391", + "label": "SEABROOK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "392", + "label": "SEAGOVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "393", + "label": "SEALY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "394", + "label": "SEGUIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "395", + "label": "SEMINOLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "396", + "label": "SEYMOUR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "397", + "label": "SHERMAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "398", + "label": "SILSBEE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "399", + "label": "SINTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "400", + "label": "SLATON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "401", + "label": "SMITHVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "402", + "label": "SNYDER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "403", + "label": "SOCORRO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "404", + "label": "SONORA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "405", + "label": "SOUTH HOUSTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "406", + "label": "SOUTHLAKE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "407", + "label": "SPEARMAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "408", + "label": "SPRING VALLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "409", + "label": "STAFFORD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "410", + "label": "STAMFORD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "411", + "label": "STANTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "412", + "label": "STEPHENVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "413", + "label": "SUGAR LAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "414", + "label": "SULLIVAN CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "415", + "label": "SULPHUR SPRINGS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "416", + "label": "SUNNYVALE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "417", + "label": "SWEENY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "418", + "label": "SWEETWATER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "419", + "label": "TAFT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "420", + "label": "TAHOKA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "421", + "label": "TAYLOR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "422", + "label": "TAYLOR LAKE VILLAGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "423", + "label": "TEAGUE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "424", + "label": "TEMPLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "425", + "label": "TERRELL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "426", + "label": "TERRELL HILLS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "427", + "label": "TEXARKANA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "428", + "label": "TEXAS CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "429", + "label": "THE COLONY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "430", + "label": "TOMBALL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "431", + "label": "TRINITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "432", + "label": "TROPHY CLUB", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "433", + "label": "TULIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "434", + "label": "TYLER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "435", + "label": "UNIVERSAL CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "436", + "label": "UNIVERSITY PARK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "437", + "label": "UVALDE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "438", + "label": "VAN ALSTYNE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "439", + "label": "VERNON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "440", + "label": "VICTORIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "441", + "label": "VIDOR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "442", + "label": "WACO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "443", + "label": "WAKE VILLAGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "444", + "label": "WATAUGA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "445", + "label": "WAXAHACHIE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "446", + "label": "WEATHERFORD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "447", + "label": "WEBSTER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "448", + "label": "WESLACO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "449", + "label": "WEST", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "450", + "label": "WEST COLUMBIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "451", + "label": "WEST LAKE HILLS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "452", + "label": "WEST ORANGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "453", + "label": "WEST UNIVERSITY PLACE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "454", + "label": "WHARTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "455", + "label": "WHITE OAK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "456", + "label": "WHITE SETTLEMENT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "457", + "label": "WHITEHOUSE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "458", + "label": "WHITESBORO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "459", + "label": "WICHITA FALLS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "460", + "label": "WILLIS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "461", + "label": "WILLOW PARK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "462", + "label": "WILLS POINT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "463", + "label": "WILMER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "464", + "label": "WINDCREST", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "465", + "label": "WINNSBORO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "466", + "label": "WINTERS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "467", + "label": "WOODWAY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "468", + "label": "WYLIE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "469", + "label": "YOAKUM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "470", + "label": "ABBOTT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "471", + "label": "CHULA VISTA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "472", + "label": "ACKERLY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "473", + "label": "ADRIAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "474", + "label": "AGUA DULCE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "475", + "label": "CHULA VISTA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "476", + "label": "ALBA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "477", + "label": "ALBANY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "478", + "label": "ALDINE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "479", + "label": "ALEDO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "480", + "label": "COYOTE FLATS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "481", + "label": "HILLTOP", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "482", + "label": "ALMA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "483", + "label": "ALTO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "484", + "label": "HILLTOP", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "485", + "label": "LANGTRY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "486", + "label": "ALVORD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "487", + "label": "AMES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "488", + "label": "AMHERST", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "489", + "label": "ANAHUAC", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "490", + "label": "ANDERSON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "491", + "label": "LANTANA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "492", + "label": "ANGUS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "493", + "label": "ANNA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "494", + "label": "ANNETTA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "495", + "label": "ANNETTA NORTH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "496", + "label": "ANNETTA SOUTH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "497", + "label": "ANNONA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "498", + "label": "ANTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "499", + "label": "APPLEBY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "500", + "label": "AQUILLA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "501", + "label": "ARCHER CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "502", + "label": "ARCOLA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "503", + "label": "ARP", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "504", + "label": "LOMA LINDA EAST", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "505", + "label": "LOS EBANOS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "506", + "label": "MAPLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "507", + "label": "ASHERTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "508", + "label": "ASPERMONT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "509", + "label": "MAPLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "510", + "label": "AUBREY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "511", + "label": "AURORA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "512", + "label": "AUSTWELL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "513", + "label": "AVERY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "514", + "label": "AVINGER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "515", + "label": "BACLIFF", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "516", + "label": "BAILEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "517", + "label": "BAILEY'S PRAIRIE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "518", + "label": "BAIRD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "519", + "label": "BALMORHEA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "520", + "label": "BANDERA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "521", + "label": "BANGS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "522", + "label": "BARDWELL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "523", + "label": "BARRETT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "524", + "label": "BARRY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "525", + "label": "BARSTOW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "526", + "label": "BARTLETT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "527", + "label": "MEDINA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "528", + "label": "BARTONVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "529", + "label": "BATESVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "530", + "label": "NEW YORK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "531", + "label": "BAYOU VISTA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "532", + "label": "BAYSIDE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "533", + "label": "BAYVIEW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "534", + "label": "BEACH CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "535", + "label": "BEAR CREEK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "536", + "label": "BEASLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "537", + "label": "BECKVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "538", + "label": "BEE CAVE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "539", + "label": "BELLEVUE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "540", + "label": "BELLS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "541", + "label": "BENAVIDES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "542", + "label": "BENJAMIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "543", + "label": "BERRYVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "544", + "label": "BERTRAM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "545", + "label": "BEVERLY HILLS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "546", + "label": "BEVIL OAKS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "547", + "label": "BIG SANDY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "548", + "label": "BIG WELLS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "549", + "label": "BIGFOOT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "550", + "label": "BISHOP HILLS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "551", + "label": "VERIBEST", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "552", + "label": "BLACKWELL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "553", + "label": "BLANCO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "554", + "label": "BLANKET", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "555", + "label": "BLESSING", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "556", + "label": "BLOOMBURG", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "557", + "label": "BLOOMING GROVE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "558", + "label": "BLOOMINGTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "559", + "label": "BLOSSOM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "561", + "label": "BLUE MOUND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "562", + "label": "BLUE RIDGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "564", + "label": "BLUM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "565", + "label": "BOGATA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "566", + "label": "BOLING-IAGO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "567", + "label": "BOLIVAR PENINSULA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "568", + "label": "BONNEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "569", + "label": "BOOKER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "571", + "label": "BOVINA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "573", + "label": "BOYD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "574", + "label": "BRACKETTVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "575", + "label": "BREMOND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "576", + "label": "BRIAR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "577", + "label": "BRIARCLIFF", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "578", + "label": "BRIAROAKS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "579", + "label": "BROADDUS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "580", + "label": "BRONTE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "581", + "label": "BROOKSIDE VILLAGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "582", + "label": "BROWNDELL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "583", + "label": "BROWNSBORO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "584", + "label": "BRUCEVILLE-EDDY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "585", + "label": "BRUNDAGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "586", + "label": "BRUNI", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "588", + "label": "BRYSON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "589", + "label": "BUCHANAN DAM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "590", + "label": "BUCKHOLTS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "591", + "label": "BUFFALO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "592", + "label": "BUFFALO GAP", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "593", + "label": "BUFFALO SPRINGS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "594", + "label": "BULLARD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "595", + "label": "BULVERDE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "596", + "label": "BUNA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "597", + "label": "BURKE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "598", + "label": "BURTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "600", + "label": "BYERS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "601", + "label": "BYNUM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "602", + "label": "CADDO MILLS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "603", + "label": "CALLISBURG", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "604", + "label": "CALVERT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "605", + "label": "CAMERON PARK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "607", + "label": "CAMP WOOD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "608", + "label": "CAMPBELL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "609", + "label": "CANADIAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "610", + "label": "CANEY CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "612", + "label": "CANUTILLO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "613", + "label": "CANYON LAKE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "614", + "label": "CARBON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "615", + "label": "CARL'S CORNER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "616", + "label": "CARMINE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "618", + "label": "CATARINA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "619", + "label": "CELESTE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "620", + "label": "CELINA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "621", + "label": "CENTERVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "624", + "label": "CHANDLER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "625", + "label": "CHANNELVIEW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "626", + "label": "CHANNING", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "627", + "label": "CHARLOTTE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "628", + "label": "CHESTER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "629", + "label": "CHICO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "630", + "label": "CHILLICOTHE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "631", + "label": "CHINA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "632", + "label": "CHINA GROVE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "633", + "label": "CHIRENO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "634", + "label": "CHRISTINE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "635", + "label": "CHRISTOVAL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "642", + "label": "CLARENDON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "643", + "label": "CLARKSVILLE CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "644", + "label": "CLAUDE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "645", + "label": "CLEAR LAKE SHORES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "646", + "label": "CLINT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "647", + "label": "CLOVERLEAF", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "648", + "label": "COAHOMA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "649", + "label": "COFFEE CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "650", + "label": "COLDSPRING", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "651", + "label": "COLLINSVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "652", + "label": "COLMESNEIL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "653", + "label": "COMBINE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "654", + "label": "COMFORT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "655", + "label": "COMO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "656", + "label": "CONCEPCION", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "657", + "label": "COOL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "658", + "label": "COOLIDGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "659", + "label": "COOPER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "660", + "label": "COPPER CANYON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "661", + "label": "CORRAL CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "662", + "label": "CORRIGAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "663", + "label": "COTTONWOOD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "664", + "label": "COTTONWOOD SHORES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "665", + "label": "COVE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "666", + "label": "COVINGTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "669", + "label": "CRANFILLS GAP", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "670", + "label": "CRAWFORD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "671", + "label": "CREEDMOOR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "672", + "label": "CROSBY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "673", + "label": "CROSBYTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "675", + "label": "CROSS PLAINS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "676", + "label": "CROSS ROADS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "678", + "label": "CROWELL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "680", + "label": "CUMBY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "682", + "label": "CUNEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "683", + "label": "CUSHING", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "684", + "label": "CUT AND SHOOT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "685", + "label": "DAINGERFIELD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "686", + "label": "DAISETTA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "687", + "label": "DALWORTHINGTON GARDENS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "688", + "label": "DAMON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "689", + "label": "DANBURY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "690", + "label": "DARROUZETT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "691", + "label": "DAWSON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "692", + "label": "DAYTON LAKES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "693", + "label": "DE KALB", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "694", + "label": "DE LEON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "695", + "label": "DEAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "698", + "label": "DELL CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "699", + "label": "DEPORT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "700", + "label": "DETROIT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "701", + "label": "DEVERS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "702", + "label": "DEWEYVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "703", + "label": "DICKENS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "704", + "label": "DODD CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "705", + "label": "DODSON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "707", + "label": "DOMINO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "709", + "label": "DORCHESTER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "710", + "label": "DOUBLE OAK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "711", + "label": "DOUGLASSVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "713", + "label": "DRIPPING SPRINGS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "714", + "label": "DRISCOLL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "716", + "label": "EARTH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "717", + "label": "EAST BERNARD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "718", + "label": "EAST MOUNTAIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "719", + "label": "EAST TAWAKONI", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "720", + "label": "EASTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "721", + "label": "ECTOR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "723", + "label": "EDGEWOOD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "724", + "label": "EDMONSON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "725", + "label": "EDOM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "726", + "label": "EDROY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "729", + "label": "EL CENIZO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "730", + "label": "EL INDIO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "732", + "label": "ELBERT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "733", + "label": "ELDORADO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "734", + "label": "ELKHART", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "736", + "label": "ELMENDORF", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "737", + "label": "EMHOUSE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "738", + "label": "EMORY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "739", + "label": "ENCANTADA-RANCHITO-EL CALABOZ", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "740", + "label": "ENCHANTED OAKS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "741", + "label": "ENCINAL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "742", + "label": "ENCINO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "743", + "label": "ESCOBARES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "744", + "label": "ESTELLINE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "745", + "label": "EUREKA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "746", + "label": "EUSTACE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "747", + "label": "EVADALE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "748", + "label": "EVANT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "749", + "label": "FABENS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "750", + "label": "FAIRCHILDS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "751", + "label": "FALCON HEIGHTS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "755", + "label": "FALLS CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "757", + "label": "FARWELL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "758", + "label": "FATE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "759", + "label": "FAYETTEVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "760", + "label": "FAYSVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "762", + "label": "FLATONIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "763", + "label": "FLORENCE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "765", + "label": "FOLLETT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "766", + "label": "FORSAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "767", + "label": "FORT BLISS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "768", + "label": "FORT DAVIS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "769", + "label": "FORT HANCOCK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "770", + "label": "FORT HOOD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "772", + "label": "FOWLERTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "773", + "label": "FRANKLIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "774", + "label": "FRANKSTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "775", + "label": "FRESNO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "776", + "label": "FRITCH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "777", + "label": "FRONTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "778", + "label": "FROST", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "779", + "label": "FRUITVALE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "780", + "label": "FULSHEAR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "781", + "label": "FULTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "782", + "label": "GALLATIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "783", + "label": "GANADO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "784", + "label": "GARCENO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "785", + "label": "GARDEN RIDGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "786", + "label": "GARDENDALE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "788", + "label": "GARRETT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "789", + "label": "GARRISON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "790", + "label": "GARY CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "791", + "label": "GERONIMO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "792", + "label": "GHOLSON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "793", + "label": "GIRARD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "794", + "label": "GLEN ROSE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "795", + "label": "GODLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "796", + "label": "GOLDSMITH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "797", + "label": "GOLDTHWAITE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "798", + "label": "GOLIAD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "799", + "label": "GOLINDA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "800", + "label": "GOODLOW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "801", + "label": "GOODRICH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "802", + "label": "GORDON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "803", + "label": "GOREE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "804", + "label": "GRAFORD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "805", + "label": "GORMAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "807", + "label": "GRANDFALLS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "808", + "label": "GRANDVIEW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "809", + "label": "GRANGER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "810", + "label": "GRANITE SHOALS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "811", + "label": "GRANJENO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "813", + "label": "GRAPELAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "814", + "label": "GRAYS PRAIRIE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "817", + "label": "GREGORY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "818", + "label": "GREY FOREST", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "819", + "label": "GROOM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "820", + "label": "GROVETON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "821", + "label": "GRUVER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "823", + "label": "GUNTER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "824", + "label": "GUSTINE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "825", + "label": "HACKBERRY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "826", + "label": "HALE CENTER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "827", + "label": "HALLSBURG", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "828", + "label": "HAMLIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "829", + "label": "HAPPY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "830", + "label": "HARDIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "831", + "label": "HARPER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "832", + "label": "HART", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "833", + "label": "HARTLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "834", + "label": "HASLET", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "835", + "label": "HAVANA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "837", + "label": "HAWKINS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "838", + "label": "HAWLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "839", + "label": "HAYS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "840", + "label": "HEBBRONVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "841", + "label": "HEBRON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "842", + "label": "HEDLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "843", + "label": "HEDWIG VILLAGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "844", + "label": "HEIDELBERG", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "845", + "label": "HEMPHILL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "846", + "label": "HERMLEIGH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "847", + "label": "HICKORY CREEK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "848", + "label": "HICO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "849", + "label": "HIGGINS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "851", + "label": "HIGHLANDS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "852", + "label": "HILL COUNTRY VILLAGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "855", + "label": "HILSHIRE VILLAGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "856", + "label": "HOLIDAY LAKES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "857", + "label": "HOLLAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "858", + "label": "HOLLIDAY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "861", + "label": "HONEY GROVE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "862", + "label": "HORSESHOE BAY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "863", + "label": "HOWARDWICK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "864", + "label": "HUBBARD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "866", + "label": "HUDSON OAKS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "867", + "label": "HUGHES SPRINGS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "868", + "label": "HUNGERFORD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "869", + "label": "HUNTINGTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "870", + "label": "HUTTO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "871", + "label": "HUXLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "872", + "label": "IDALOU", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "873", + "label": "IMPACT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "874", + "label": "IMPERIAL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "876", + "label": "INDIAN LAKE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "877", + "label": "INDUSTRY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "878", + "label": "INEZ", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "879", + "label": "INGLESIDE ON THE BAY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "880", + "label": "INGRAM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "881", + "label": "IOWA COLONY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "882", + "label": "IRAAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "883", + "label": "IREDELL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "884", + "label": "ITALY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "885", + "label": "ITASCA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "886", + "label": "JAMAICA BEACH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "887", + "label": "JAYTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "888", + "label": "JEFFERSON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "889", + "label": "JEWETT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "890", + "label": "JOAQUIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "891", + "label": "JOHNSON CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "892", + "label": "JOLLY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "894", + "label": "JONES CREEK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "895", + "label": "JONESTOWN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "896", + "label": "JOSEPHINE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "897", + "label": "JUSTIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "899", + "label": "KEMAH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "900", + "label": "KEMP", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "901", + "label": "KEMPNER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "902", + "label": "KENDLETON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "903", + "label": "KENEDY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "904", + "label": "KENEFICK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "905", + "label": "KENNARD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "906", + "label": "KERENS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "907", + "label": "KINGSBURY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "908", + "label": "KINGSLAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "909", + "label": "KIRBYVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "910", + "label": "KIRVIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "911", + "label": "KNIPPA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "912", + "label": "KNOLLWOOD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "913", + "label": "KNOX CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "914", + "label": "KOSSE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "915", + "label": "KOUNTZE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "916", + "label": "KRESS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "917", + "label": "KRUGERVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "918", + "label": "KRUM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "919", + "label": "LA BLANCA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "922", + "label": "LA GRULLA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "924", + "label": "LA PALOMA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "927", + "label": "LA PRYOR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "928", + "label": "LA PUERTA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "930", + "label": "LA VERNIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "932", + "label": "LA VILLA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "933", + "label": "LA WARD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "936", + "label": "LADONIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "938", + "label": "LAGUNA HEIGHTS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "940", + "label": "LAGUNA VISTA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "941", + "label": "LAKE BRIDGEPORT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "943", + "label": "LAKE CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "944", + "label": "LAKE KIOWA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "945", + "label": "LAKE TANGLEWOOD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "947", + "label": "LAKEHILLS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "948", + "label": "LAKEPORT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "950", + "label": "LAKESIDE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "951", + "label": "LAKESIDE CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "952", + "label": "LAKEVIEW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "953", + "label": "LAKEWOOD VILLAGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "962", + "label": "LASARA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "963", + "label": "LATEXO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "965", + "label": "LAURELES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "966", + "label": "LAVON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "967", + "label": "LAWN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "968", + "label": "LEAKEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "969", + "label": "LEARY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "970", + "label": "LEFORS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "971", + "label": "LEONA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "972", + "label": "LEONARD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "973", + "label": "LEROY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "974", + "label": "LEXINGTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "975", + "label": "LIBERTY CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "976", + "label": "LIBERTY HILL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "977", + "label": "LINCOLN PARK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "978", + "label": "LINDEN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "979", + "label": "LINDSAY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "980", + "label": "LIPAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "981", + "label": "LIPSCOMB", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "982", + "label": "LITTLE RIVER-ACADEMY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "983", + "label": "LIVERPOOL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "985", + "label": "LOCKNEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "986", + "label": "LOG CABIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "987", + "label": "LOLITA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "989", + "label": "LOMETA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "990", + "label": "LONE OAK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "991", + "label": "LONE STAR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "992", + "label": "LOPENO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "993", + "label": "LOPEZVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "994", + "label": "LORAINE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "995", + "label": "LORENA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "996", + "label": "LORENZO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "998", + "label": "LOS ANGELES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "999", + "label": "LOS EBANOS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1000", + "label": "LOS INDIOS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1002", + "label": "LOS YBANEZ", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1004", + "label": "LOTT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1005", + "label": "LOUISE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1006", + "label": "LOVELADY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1007", + "label": "LOWRY CROSSING", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1008", + "label": "LOZANO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1009", + "label": "LUEDERS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1010", + "label": "LYFORD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1012", + "label": "MABANK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1013", + "label": "MAGNOLIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1014", + "label": "MALAKOFF", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1015", + "label": "MALONE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1016", + "label": "MANOR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1017", + "label": "MARATHON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1018", + "label": "MARFA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1019", + "label": "MARIETTA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1020", + "label": "MARION", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1021", + "label": "MARKHAM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1022", + "label": "MARQUEZ", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1023", + "label": "MARSHALL CREEK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1024", + "label": "MART", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1025", + "label": "MARTINDALE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1026", + "label": "MASON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1027", + "label": "MATADOR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1028", + "label": "MAUD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1029", + "label": "MAURICEVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1030", + "label": "MAYPEARL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1031", + "label": "MCCAMEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1032", + "label": "MCLEAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1033", + "label": "MCLENDON-CHISHOLM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1034", + "label": "MCQUEENEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1035", + "label": "MEADOWLAKES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1037", + "label": "MEDINA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1038", + "label": "MEGARGEL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1039", + "label": "MELISSA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1040", + "label": "MELVIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1041", + "label": "MEMPHIS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1042", + "label": "MENARD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1043", + "label": "MERIDIAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1044", + "label": "MERTENS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1045", + "label": "MERTZON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1046", + "label": "MIAMI", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1047", + "label": "MIDWAY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1051", + "label": "MILAM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1052", + "label": "MILANO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1053", + "label": "MILDRED", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1054", + "label": "MILES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1055", + "label": "MILFORD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1056", + "label": "MILLER'S COVE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1057", + "label": "MILLICAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1058", + "label": "MILLSAP", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1059", + "label": "MINGUS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1060", + "label": "MIRANDO CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1061", + "label": "MISSION BEND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1062", + "label": "MOBEETIE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1064", + "label": "MONTE ALTO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1065", + "label": "MONTGOMERY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1066", + "label": "MOODY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1067", + "label": "MOORE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1068", + "label": "MOORE STATION", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1070", + "label": "MORAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1071", + "label": "MORGAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1073", + "label": "MORGAN'S POINT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1075", + "label": "MORSE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1076", + "label": "MORTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1077", + "label": "MOULTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1078", + "label": "MOUNT CALM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1079", + "label": "MOUNT ENTERPRISE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1080", + "label": "MOUNT VERNON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1081", + "label": "MOUNTAIN CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1082", + "label": "MUENSTER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1083", + "label": "MULLIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1084", + "label": "MUNDAY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1086", + "label": "MURCHISON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1088", + "label": "MUSTANG RIDGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1089", + "label": "NAPLES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1090", + "label": "NASH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1091", + "label": "NATALIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1092", + "label": "NAVARRO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1093", + "label": "NAZARETH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1094", + "label": "NESBITT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1095", + "label": "NEVADA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1096", + "label": "NEW BERLIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1097", + "label": "NEW CHAPEL HILL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1098", + "label": "NEW DEAL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1101", + "label": "NEW HOME", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1102", + "label": "NEW HOPE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1103", + "label": "NEW LONDON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1104", + "label": "NEW SUMMERFIELD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1106", + "label": "NEW WAVERLY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1107", + "label": "NEWARK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1108", + "label": "NEWCASTLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1109", + "label": "NEWTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1110", + "label": "NEYLANDVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1111", + "label": "NIEDERWALD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1112", + "label": "NIXON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1113", + "label": "NOME", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1114", + "label": "NOONDAY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1115", + "label": "NORDHEIM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1116", + "label": "NORMANGEE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1117", + "label": "NORMANNA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1119", + "label": "NORTH CLEVELAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1124", + "label": "NORTHLAKE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1125", + "label": "NOVICE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1127", + "label": "OAK GROVE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1129", + "label": "OAK POINT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1130", + "label": "OAK RIDGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1131", + "label": "OAK TRAIL SHORES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1132", + "label": "OAK VALLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1133", + "label": "OAKHURST", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1134", + "label": "OAKWOOD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1135", + "label": "O'BRIEN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1136", + "label": "O'DONNELL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1137", + "label": "OGLESBY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1138", + "label": "OILTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1139", + "label": "OLD RIVER-WINFREE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1141", + "label": "OLMITO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1142", + "label": "OLMOS PARK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1143", + "label": "OLTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1144", + "label": "OMAHA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1145", + "label": "ONALASKA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1147", + "label": "OPDYKE WEST", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1148", + "label": "ORANGE GROVE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1149", + "label": "ORCHARD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1150", + "label": "ORE CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1151", + "label": "OVERTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1153", + "label": "OYSTER CREEK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1154", + "label": "OZONA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1155", + "label": "PADUCAH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1156", + "label": "PAINT ROCK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1158", + "label": "PALM VALLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1159", + "label": "PALMER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1160", + "label": "PALMHURST", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1162", + "label": "PANORAMA VILLAGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1163", + "label": "PANTEGO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1164", + "label": "PARADISE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1165", + "label": "PARKER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1166", + "label": "PATTISON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1167", + "label": "PATTON VILLAGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1168", + "label": "PAWNEE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1169", + "label": "PAYNE SPRINGS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1171", + "label": "PECAN GAP", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1173", + "label": "PECAN HILL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1175", + "label": "PELICAN BAY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1176", + "label": "PENELOPE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1177", + "label": "PENITAS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1178", + "label": "PERNITAS POINT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1179", + "label": "PETERSBURG", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1180", + "label": "PETROLIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1181", + "label": "PETRONILA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1182", + "label": "PETTUS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1183", + "label": "PINE FOREST", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1184", + "label": "PINE ISLAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1185", + "label": "PINEHURST", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1186", + "label": "PINELAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1188", + "label": "PLAINS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1189", + "label": "PLEAK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1190", + "label": "PLEASANT VALLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1191", + "label": "PLUM GROVE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1192", + "label": "POINT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1193", + "label": "POINT BLANK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1194", + "label": "POINT COMFORT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1195", + "label": "PONDER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1196", + "label": "PORT MANSFIELD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1197", + "label": "PORTER HEIGHTS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1199", + "label": "POTH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1200", + "label": "POTOSI", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1201", + "label": "POTTSBORO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1202", + "label": "POWELL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1203", + "label": "POYNOR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1205", + "label": "PROGRESO LAKES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1206", + "label": "PROSPER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1207", + "label": "PUTNAM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1208", + "label": "PYOTE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1211", + "label": "QUEMADO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1212", + "label": "QUINLAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1213", + "label": "QUINTANA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1214", + "label": "QUITAQUE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1215", + "label": "QUITMAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1217", + "label": "RALLS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1223", + "label": "RANCHO VIEJO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1225", + "label": "RANGERVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1226", + "label": "RANKIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1227", + "label": "RANSOM CANYON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1229", + "label": "RAVENNA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1230", + "label": "REALITOS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1231", + "label": "RED LICK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1232", + "label": "REDFORD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1233", + "label": "REDWATER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1234", + "label": "REDWOOD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1237", + "label": "REKLAW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1239", + "label": "RENDON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1240", + "label": "RENO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1241", + "label": "RETREAT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1242", + "label": "RHOME", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1243", + "label": "RICE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1244", + "label": "RICHLAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1245", + "label": "RICHLAND SPRINGS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1246", + "label": "RIESEL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1247", + "label": "RIO HONDO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1248", + "label": "RIO VISTA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1249", + "label": "RISING STAR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1250", + "label": "RIVERSIDE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1251", + "label": "ROARING SPRINGS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1252", + "label": "ROBERT LEE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1253", + "label": "ROBY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1254", + "label": "ROCHESTER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1255", + "label": "ROCKSPRINGS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1256", + "label": "ROCKY MOUND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1257", + "label": "ROGERS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1258", + "label": "ROLLINGWOOD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1260", + "label": "ROMAN FOREST", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1261", + "label": "ROPESVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1262", + "label": "ROSCOE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1263", + "label": "ROSE CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1264", + "label": "ROSE HILL ACRES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1265", + "label": "ROSEBUD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1268", + "label": "ROSS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1269", + "label": "ROSSER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1270", + "label": "ROTAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1271", + "label": "ROUND MOUNTAIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1272", + "label": "ROUND TOP", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1273", + "label": "ROXTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1274", + "label": "RULE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1275", + "label": "RUNAWAY BAY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1276", + "label": "RUNGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1277", + "label": "SABINAL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1278", + "label": "SADLER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1279", + "label": "SALADO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1282", + "label": "SAN AUGUSTINE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1283", + "label": "SAN CARLOS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1284", + "label": "SAN ELIZARIO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1285", + "label": "SAN FELIPE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1287", + "label": "SAN ISIDRO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1288", + "label": "SAN LEANNA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1289", + "label": "SAN LEON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1291", + "label": "SAN PATRICIO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1292", + "label": "SAN PEDRO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1293", + "label": "SAN PERLITA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1295", + "label": "SANDERSON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1296", + "label": "SANDIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1298", + "label": "SANFORD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1299", + "label": "SANTA ANNA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1301", + "label": "SANTA CRUZ", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1302", + "label": "SANTA MARIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1303", + "label": "SANTA MONICA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1304", + "label": "SAVOY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1305", + "label": "SCENIC OAKS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1307", + "label": "SCOTLAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1308", + "label": "SCOTTSVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1309", + "label": "SEADRIFT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1310", + "label": "SEAGRAVES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1311", + "label": "SEBASTIAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1312", + "label": "SELMA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1315", + "label": "SEVEN OAKS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1316", + "label": "SEVEN POINTS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1318", + "label": "SHADY SHORES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1319", + "label": "SHALLOWATER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1320", + "label": "SHAMROCK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1321", + "label": "SHAVANO PARK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1322", + "label": "SHELDON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1323", + "label": "SHENANDOAH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1324", + "label": "SHEPHERD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1325", + "label": "SHINER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1326", + "label": "SHOREACRES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1328", + "label": "SIERRA BLANCA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1330", + "label": "SILVERTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1331", + "label": "SIMONTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1332", + "label": "SKELLYTOWN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1333", + "label": "SKIDMORE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1334", + "label": "SMILEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1335", + "label": "SMYER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1336", + "label": "SNOOK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1338", + "label": "SOMERSET", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1339", + "label": "SOMERVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1340", + "label": "SOUR LAKE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1343", + "label": "SOUTH MOUNTAIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1344", + "label": "SOUTH PADRE ISLAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1347", + "label": "SOUTHMAYD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1348", + "label": "SOUTHSIDE PLACE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1349", + "label": "SPADE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1351", + "label": "SPLENDORA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1352", + "label": "SPOFFORD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1353", + "label": "SPRING", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1355", + "label": "SPRINGLAKE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1356", + "label": "SPRINGTOWN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1357", + "label": "SPUR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1358", + "label": "ST. HEDWIG", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1361", + "label": "STAGECOACH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1362", + "label": "STAR HARBOR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1363", + "label": "STERLING CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1364", + "label": "STINNETT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1365", + "label": "STOCKDALE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1366", + "label": "STONEWALL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1367", + "label": "STOWELL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1368", + "label": "STRATFORD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1369", + "label": "STRAWN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1370", + "label": "STREETMAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1371", + "label": "STUDY BUTTE-TERLINGUA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1372", + "label": "SUDAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1373", + "label": "SUN VALLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1374", + "label": "SUNDOWN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1375", + "label": "SUNRAY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1376", + "label": "SUNRISE BEACH VILLAGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1377", + "label": "SUNSET", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1378", + "label": "SUNSET VALLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1379", + "label": "SURFSIDE BEACH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1381", + "label": "TALCO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1382", + "label": "TALTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1383", + "label": "TATUM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1384", + "label": "TEHUACANA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1385", + "label": "TENAHA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1386", + "label": "TEXHOMA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1387", + "label": "TEXLINE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1388", + "label": "VILLAGE OF THE HILLS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1389", + "label": "THE WOODLANDS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1390", + "label": "THOMPSONS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1391", + "label": "THORNDALE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1392", + "label": "THORNTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1393", + "label": "THORNTONVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1394", + "label": "THRALL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1395", + "label": "THREE RIVERS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1396", + "label": "THROCKMORTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1399", + "label": "TIKI ISLAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1400", + "label": "TIMBERCREEK CANYON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1402", + "label": "TIMPSON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1403", + "label": "TIOGA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1404", + "label": "TIRA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1405", + "label": "TOCO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1406", + "label": "TODD MISSION", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1407", + "label": "TOLAR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1408", + "label": "TOM BEAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1409", + "label": "TOOL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1410", + "label": "TORNILLO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1411", + "label": "TOYAH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1413", + "label": "TRENT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1414", + "label": "TRENTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1415", + "label": "TRINIDAD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1416", + "label": "TROUP", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1417", + "label": "TROY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1418", + "label": "TULETA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1419", + "label": "TULSITA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1420", + "label": "TURKEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1421", + "label": "TUSCOLA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1422", + "label": "TYE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1423", + "label": "TYNAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1424", + "label": "UHLAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1425", + "label": "UNCERTAIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1426", + "label": "UNION GROVE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1427", + "label": "UTOPIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1430", + "label": "VALENTINE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1431", + "label": "VALLEY MILLS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1432", + "label": "VALLEY VIEW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1433", + "label": "VAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1434", + "label": "VAN HORN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1435", + "label": "VAN VLECK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1436", + "label": "VANDERBILT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1437", + "label": "VEGA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1438", + "label": "VENUS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1442", + "label": "VINTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1443", + "label": "WAELDER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1444", + "label": "WALLER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1445", + "label": "WALLIS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1446", + "label": "WALNUT SPRINGS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1447", + "label": "WARREN CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1448", + "label": "WASKOM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1449", + "label": "WEIMAR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1450", + "label": "WEINERT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1451", + "label": "WEIR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1452", + "label": "WELLINGTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1453", + "label": "WELLMAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1454", + "label": "WELLS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1457", + "label": "WEST ODESSA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1460", + "label": "WEST TAWAKONI", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1461", + "label": "WESTBROOK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1463", + "label": "WESTLAKE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1464", + "label": "WESTMINSTER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1465", + "label": "WESTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1466", + "label": "WESTOVER HILLS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1467", + "label": "WESTWAY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1468", + "label": "WESTWORTH VILLAGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1469", + "label": "WHEELER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1470", + "label": "WHITE DEER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1471", + "label": "WHITEFACE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1472", + "label": "WHITEWRIGHT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1473", + "label": "WHITNEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1474", + "label": "WICKETT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1476", + "label": "WILLAMAR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1477", + "label": "WILSON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1478", + "label": "WIMBERLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1480", + "label": "WINDOM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1481", + "label": "WINDTHORST", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1482", + "label": "WINFIELD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1483", + "label": "WINK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1484", + "label": "WINNIE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1485", + "label": "WINONA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1486", + "label": "WIXON VALLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1487", + "label": "WOLFE CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1488", + "label": "WOLFFORTH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1489", + "label": "WOODBRANCH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1490", + "label": "WOODCREEK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1491", + "label": "WOODLOCH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1492", + "label": "WOODSBORO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1493", + "label": "WOODSON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1494", + "label": "WOODVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1495", + "label": "WORTHAM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1497", + "label": "YANTIS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1498", + "label": "YORKTOWN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1500", + "label": "ZAPATA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1502", + "label": "ZAVALLA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1503", + "label": "ZUEHL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1505", + "label": "MANCHACA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1506", + "label": "NEW CANEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1508", + "label": "NORTHCREST", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1511", + "label": "SAINT JO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1513", + "label": "BEDIAS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1514", + "label": "BLEDSOE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1515", + "label": "BLUFF DALE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1516", + "label": "BRONSON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1517", + "label": "CAMPBELLTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1518", + "label": "CASON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1520", + "label": "CENTER POINT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1521", + "label": "CHAPPELL HILL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1522", + "label": "CHILTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1524", + "label": "CRESSON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1525", + "label": "DEL VALLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1527", + "label": "ELLINGER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1528", + "label": "ELM MOTT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1530", + "label": "GAIL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1531", + "label": "GARDEN CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1532", + "label": "HOCKLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1534", + "label": "IOLA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1535", + "label": "KINGWOOD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1536", + "label": "LEMING", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1537", + "label": "LILLIAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1538", + "label": "LYONS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1539", + "label": "MIDFIELD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1540", + "label": "NEW ULM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1542", + "label": "D'HANIS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1543", + "label": "OVALO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1546", + "label": "PORT BOLIVAR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1550", + "label": "RICHARDS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1551", + "label": "ROANS PRAIRIE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1552", + "label": "ROWENA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1553", + "label": "SABINE PASS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1554", + "label": "ST. PAUL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1555", + "label": "SAYERS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1556", + "label": "SINGLETON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1558", + "label": "TILDEN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1560", + "label": "WASHBURN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1561", + "label": "WELCH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1562", + "label": "WELLBORN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1565", + "label": "WILDORADO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1566", + "label": "RURAL ANDERSON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1567", + "label": "RURAL ANDREWS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1568", + "label": "RURAL ANGELINA COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1569", + "label": "RURAL ARANSAS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1570", + "label": "RURAL ARCHER COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1571", + "label": "RURAL ARMSTRONG COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1572", + "label": "RURAL ATASCOSA COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1573", + "label": "RURAL AUSTIN COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1574", + "label": "RURAL BAILEY COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1575", + "label": "RURAL BANDERA COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1576", + "label": "RURAL BASTROP COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1577", + "label": "RURAL BAYLOR COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1578", + "label": "RURAL BEE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1579", + "label": "RURAL BELL COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1580", + "label": "RURAL BEXAR COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1581", + "label": "RURAL BLANCO COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1582", + "label": "RURAL BORDEN COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1583", + "label": "RURAL BOSQUE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1584", + "label": "RURAL BOWIE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1585", + "label": "RURAL BRAZORIA COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1586", + "label": "RURAL BRAZOS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1587", + "label": "RURAL BREWSTER COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1588", + "label": "RURAL BRISCOE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1589", + "label": "RURAL BROOKS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1590", + "label": "RURAL BROWN COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1591", + "label": "RURAL BURLESON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1592", + "label": "RURAL BURNET COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1593", + "label": "RURAL CALDWELL COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1594", + "label": "RURAL CALHOUN COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1595", + "label": "RURAL CALLAHAN COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1596", + "label": "RURAL CAMERON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1597", + "label": "RURAL CAMP COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1598", + "label": "RURAL CARSON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1599", + "label": "RURAL CASS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1600", + "label": "RURAL CASTRO COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1601", + "label": "RURAL CHAMBERS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1602", + "label": "RURAL CHEROKEE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1603", + "label": "RURAL CHILDRESS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1604", + "label": "RURAL CLAY COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1605", + "label": "RURAL COCHRAN COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1606", + "label": "RURAL COKE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1607", + "label": "RURAL COLEMAN COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1608", + "label": "RURAL COLLIN COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1609", + "label": "RURAL COLLINGSWORTH COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1610", + "label": "RURAL COLORADO COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1611", + "label": "RURAL COMAL COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1612", + "label": "RURAL COMANCHE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1613", + "label": "RURAL CONCHO COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1614", + "label": "RURAL COOKE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1615", + "label": "RURAL CORYELL COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1616", + "label": "RURAL COTTLE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1617", + "label": "RURAL CRANE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1618", + "label": "RURAL CROCKETT COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1619", + "label": "RURAL CROSBY COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1620", + "label": "RURAL CULBERSON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1621", + "label": "RURAL DALLAM COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1622", + "label": "RURAL DALLAS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1623", + "label": "RURAL DAWSON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1624", + "label": "RURAL DEAF SMITH COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1625", + "label": "RURAL DELTA COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1626", + "label": "RURAL DENTON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1627", + "label": "RURAL DEWITT COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1628", + "label": "RURAL DICKENS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1629", + "label": "RURAL DIMMIT COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1630", + "label": "RURAL DONLEY COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1631", + "label": "RURAL DUVAL COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1632", + "label": "RURAL EASTLAND COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1633", + "label": "RURAL ECTOR COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1634", + "label": "RURAL EDWARDS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1635", + "label": "RURAL EL PASO COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1636", + "label": "RURAL ELLIS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1637", + "label": "RURAL ERATH COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1638", + "label": "RURAL FALLS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1639", + "label": "RURAL FANNIN COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1640", + "label": "RURAL FAYETTE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1641", + "label": "RURAL FISHER COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1642", + "label": "RURAL FLOYD COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1643", + "label": "RURAL FOARD COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1644", + "label": "RURAL FORT BEND COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1645", + "label": "RURAL FRANKLIN COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1646", + "label": "RURAL FREESTONE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1647", + "label": "RURAL FRIO COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1648", + "label": "RURAL GAINES COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1649", + "label": "RURAL GALVESTON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1650", + "label": "RURAL GARZA COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1651", + "label": "RURAL GILLESPIE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1652", + "label": "RURAL GLASSCOCK COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1653", + "label": "RURAL GOLIAD COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1654", + "label": "RURAL GONZALES COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1655", + "label": "RURAL GRAY COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1656", + "label": "RURAL GRAYSON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1657", + "label": "RURAL GREGG COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1658", + "label": "RURAL GRIMES COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1659", + "label": "RURAL GUADALUPE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1660", + "label": "RURAL HALE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1661", + "label": "RURAL HALL COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1662", + "label": "RURAL HAMILTON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1663", + "label": "RURAL HANSFORD COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1664", + "label": "RURAL HARDEMAN COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1665", + "label": "RURAL HARDIN COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1666", + "label": "RURAL HARRIS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1667", + "label": "RURAL HARRISON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1668", + "label": "RURAL HARTLEY COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1669", + "label": "RURAL HASKELL COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1670", + "label": "RURAL HAYS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1671", + "label": "RURAL HEMPHILL COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1672", + "label": "RURAL HENDERSON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1673", + "label": "RURAL HIDALGO COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1674", + "label": "RURAL HILL COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1675", + "label": "RURAL HOCKLEY COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1676", + "label": "RURAL HOOD COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1677", + "label": "RURAL HOPKINS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1678", + "label": "RURAL HOUSTON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1679", + "label": "RURAL HOWARD COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1680", + "label": "RURAL HUDSPETH COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1681", + "label": "RURAL HUNT COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1682", + "label": "RURAL HUTCHINSON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1683", + "label": "RURAL IRION COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1684", + "label": "RURAL JACK COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1685", + "label": "RURAL JACKSON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1686", + "label": "RURAL JASPER COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1687", + "label": "RURAL JEFF DAVIS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1688", + "label": "RURAL JEFFERSON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1689", + "label": "RURAL JIM HOGG COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1690", + "label": "RURAL JIM WELLS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1691", + "label": "RURAL JOHNSON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1692", + "label": "RURAL JONES COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1693", + "label": "RURAL KARNES COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1694", + "label": "RURAL KAUFMAN COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1695", + "label": "RURAL KENDALL COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1696", + "label": "RURAL KENEDY COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1697", + "label": "RURAL KENT COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1698", + "label": "RURAL KERR COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1699", + "label": "RURAL KIMBLE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1700", + "label": "RURAL KING COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1701", + "label": "RURAL KINNEY COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1702", + "label": "RURAL KLEBERG COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1703", + "label": "RURAL KNOX COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1704", + "label": "RURAL LAMAR COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1705", + "label": "RURAL LAMB COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1706", + "label": "RURAL LAMPASAS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1707", + "label": "RURAL LA SALLE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1708", + "label": "RURAL LAVACA COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1709", + "label": "RURAL LEE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1710", + "label": "RURAL LEON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1711", + "label": "RURAL LIBERTY COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1712", + "label": "RURAL LIMESTONE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1713", + "label": "RURAL LIPSCOMB COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1714", + "label": "RURAL LIVE OAK COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1715", + "label": "RURAL LLANO COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1716", + "label": "RURAL LOVING COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1717", + "label": "RURAL LUBBOCK COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1718", + "label": "RURAL LYNN COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1719", + "label": "RURAL MADISON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1720", + "label": "RURAL MARION COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1721", + "label": "RURAL MARTIN COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1722", + "label": "RURAL MASON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1723", + "label": "RURAL MATAGORDA COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1724", + "label": "RURAL MAVERICK COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1725", + "label": "RURAL MCCULLOCH COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1726", + "label": "RURAL MCLENNAN COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1727", + "label": "RURAL MCMULLEN COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1728", + "label": "RURAL MEDINA COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1729", + "label": "RURAL MENARD COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1730", + "label": "RURAL MIDLAND COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1731", + "label": "RURAL MILAM COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1732", + "label": "RURAL MILLS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1733", + "label": "RURAL MITCHELL COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1734", + "label": "RURAL MONTAGUE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1735", + "label": "RURAL MONTGOMERY COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1736", + "label": "RURAL MOORE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1737", + "label": "RURAL MORRIS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1738", + "label": "RURAL MOTLEY COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1739", + "label": "RURAL NACOGDOCHES COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1740", + "label": "RURAL NAVARRO COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1741", + "label": "RURAL NEWTON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1742", + "label": "RURAL NOLAN COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1743", + "label": "RURAL NUECES COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1744", + "label": "RURAL OCHILTREE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1745", + "label": "RURAL OLDHAM COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1746", + "label": "RURAL ORANGE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1747", + "label": "RURAL PALO PINTO COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1748", + "label": "RURAL PANOLA COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1749", + "label": "RURAL PARKER COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1750", + "label": "RURAL PARMER COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1751", + "label": "RURAL PECOS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1752", + "label": "RURAL POLK COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1753", + "label": "RURAL POTTER COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1754", + "label": "RURAL PRESIDIO COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1755", + "label": "RURAL RAINS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1756", + "label": "RURAL RANDALL COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1757", + "label": "RURAL REAGAN COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1758", + "label": "RURAL REAL COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1759", + "label": "RURAL RED RIVER COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1760", + "label": "RURAL REEVES COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1761", + "label": "RURAL REFUGIO COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1762", + "label": "RURAL ROBERTS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1763", + "label": "RURAL ROBERTSON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1764", + "label": "RURAL ROCKWALL COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1765", + "label": "RURAL RUNNELS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1766", + "label": "RURAL RUSK COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1767", + "label": "RURAL SABINE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1768", + "label": "RURAL SAN AUGUSTINE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1769", + "label": "RURAL SAN JACINTO COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1770", + "label": "RURAL SAN PATRICIO COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1771", + "label": "RURAL SAN SABA COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1772", + "label": "RURAL SCHLEICHER COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1773", + "label": "RURAL SCURRY COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1774", + "label": "RURAL SHACKELFORD COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1775", + "label": "RURAL SHELBY COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1776", + "label": "RURAL SHERMAN COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1777", + "label": "RURAL SMITH COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1778", + "label": "RURAL SOMERVELL COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1779", + "label": "RURAL STARR COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1780", + "label": "RURAL STEPHENS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1781", + "label": "RURAL STERLING COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1782", + "label": "RURAL STONEWALL COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1783", + "label": "RURAL SUTTON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1784", + "label": "RURAL SWISHER COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1785", + "label": "RURAL TARRANT COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1786", + "label": "RURAL TAYLOR COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1787", + "label": "RURAL TERRELL COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1788", + "label": "RURAL TERRY COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1789", + "label": "RURAL THROCKMORTON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1790", + "label": "RURAL TITUS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1791", + "label": "RURAL TOM GREEN COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1792", + "label": "RURAL TRAVIS COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1793", + "label": "RURAL TRINITY COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1794", + "label": "RURAL TYLER COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1795", + "label": "RURAL UPSHUR COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1796", + "label": "RURAL UPTON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1797", + "label": "RURAL UVALDE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1798", + "label": "RURAL VAL VERDE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1799", + "label": "RURAL VAN ZANDT COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1800", + "label": "RURAL VICTORIA COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1801", + "label": "RURAL WALKER COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1802", + "label": "RURAL WALLER COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1803", + "label": "RURAL WARD COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1804", + "label": "RURAL WASHINGTON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1805", + "label": "RURAL WEBB COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1806", + "label": "RURAL WHARTON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1807", + "label": "RURAL WHEELER COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1808", + "label": "RURAL WICHITA COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1809", + "label": "RURAL WILBARGER COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1810", + "label": "RURAL WILLACY COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1811", + "label": "RURAL WILLIAMSON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1812", + "label": "RURAL WILSON COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1813", + "label": "RURAL WINKLER COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1814", + "label": "RURAL WISE COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1815", + "label": "RURAL WOOD COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1816", + "label": "RURAL YOAKUM COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1817", + "label": "RURAL YOUNG COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1818", + "label": "RURAL ZAPATA COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1819", + "label": "RURAL ZAVALA COUNTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1820", + "label": "MACDONA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1821", + "label": "SAN GERONIMO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1824", + "label": "SUTHERLAND SPRINGS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1860", + "label": "ADKINS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1870", + "label": "AGNES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1873", + "label": "AGUILARES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1896", + "label": "ALANREED", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1915", + "label": "ALEXANDER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1921", + "label": "ALFRED", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1922", + "label": "ALGERITA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1923", + "label": "ALGOA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1925", + "label": "ALICE ACRES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1926", + "label": "ALIEF", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1938", + "label": "ALLEYTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1953", + "label": "ALTAIR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1954", + "label": "ALTO BONITO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1969", + "label": "SANDY OAKS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1977", + "label": "AMSTERDAM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1985", + "label": "ANDICE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2014", + "label": "APPLE SPRINGS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2051", + "label": "ARROYO CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2054", + "label": "ARTESIA WELLS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2055", + "label": "ARTHUR CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2057", + "label": "ASA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2066", + "label": "ASHWOOD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2071", + "label": "ATASCOCITA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2078", + "label": "ATASCOSA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2091", + "label": "AUGUSTA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2094", + "label": "AUSTONIO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2097", + "label": "AVALON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2100", + "label": "AVOCA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2104", + "label": "AXTELL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2112", + "label": "BAGWELL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2115", + "label": "BAILEYVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2123", + "label": "BAKERSFIELD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2126", + "label": "BALD PRAIRIE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2131", + "label": "BALSORA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2140", + "label": "BANQUETE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2150", + "label": "BARKSDALE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2152", + "label": "BARNHART", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2170", + "label": "BATEMAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2173", + "label": "BATSON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2195", + "label": "BAYVIEW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2217", + "label": "BEBE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2246", + "label": "BELMENA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2247", + "label": "BELMONT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2251", + "label": "BEN ARNOLD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2252", + "label": "BEN BOLT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2255", + "label": "BEN FRANKLIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2256", + "label": "BEN HUR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2257", + "label": "BEN WHEELER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2258", + "label": "BENCHLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2265", + "label": "BENOIT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2269", + "label": "BERCLAIR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2274", + "label": "BERGHEIM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2278", + "label": "BERNARDO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2290", + "label": "BETHEL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2335", + "label": "BIROME", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2337", + "label": "BIRY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2341", + "label": "BIVINS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2367", + "label": "BLANCONIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2374", + "label": "BLEAKWOOD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2394", + "label": "BLUETOWN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2401", + "label": "BLUFFTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2403", + "label": "BLUNTZER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2420", + "label": "BOLING", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2421", + "label": "BOLIVAR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2428", + "label": "BON WIER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2438", + "label": "BONUS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2442", + "label": "BOONSVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2444", + "label": "BOOTH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2450", + "label": "BORDEN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2471", + "label": "BOXELDER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2474", + "label": "BOYD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2481", + "label": "BRACKEN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2482", + "label": "BRAD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2492", + "label": "BRANCH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2493", + "label": "BRANCHVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2495", + "label": "BRANDON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2499", + "label": "BRASHEAR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2501", + "label": "BRAZOS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2503", + "label": "BRAZOS COUNTRY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2509", + "label": "BRESLAU", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2525", + "label": "BRIGGS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2529", + "label": "BRISTOL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2537", + "label": "BROCK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2544", + "label": "BROOKELAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2556", + "label": "BROOKSTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2579", + "label": "BRUSHIE PRAIRIE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2585", + "label": "BRYANS MILL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2589", + "label": "BUCHANAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2623", + "label": "BULA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2644", + "label": "BURKETT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2645", + "label": "BURKEVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2646", + "label": "BURLEIGH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2647", + "label": "BURLINGTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2653", + "label": "BURR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2660", + "label": "BUSHLAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2701", + "label": "CALL JUNCTION", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2703", + "label": "CALLAHAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2711", + "label": "CAMDEN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2734", + "label": "CAMPO ALTO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2758", + "label": "CANYON CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2780", + "label": "CARLOS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2782", + "label": "CARLSBAD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2784", + "label": "CARLTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2796", + "label": "CARRICITOS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2819", + "label": "CASH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2826", + "label": "CASTELL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2831", + "label": "CAT SPRING", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2841", + "label": "CAYUGA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2844", + "label": "CEDAR CREEK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2851", + "label": "CEDAR LAKE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2852", + "label": "CEDAR LANE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2857", + "label": "CEDAR SPRINGS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2864", + "label": "CEGO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2886", + "label": "CENTRAL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2892", + "label": "CENTRALIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2930", + "label": "CHAPMAN RANCH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2934", + "label": "CHARLESTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2935", + "label": "CHARLIE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2940", + "label": "CHATEAU WOODS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2941", + "label": "CHATFIELD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2946", + "label": "CHEEK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2950", + "label": "CHEROKEE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2954", + "label": "CHERRY SPRING", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2957", + "label": "CHICOTA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2958", + "label": "CHIHUAHUA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2964", + "label": "CHINA SPRING", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2973", + "label": "CHITA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2974", + "label": "CHOATE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2984", + "label": "CHURCHILL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "2998", + "label": "CISTERN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3016", + "label": "CLAY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3036", + "label": "CLEMVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3086", + "label": "COLLEGE MOUND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3091", + "label": "COLOGNE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3116", + "label": "COMSTOCK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3118", + "label": "CONCAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3146", + "label": "CONWAY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3149", + "label": "COOKS POINT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3150", + "label": "COOKVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3158", + "label": "COPEVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3162", + "label": "CORBET", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3169", + "label": "CORLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3186", + "label": "COST", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3193", + "label": "COTTONDALE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3211", + "label": "COUPLAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3234", + "label": "CRABBS PRAIRIE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3239", + "label": "CRANES MILL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3250", + "label": "CREWS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3263", + "label": "CROSS ROADS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3268", + "label": "CROSS TIMBER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3287", + "label": "CRYSTAL BEACH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3296", + "label": "CULLEOKA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3299", + "label": "CUNDIFF", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3303", + "label": "CURTIS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3313", + "label": "CYPRESS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3325", + "label": "DACOSTA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3331", + "label": "DALE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3341", + "label": "DANEVANG", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3348", + "label": "DARBY HILL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3359", + "label": "DAVILLA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3370", + "label": "DEANVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3373", + "label": "DEBERRY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3375", + "label": "DECKER PRAIRIE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3393", + "label": "DELHI", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3398", + "label": "DELMITA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3406", + "label": "DENHAWKEN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3410", + "label": "DENNIS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3415", + "label": "DERMOTT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3417", + "label": "DESDEMONA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3418", + "label": "DESERT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3424", + "label": "DEW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3426", + "label": "DEWEES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3429", + "label": "DEXTER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3434", + "label": "DIANA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3440", + "label": "DIKE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3443", + "label": "DIME BOX", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3453", + "label": "DISH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3458", + "label": "DIXIE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3465", + "label": "DOBBIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3470", + "label": "DODGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3475", + "label": "DOGWOOD CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3477", + "label": "DOLAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3478", + "label": "DOLEN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3484", + "label": "DONIE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3498", + "label": "DOUBLE BAYOU", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3502", + "label": "DOUCETTE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3507", + "label": "DOUGLASS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3515", + "label": "DOWNSVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3522", + "label": "DRAW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3524", + "label": "DRESDEN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3528", + "label": "DRIFTWOOD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3534", + "label": "DRYDEN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3554", + "label": "DUNDEE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3557", + "label": "DUNLAY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3558", + "label": "DUNN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3563", + "label": "DURANGO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3585", + "label": "EAST COLUMBIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3599", + "label": "EASTERLY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3608", + "label": "ECHO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3615", + "label": "EDDY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3620", + "label": "EDGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3647", + "label": "EL GATO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3652", + "label": "EL SAUZ", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3659", + "label": "ELDERVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3666", + "label": "ELIASVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3670", + "label": "ELK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3674", + "label": "ELLIOT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3695", + "label": "ELMO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3701", + "label": "ELROY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3709", + "label": "ELYSIAN FIELDS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3726", + "label": "ENGLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3732", + "label": "ENLOE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3734", + "label": "ENOCHS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3746", + "label": "ERA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3749", + "label": "ERIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3754", + "label": "ESCOBAS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3767", + "label": "ETOILE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3768", + "label": "ETTER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3770", + "label": "EULA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3822", + "label": "FALCON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3834", + "label": "FANNETT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3835", + "label": "FANNIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3845", + "label": "FARRSVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3851", + "label": "FAWIL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3858", + "label": "FELICIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3860", + "label": "FENTRESS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3882", + "label": "FISCHER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3884", + "label": "FISK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3897", + "label": "FLAT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3909", + "label": "FLINT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3911", + "label": "FLO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3929", + "label": "FLYNN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3967", + "label": "FORESTBURG", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "3969", + "label": "FORRESTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4006", + "label": "FOUR CORNERS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4021", + "label": "FRANCITAS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4027", + "label": "FRED", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4037", + "label": "FREESTONE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4039", + "label": "FREIHEIT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4040", + "label": "FRELSBURG", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4080", + "label": "FRYDEK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4108", + "label": "GARCIASVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4115", + "label": "GARDENDALE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4118", + "label": "GARNER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4121", + "label": "GARWOOD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4123", + "label": "GARY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4130", + "label": "GAUSE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4148", + "label": "GERMANIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4158", + "label": "GILCHRIST", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4161", + "label": "GILLETT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4172", + "label": "GIST", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4181", + "label": "GLAZIER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4188", + "label": "GLEN FLORA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4207", + "label": "GLIDDEN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4233", + "label": "GOODLETT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4241", + "label": "GORDONVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4269", + "label": "GRANGERLAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4272", + "label": "GRAPE CREEK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4292", + "label": "GREEN LAKE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4324", + "label": "GRESHAM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4337", + "label": "GROCEVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4372", + "label": "GUTHRIE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4373", + "label": "GUY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4389", + "label": "HAINESVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4411", + "label": "HAMSHIRE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4412", + "label": "HANCOCK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4417", + "label": "HANKAMER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4437", + "label": "HARGILL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4440", + "label": "HARLETON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4461", + "label": "HARRIS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4467", + "label": "HARROLD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4469", + "label": "HARTBURG", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4479", + "label": "HARWOOD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4482", + "label": "HASSE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4521", + "label": "HEIDENHEIMER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4525", + "label": "HELENA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4534", + "label": "HENLY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4581", + "label": "HIGH ISLAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4593", + "label": "HIGHLAND HAVEN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4611", + "label": "HILLISTER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4612", + "label": "HILLJE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4619", + "label": "HILLTOP LAKES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4636", + "label": "HOBBS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4638", + "label": "HOBSON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4653", + "label": "HOLIDAY BEACH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4665", + "label": "HOLLY SPRINGS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4675", + "label": "HONEY ISLAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4718", + "label": "HUCKABAY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4726", + "label": "HUFF CREEK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4728", + "label": "HUFFMAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4733", + "label": "HULL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4741", + "label": "HUNT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4757", + "label": "HYE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4776", + "label": "INDEPENDENCE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4801", + "label": "IRA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4816", + "label": "IVANHOE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4817", + "label": "IZORO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4836", + "label": "JARRELL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4841", + "label": "JEAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4846", + "label": "JENNINGS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4850", + "label": "JERMYN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4871", + "label": "JOHNTOWN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4873", + "label": "JOINERVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4874", + "label": "JOLIET", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4875", + "label": "JONAH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4877", + "label": "JONES PRAIRIE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4878", + "label": "JONESBORO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4900", + "label": "JULIFF", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4912", + "label": "KANAWHA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4915", + "label": "KARNACK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4930", + "label": "KEETER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4931", + "label": "KEITH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4936", + "label": "KELLOGG", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4945", + "label": "KENDALIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4949", + "label": "KENNEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4969", + "label": "KILDARE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4989", + "label": "KINGSTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "4999", + "label": "KIRKLAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5006", + "label": "KLEIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5011", + "label": "KNICKERBOCKER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5021", + "label": "KNOTT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5026", + "label": "KOMENSKY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5031", + "label": "KOPPERL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5032", + "label": "KOSCIUSKO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5040", + "label": "KURTEN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5044", + "label": "LA BELLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5046", + "label": "LA CASITA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5048", + "label": "LA COSTE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5074", + "label": "LA REFORMA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5077", + "label": "LA ROSITA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5086", + "label": "LA VICTORIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5099", + "label": "LAGARTO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5111", + "label": "LAIRD HILL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5150", + "label": "LAKESIDE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5156", + "label": "LAKESIDE VILLAGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5163", + "label": "LAKEVIEW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5177", + "label": "LAMAR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5188", + "label": "LANE CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5192", + "label": "LANEVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5198", + "label": "LANNIUS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5200", + "label": "LANTANA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5206", + "label": "LARUE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5211", + "label": "LAS LOMAS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5221", + "label": "LAS YESCAS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5240", + "label": "LAWRENCE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5246", + "label": "LAZBUDDIE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5255", + "label": "LEDBETTER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5263", + "label": "LEESBURG", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5264", + "label": "LEESVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5267", + "label": "LEGGETT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5269", + "label": "LEHMAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5274", + "label": "LELIA LAKE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5283", + "label": "LEON SPRINGS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5316", + "label": "LINCOLN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5326", + "label": "LINGLEVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5329", + "label": "LINN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5333", + "label": "LISSIE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5335", + "label": "LITTLE CYPRESS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5402", + "label": "LONG MOTT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5417", + "label": "LOS BARRERAS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5421", + "label": "LOS GARZAS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5426", + "label": "LOS VILLAREALES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5437", + "label": "LOVING", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5448", + "label": "LUELLA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5460", + "label": "LUTIE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5463", + "label": "LYDIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5470", + "label": "LYTTON SPRINGS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5492", + "label": "MAGNET", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5494", + "label": "MAGNOLIA BEACH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5499", + "label": "MAGNOLIA SPRINGS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5511", + "label": "MALTA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5521", + "label": "MANHEIM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5524", + "label": "MANKINS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5535", + "label": "MAPLETON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5564", + "label": "MARTINSVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5570", + "label": "MARYNEAL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5582", + "label": "MATAGORDA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5592", + "label": "MAXEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5594", + "label": "MAXWELL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5596", + "label": "MAY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5599", + "label": "MAYDELLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5610", + "label": "MAYSFIELD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5613", + "label": "MCCAULLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5616", + "label": "MCCOOK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5623", + "label": "MCDADE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5641", + "label": "MCLEOD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5642", + "label": "MCMAHAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5644", + "label": "MCNAIR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5659", + "label": "MEADOWS PLACE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5691", + "label": "MENDOZA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5698", + "label": "MERIT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5701", + "label": "MERRELLTOWN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5716", + "label": "MICO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5725", + "label": "MIDKIFF", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5768", + "label": "MILLERSVIEW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5781", + "label": "MINDEN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5783", + "label": "MINERAL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5787", + "label": "MINERVA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5798", + "label": "MISSION VALLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5809", + "label": "MOBILE CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5818", + "label": "MONAVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5823", + "label": "MONROE CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5825", + "label": "MONT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5826", + "label": "MONTAGUE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5828", + "label": "MONTALBA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5850", + "label": "MOOREVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5857", + "label": "MORGAN MILL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5873", + "label": "MOSCOW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5877", + "label": "MOSS BLUFF", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5878", + "label": "MOSS HILL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5910", + "label": "MOUNT UNION", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5918", + "label": "MOUNTAIN HOME", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5920", + "label": "MOUNTAIN SPRINGS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5942", + "label": "MUMFORD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5962", + "label": "MYRA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5967", + "label": "NADA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5979", + "label": "NAVARRO MILLS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5985", + "label": "NECHES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "5994", + "label": "NEINDA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6000", + "label": "NELSONVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6002", + "label": "NEMO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6008", + "label": "NEW BADEN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6022", + "label": "NEW FAIRVIEW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6054", + "label": "NEW TAITON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6071", + "label": "NEWSOME", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6087", + "label": "NOACK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6094", + "label": "NOLAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6105", + "label": "NORIAS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6107", + "label": "NORMANDY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6138", + "label": "NORTH ZULCH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6154", + "label": "NORTHRUP", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6162", + "label": "NOTREES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6171", + "label": "NUGENT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6174", + "label": "NURSERY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6204", + "label": "OAK LEAF", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6239", + "label": "OAKVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6247", + "label": "OCEE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6272", + "label": "OKLAUNION", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6274", + "label": "OLA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6299", + "label": "OLD OCEAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6310", + "label": "OLD SALEM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6318", + "label": "OLDEN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6319", + "label": "OLDENBURG", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6323", + "label": "OLETHA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6338", + "label": "OPLIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6343", + "label": "ORANGEDALE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6344", + "label": "ORANGEFIELD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6362", + "label": "OSCEOLA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6367", + "label": "OTTO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6385", + "label": "PAIGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6386", + "label": "PAINT CREEK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6394", + "label": "PALISADES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6407", + "label": "PALO PINTO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6414", + "label": "PANDORA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6415", + "label": "PANHANDLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6422", + "label": "PAPALOTE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6436", + "label": "PARK SPRINGS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6473", + "label": "PATRICIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6479", + "label": "PATTONVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6482", + "label": "PAWELEKVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6494", + "label": "PEAR RIDGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6501", + "label": "PEASTER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6517", + "label": "PECOS CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6538", + "label": "PENNINGTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6540", + "label": "PEORIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6546", + "label": "PERRIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6547", + "label": "PERRY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6549", + "label": "PERRY LANDING", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6553", + "label": "PERSONVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6560", + "label": "PETERSVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6562", + "label": "PETTIBONE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6588", + "label": "PICKTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6592", + "label": "PIERCE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6654", + "label": "PIPE CREEK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6662", + "label": "PLACEDO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6675", + "label": "PLANTERSVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6710", + "label": "PLUM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6719", + "label": "POETRY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6720", + "label": "POINT ENTERPRISE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6722", + "label": "POINT VENTURE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6725", + "label": "POLLOK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6735", + "label": "PONTOTOC", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6738", + "label": "POOLVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6744", + "label": "PORT ALTO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6751", + "label": "PORT O'CONNOR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6756", + "label": "PORTER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6770", + "label": "POST OAK BEND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6776", + "label": "POTTSVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6777", + "label": "POWDERLY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6783", + "label": "PRAHA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6789", + "label": "PRAIRIE HILL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6791", + "label": "PRAIRIE LEA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6798", + "label": "PRAIRIE POINT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6810", + "label": "PRIDDY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6816", + "label": "PROCTOR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6842", + "label": "PUMPKIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6844", + "label": "PUNKIN CENTER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6848", + "label": "PURDON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6851", + "label": "PURSLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6864", + "label": "QUEEN CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6866", + "label": "QUIHI", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6877", + "label": "RACHAL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6884", + "label": "RAINBOW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6885", + "label": "RAISIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6886", + "label": "RALEIGH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6889", + "label": "RAMIRENO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6904", + "label": "RANDADO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6905", + "label": "RANDOLPH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6922", + "label": "RAYBURN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6928", + "label": "RAYWOOD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6930", + "label": "REAGAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6952", + "label": "RED GATE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6961", + "label": "RED ROCK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "6977", + "label": "REEDVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7010", + "label": "RHINELAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7013", + "label": "RICARDO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7014", + "label": "RICES CROSSING", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7020", + "label": "RIDGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7031", + "label": "RINCON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7032", + "label": "RINGGOLD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7037", + "label": "RIOS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7063", + "label": "RIVIERA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7067", + "label": "ROANE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7070", + "label": "ROBBINS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7075", + "label": "ROCHELLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7084", + "label": "ROCK ISLAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7093", + "label": "ROCKETT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7099", + "label": "ROCKNE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7102", + "label": "ROCKWOOD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7129", + "label": "ROMA CREEK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7131", + "label": "ROMAYOR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7140", + "label": "ROSANKY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7152", + "label": "ROSHARON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7159", + "label": "ROSSVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7175", + "label": "ROYALTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7188", + "label": "RUMLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7202", + "label": "RUTERSVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7207", + "label": "RYE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7218", + "label": "SACUL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7223", + "label": "SAGERTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7249", + "label": "SALINENO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7257", + "label": "SALTILLO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7263", + "label": "SAM RAYBURN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7264", + "label": "SAMARIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7272", + "label": "SAN GABRIEL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7282", + "label": "SAN MANUEL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7284", + "label": "SAN MIGUEL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7288", + "label": "SAN ROMAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7290", + "label": "SAN YGNACIO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7292", + "label": "SANCTUARY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7315", + "label": "SANDUSKY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7316", + "label": "SANDY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7323", + "label": "SANDY POINT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7327", + "label": "SANTA CLARA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7328", + "label": "SANTA ELENA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7333", + "label": "SANTO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7336", + "label": "SARAGOSA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7337", + "label": "SARATOGA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7346", + "label": "SARITA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7352", + "label": "SATTLER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7356", + "label": "SAVANNAH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7372", + "label": "SCHROEDER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7375", + "label": "SCHWERTNER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7389", + "label": "SCROGGINS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7391", + "label": "SCURRY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7413", + "label": "SEGNO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7420", + "label": "SELMAN CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7437", + "label": "SEWARD JUNCTION", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7465", + "label": "SHAFTER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7475", + "label": "SHARP", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7490", + "label": "SHEFFIELD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7493", + "label": "SHELBYVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7501", + "label": "SHERIDAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7527", + "label": "SHIRO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7551", + "label": "SILVER CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7562", + "label": "SIMMS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7573", + "label": "SISTERDALE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7594", + "label": "SLIDELL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7597", + "label": "SLOCUM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7602", + "label": "SMETANA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7603", + "label": "SMITH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7609", + "label": "SMITH POINT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7616", + "label": "SMITHSON VALLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7618", + "label": "SMITHWICK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7673", + "label": "SOUTH PURMELA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7699", + "label": "SPANISH CAMP", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7706", + "label": "SPEAKS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7711", + "label": "SPEEGLEVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7714", + "label": "SPICEWOOD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7722", + "label": "SPRING BRANCH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7757", + "label": "SPURGER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7764", + "label": "STAIRTOWN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7771", + "label": "STAPLES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7772", + "label": "STAR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7776", + "label": "STARTZVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7782", + "label": "STEEP HOLLOW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7814", + "label": "STONEBURG", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7815", + "label": "STONEHAM", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7854", + "label": "SUBLIME", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7857", + "label": "SUGAR VALLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7870", + "label": "SUMNER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7894", + "label": "SUTTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7913", + "label": "SYLVESTER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7923", + "label": "TALPA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7934", + "label": "TARPLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7938", + "label": "TARZAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7944", + "label": "TAVENER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7956", + "label": "TELEPHONE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7957", + "label": "TELFERNER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7958", + "label": "TELICO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7967", + "label": "TENNESSEE COLONY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7971", + "label": "TERLINGUA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7989", + "label": "THALIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "7997", + "label": "THELMA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8001", + "label": "THICKET", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8006", + "label": "THOMASTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8011", + "label": "THORNBERRY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8014", + "label": "THORP SPRING", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8025", + "label": "THURBER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8035", + "label": "TILMON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8050", + "label": "TIVOLI", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8061", + "label": "TOLEDO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8063", + "label": "TOLOSA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8069", + "label": "TOURS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8070", + "label": "TOW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8076", + "label": "TOWN BLUFF", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8084", + "label": "TRAVIS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8087", + "label": "TREASURE ISLAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8101", + "label": "TROUT CREEK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8103", + "label": "TRUBY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8106", + "label": "TRUMBULL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8116", + "label": "TUNIS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8117", + "label": "TUPELO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8124", + "label": "TURNERTOWN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8144", + "label": "UMBARGER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8159", + "label": "UNION HIGH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8191", + "label": "VALERA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8195", + "label": "VALLEY JUNCTION", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8198", + "label": "VALLEY SPRING", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8214", + "label": "VANDERPOOL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8222", + "label": "VAUGHAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8224", + "label": "VEALMOOR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8233", + "label": "VERA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8254", + "label": "VIEW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8267", + "label": "VILLAGE MILLS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8284", + "label": "VOLENTE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8286", + "label": "VON ORMY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8289", + "label": "VOTAW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8294", + "label": "WADSWORTH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8295", + "label": "WAGNER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8296", + "label": "WAKA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8299", + "label": "WALBURG", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8316", + "label": "WALL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8318", + "label": "WALLISVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8320", + "label": "WALNUT BEND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8343", + "label": "WARDA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8351", + "label": "WARREN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8353", + "label": "WARRENTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8357", + "label": "WASHINGTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8360", + "label": "WATER VALLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8373", + "label": "WATT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8389", + "label": "WEBBERVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8391", + "label": "WECHES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8392", + "label": "WEEDHAVEN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8395", + "label": "WEESATCHE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8401", + "label": "WELCOME", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8404", + "label": "WELDON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8472", + "label": "WESTHOFF", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8479", + "label": "WESTON LAKES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8482", + "label": "WESTPHALIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8495", + "label": "WETMORE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8503", + "label": "WHEELOCK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8534", + "label": "WHITHARRAL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8539", + "label": "WHITT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8540", + "label": "WHITTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8546", + "label": "WIERGATE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8553", + "label": "WILD PEACH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8581", + "label": "WILLOW CITY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8604", + "label": "WINCHELL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8632", + "label": "WISE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8637", + "label": "WODEN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8651", + "label": "WOODBINE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8653", + "label": "WOODBURY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8696", + "label": "WRIGHTSBORO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8702", + "label": "YANCEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8728", + "label": "ZEPHYR", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8739", + "label": "ZORN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8742", + "label": "OAK RIDGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8743", + "label": "HILLCREST VILLAGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8744", + "label": "MUSTANG", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8745", + "label": "NOVICE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8746", + "label": "PINEHURST", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8747", + "label": "PRAIRIE HILL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8748", + "label": "RENO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8749", + "label": "RETREAT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8750", + "label": "SAN PEDRO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8752", + "label": "THELMA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8753", + "label": "RIOMEDINA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8754", + "label": "ACE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8755", + "label": "ACTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8756", + "label": "ADAMSVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8757", + "label": "ALBERT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8758", + "label": "ALLISON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8759", + "label": "ARMSTRONG", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8760", + "label": "BLACK JACK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8761", + "label": "BRAZOS BEND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8762", + "label": "BROOKESMITH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8763", + "label": "BRUSHY CREEK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8764", + "label": "BUCKHORN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8765", + "label": "CALL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8766", + "label": "CARANCAHUA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8767", + "label": "CASHION", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8768", + "label": "CAWTHON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8769", + "label": "CHALK MOUNTAIN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8770", + "label": "CIRCLEVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8771", + "label": "CLAIREMONT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8772", + "label": "CLAYTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8773", + "label": "COLLEGEPORT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8774", + "label": "CORNUDAS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8775", + "label": "COTTON CENTER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8776", + "label": "COYANOSA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8777", + "label": "DANCIGER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8778", + "label": "DECORDOVA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8779", + "label": "DEMI-JOHN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8780", + "label": "DIALVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8781", + "label": "DOUGHERTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8782", + "label": "EGYPT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8783", + "label": "ELM GROVE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8784", + "label": "ELMATON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8785", + "label": "EOLA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8786", + "label": "FAIRMONT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8787", + "label": "FARNSWORTH", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8788", + "label": "FIELDS STORE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8789", + "label": "GARFIELD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8790", + "label": "GENEVA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8791", + "label": "GOBER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8792", + "label": "GREENWOOD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8793", + "label": "GUADALUPE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8794", + "label": "GUERRA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8795", + "label": "HAWK COVE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8796", + "label": "HIDEAWAY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8797", + "label": "HOPE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8798", + "label": "HUFFINES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8799", + "label": "IAGO", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8800", + "label": "IVANHOE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8801", + "label": "JAMESTOWN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8802", + "label": "KENT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8803", + "label": "KLONDIKE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8804", + "label": "LA GLORIA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8805", + "label": "LAGUNA PARK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8806", + "label": "LASALLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8807", + "label": "LIBERTY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8808", + "label": "LIVELY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8809", + "label": "LONDON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8810", + "label": "LONE OAK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8811", + "label": "LOS ARRIEROS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8812", + "label": "MANCHESTER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8813", + "label": "MAYFLOWER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8814", + "label": "MILLER GROVE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8815", + "label": "MOUNT SELMAN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8816", + "label": "NEEDMORE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8817", + "label": "NEWPORT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8818", + "label": "OAK ISLAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8819", + "label": "OAKLAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8820", + "label": "OLD UNION", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8821", + "label": "ORLA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8822", + "label": "OTEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8823", + "label": "OWENS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8824", + "label": "PALOMA CREEK", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8825", + "label": "PINE GROVE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8826", + "label": "PINE SPRINGS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8827", + "label": "PLEDGER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8828", + "label": "PRICE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8829", + "label": "PROGRESS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8830", + "label": "PROVIDENCE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8831", + "label": "PROVIDENCE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8832", + "label": "QUAIL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8833", + "label": "RANCHOS PENITAS WEST", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8834", + "label": "RATCLIFF", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8835", + "label": "REAGAN WELLS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8836", + "label": "SAMNORWOOD", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8837", + "label": "SANTA ANNA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8838", + "label": "SARGENT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8839", + "label": "SCRAPPIN VALLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8840", + "label": "SELFS", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8841", + "label": "SHANKLEVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8842", + "label": "SHERWOOD SHORES", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8843", + "label": "SIMPSONVILLE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8844", + "label": "SMYRNA", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8845", + "label": "SOUTH BEND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8846", + "label": "SPARENBERG", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8847", + "label": "ST. PAUL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8848", + "label": "SWEET HOME", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8849", + "label": "TARKINGTON PRAIRIE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8850", + "label": "TAYLOR LANDING", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8851", + "label": "UNION VALLEY", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8852", + "label": "VALLEY VIEW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8853", + "label": "VASHTI", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8854", + "label": "WATSON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8855", + "label": "WEST POINT", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8856", + "label": "WHEATLAND", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8857", + "label": "WHITEHALL", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8858", + "label": "WINCHESTER", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8859", + "label": "WOODLAWN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8860", + "label": "WOODROW", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8861", + "label": "YARRELLTON", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "8862", + "label": "VOLENTE VILLAGE", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "99999", + "label": "UNKNOWN", + "source": "cris", + "table_name": "city_lkp" + }, + { + "id": "1", + "label": "Anderson", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "2", + "label": "Andrews", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "3", + "label": "Angelina", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "4", + "label": "Aransas", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "5", + "label": "Archer", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "6", + "label": "Armstrong", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "7", + "label": "Atascosa", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "8", + "label": "Austin", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "9", + "label": "Bailey", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "10", + "label": "Bandera", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "11", + "label": "Bastrop", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "12", + "label": "Baylor", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "13", + "label": "Bee", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "14", + "label": "Bell", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "15", + "label": "Bexar", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "16", + "label": "Blanco", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "17", + "label": "Borden", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "18", + "label": "Bosque", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "19", + "label": "Bowie", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "20", + "label": "Brazoria", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "21", + "label": "Brazos", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "22", + "label": "Brewster", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "23", + "label": "Briscoe", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "24", + "label": "Brooks", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "25", + "label": "Brown", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "26", + "label": "Burleson", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "27", + "label": "Burnet", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "28", + "label": "Caldwell", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "29", + "label": "Calhoun", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "30", + "label": "Callahan", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "31", + "label": "Cameron", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "32", + "label": "Camp", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "33", + "label": "Carson", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "34", + "label": "Cass", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "35", + "label": "Castro", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "36", + "label": "Chambers", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "37", + "label": "Cherokee", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "38", + "label": "Childress", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "39", + "label": "Clay", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "40", + "label": "Cochran", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "41", + "label": "Coke", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "42", + "label": "Coleman", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "43", + "label": "Collin", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "44", + "label": "Collingsworth", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "45", + "label": "Colorado", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "46", + "label": "Comal", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "47", + "label": "Comanche", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "48", + "label": "Concho", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "49", + "label": "Cooke", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "50", + "label": "Coryell", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "51", + "label": "Cottle", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "52", + "label": "Crane", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "53", + "label": "Crockett", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "54", + "label": "Crosby", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "55", + "label": "Culberson", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "56", + "label": "Dallam", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "57", + "label": "Dallas", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "58", + "label": "Dawson", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "59", + "label": "Deaf Smith", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "60", + "label": "Delta", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "61", + "label": "Denton", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "62", + "label": "Dewitt", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "63", + "label": "Dickens", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "64", + "label": "Dimmit", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "65", + "label": "Donley", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "66", + "label": "Duval", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "67", + "label": "Eastland", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "68", + "label": "Ector", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "69", + "label": "Edwards", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "70", + "label": "Ellis", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "71", + "label": "El Paso", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "72", + "label": "Erath", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "73", + "label": "Falls", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "74", + "label": "Fannin", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "75", + "label": "Fayette", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "76", + "label": "Fisher", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "77", + "label": "Floyd", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "78", + "label": "Foard", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "79", + "label": "Fort Bend", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "80", + "label": "Franklin", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "81", + "label": "Freestone", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "82", + "label": "Frio", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "83", + "label": "Gaines", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "84", + "label": "Galveston", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "85", + "label": "Garza", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "86", + "label": "Gillespie", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "87", + "label": "Glasscock", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "88", + "label": "Goliad", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "89", + "label": "Gonzales", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "90", + "label": "Gray", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "91", + "label": "Grayson", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "92", + "label": "Gregg", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "93", + "label": "Grimes", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "94", + "label": "Guadalupe", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "95", + "label": "Hale", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "96", + "label": "Hall", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "97", + "label": "Hamilton", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "98", + "label": "Hansford", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "99", + "label": "Hardeman", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "100", + "label": "Hardin", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "101", + "label": "Harris", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "102", + "label": "Harrison", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "103", + "label": "Hartley", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "104", + "label": "Haskell", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "105", + "label": "Hays", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "106", + "label": "Hemphill", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "107", + "label": "Henderson", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "108", + "label": "Hidalgo", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "109", + "label": "Hill", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "110", + "label": "Hockley", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "111", + "label": "Hood", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "112", + "label": "Hopkins", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "113", + "label": "Houston", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "114", + "label": "Howard", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "115", + "label": "Hudspeth", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "116", + "label": "Hunt", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "117", + "label": "Hutchinson", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "118", + "label": "Irion", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "119", + "label": "Jack", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "120", + "label": "Jackson", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "121", + "label": "Jasper", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "122", + "label": "Jeff Davis", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "123", + "label": "Jefferson", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "124", + "label": "Jim Hogg", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "125", + "label": "Jim Wells", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "126", + "label": "Johnson", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "127", + "label": "Jones", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "128", + "label": "Karnes", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "129", + "label": "Kaufman", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "130", + "label": "Kendall", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "131", + "label": "Kenedy", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "132", + "label": "Kent", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "133", + "label": "Kerr", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "134", + "label": "Kimble", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "135", + "label": "King", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "136", + "label": "Kinney", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "137", + "label": "Kleberg", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "138", + "label": "Knox", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "139", + "label": "Lamar", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "140", + "label": "Lamb", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "141", + "label": "Lampasas", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "142", + "label": "La Salle", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "143", + "label": "Lavaca", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "144", + "label": "Lee", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "145", + "label": "Leon", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "146", + "label": "Liberty", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "147", + "label": "Limestone", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "148", + "label": "Lipscomb", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "149", + "label": "Live Oak", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "150", + "label": "Llano", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "151", + "label": "Loving", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "152", + "label": "Lubbock", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "153", + "label": "Lynn", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "154", + "label": "Madison", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "155", + "label": "Marion", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "156", + "label": "Martin", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "157", + "label": "Mason", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "158", + "label": "Matagorda", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "159", + "label": "Maverick", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "160", + "label": "McCulloch", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "161", + "label": "McLennan", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "162", + "label": "McMullen", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "163", + "label": "Medina", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "164", + "label": "Menard", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "165", + "label": "Midland", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "166", + "label": "Milam", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "167", + "label": "Mills", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "168", + "label": "Mitchell", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "169", + "label": "Montague", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "170", + "label": "Montgomery", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "171", + "label": "Moore", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "172", + "label": "Morris", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "173", + "label": "Motley", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "174", + "label": "Nacogdoches", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "175", + "label": "Navarro", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "176", + "label": "Newton", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "177", + "label": "Nolan", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "178", + "label": "Nueces", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "179", + "label": "Ochiltree", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "180", + "label": "Oldham", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "181", + "label": "Orange", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "182", + "label": "Palo Pinto", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "183", + "label": "Panola", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "184", + "label": "Parker", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "185", + "label": "Parmer", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "186", + "label": "Pecos", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "187", + "label": "Polk", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "188", + "label": "Potter", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "189", + "label": "Presidio", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "190", + "label": "Rains", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "191", + "label": "Randall", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "192", + "label": "Reagan", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "193", + "label": "Real", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "194", + "label": "Red River", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "195", + "label": "Reeves", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "196", + "label": "Refugio", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "197", + "label": "Roberts", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "198", + "label": "Robertson", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "199", + "label": "Rockwall", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "200", + "label": "Runnels", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "201", + "label": "Rusk", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "202", + "label": "Sabine", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "203", + "label": "San Augustine", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "204", + "label": "San Jacinto", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "205", + "label": "San Patricio", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "206", + "label": "San Saba", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "207", + "label": "Schleicher", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "208", + "label": "Scurry", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "209", + "label": "Shackelford", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "210", + "label": "Shelby", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "211", + "label": "Sherman", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "212", + "label": "Smith", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "213", + "label": "Somervell", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "214", + "label": "Starr", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "215", + "label": "Stephens", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "216", + "label": "Sterling", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "217", + "label": "Stonewall", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "218", + "label": "Sutton", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "219", + "label": "Swisher", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "220", + "label": "Tarrant", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "221", + "label": "Taylor", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "222", + "label": "Terrell", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "223", + "label": "Terry", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "224", + "label": "Throckmorton", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "225", + "label": "Titus", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "226", + "label": "Tom Green", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "227", + "label": "Travis", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "228", + "label": "Trinity", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "229", + "label": "Tyler", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "230", + "label": "Upshur", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "231", + "label": "Upton", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "232", + "label": "Uvalde", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "233", + "label": "Val Verde", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "234", + "label": "Van Zandt", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "235", + "label": "Victoria", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "236", + "label": "Walker", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "237", + "label": "Waller", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "238", + "label": "Ward", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "239", + "label": "Washington", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "240", + "label": "Webb", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "241", + "label": "Wharton", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "242", + "label": "Wheeler", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "243", + "label": "Wichita", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "244", + "label": "Wilbarger", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "245", + "label": "Willacy", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "246", + "label": "Williamson", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "247", + "label": "Wilson", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "248", + "label": "Winkler", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "249", + "label": "Wise", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "250", + "label": "Wood", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "251", + "label": "Yoakum", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "252", + "label": "Young", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "253", + "label": "Zapata", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "254", + "label": "Zavala", + "source": "cris", + "table_name": "cnty_lkp" + }, + { + "id": "1", + "label": "ONE MOTOR VEHICLE - GOING STRAIGHT", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "2", + "label": "ONE MOTOR VEHICLE - TURNING RIGHT", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "3", + "label": "ONE MOTOR VEHICLE - TURNING LEFT", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "4", + "label": "ONE MOTOR VEHICLE - BACKING", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "5", + "label": "ONE MOTOR VEHICLE - OTHER", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "10", + "label": "ANGLE - BOTH GOING STRAIGHT", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "11", + "label": "ANGLE - ONE STRAIGHT-ONE BACKING", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "12", + "label": "ANGLE - ONE STRAIGHT-ONE STOPPED", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "13", + "label": "ANGLE - ONE STRAIGHT-ONE RIGHT TURN", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "14", + "label": "ANGLE - ONE STRAIGHT-ONE LEFT TURN", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "15", + "label": "ANGLE - BOTH RIGHT TURN", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "16", + "label": "ANGLE - ONE RIGHT TURN-ONE LEFT TURN", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "17", + "label": "ANGLE - ONE RIGHT TURN-ONE STOPPED", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "18", + "label": "ANGLE - BOTH LEFT TURN", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "19", + "label": "ANGLE - ONE LEFT TURN-ONE STOPPED", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "20", + "label": "SAME DIRECTION - BOTH GOING STRAIGHT-REAR END", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "21", + "label": "SAME DIRECTION - BOTH GOING STRAIGHT-SIDESWIPE", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "22", + "label": "SAME DIRECTION - ONE STRAIGHT-ONE STOPPED", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "23", + "label": "SAME DIRECTION - ONE STRAIGHT-ONE RIGHT TURN", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "24", + "label": "SAME DIRECTION - ONE STRAIGHT-ONE LEFT TURN", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "25", + "label": "SAME DIRECTION - BOTH RIGHT TURN", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "26", + "label": "SAME DIRECTION - ONE RIGHT TURN-ONE LEFT TURN", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "27", + "label": "SAME DIRECTION - ONE RIGHT TURN-ONE STOPPED", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "28", + "label": "SAME DIRECTION - BOTH LEFT TURN", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "29", + "label": "SAME DIRECTION - ONE LEFT TURN-ONE STOPPED", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "30", + "label": "OPPOSITE DIRECTION - BOTH GOING STRAIGHT", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "31", + "label": "OPPOSITE DIRECTION - ONE STRAIGHT-ONE BACKING", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "32", + "label": "OPPOSITE DIRECTION - ONE STRAIGHT-ONE STOPPED", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "33", + "label": "OPPOSITE DIRECTION - ONE STRAIGHT-ONE RIGHT TURN", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "34", + "label": "OPPOSITE DIRECTION - ONE STRAIGHT-ONE LEFT TURN", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "35", + "label": "OPPOSITE DIRECTION - ONE BACKING-ONE STOPPED", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "36", + "label": "OPPOSITE DIRECTION - ONE RIGHT TURN-ONE LEFT TURN", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "37", + "label": "OPPOSITE DIRECTION - ONE RIGHT TURN-ONE STOPPED", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "38", + "label": "OPPOSITE DIRECTION - BOTH LEFT TURNS", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "39", + "label": "OPPOSITE DIRECTION - ONE LEFT TURN-ONE STOPPED", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "40", + "label": "OTHER - ONE STRAIGHT-ONE ENTERING OR LEAVING PARKING SPACE", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "41", + "label": "OTHER - ONE RIGHT TURN-ONE ENTERING OR LEAVING PARKING SPACE", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "42", + "label": "OTHER - ONE LEFT TURN-ONE ENTERING OR LEAVING PARKING SPACE", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "43", + "label": "OTHER - ONE ENTERING OR LEAVING PARKING SPACE-ONE STOPPED", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "44", + "label": "OTHER - BOTH ENTERING OR LEAVING A PARKING SPACE", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "45", + "label": "OTHER - BOTH BACKING", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "46", + "label": "OTHER", + "source": "cris", + "table_name": "collsn_lkp" + }, + { + "id": "1", + "label": "INTERSECTION", + "source": "cris", + "table_name": "intrsct_relat_lkp" + }, + { + "id": "2", + "label": "INTERSECTION RELATED", + "source": "cris", + "table_name": "intrsct_relat_lkp" + }, + { + "id": "3", + "label": "DRIVEWAY ACCESS", + "source": "cris", + "table_name": "intrsct_relat_lkp" + }, + { + "id": "4", + "label": "NON INTERSECTION", + "source": "cris", + "table_name": "intrsct_relat_lkp" + }, + { + "id": "0", + "label": "UNKNOWN", + "source": "cris", + "table_name": "light_cond_lkp" + }, + { + "id": "1", + "label": "DAYLIGHT", + "source": "cris", + "table_name": "light_cond_lkp" + }, + { + "id": "2", + "label": "DAWN", + "source": "cris", + "table_name": "light_cond_lkp" + }, + { + "id": "3", + "label": "DARK, NOT LIGHTED", + "source": "cris", + "table_name": "light_cond_lkp" + }, + { + "id": "4", + "label": "DARK, LIGHTED", + "source": "cris", + "table_name": "light_cond_lkp" + }, + { + "id": "5", + "label": "DUSK", + "source": "cris", + "table_name": "light_cond_lkp" + }, + { + "id": "6", + "label": "DARK, UNKNOWN LIGHTING", + "source": "cris", + "table_name": "light_cond_lkp" + }, + { + "id": "8", + "label": "OTHER (EXPLAIN IN NARRATIVE)", + "source": "cris", + "table_name": "light_cond_lkp" + }, + { + "id": "1", + "label": "OVERTURNED", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "2", + "label": "HIT HOLE IN ROAD", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "3", + "label": "JACK-KNIFED", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "4", + "label": "PERSON FELL OR JUMPED FROM VEHICLE", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "9", + "label": "HIT TRAIN ON TRACKS PARALLEL TO ROAD - NO CROSSING", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "10", + "label": "HIT TRAIN MOVING FORWARD", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "11", + "label": "HIT TRAIN BACKING", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "12", + "label": "HIT TRAIN STANDING STILL", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "13", + "label": "HIT TRAIN-ACTION UNKNOWN", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "20", + "label": "HIT HIGHWAY SIGN", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "21", + "label": "HIT CURB", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "22", + "label": "HIT CULVERT-HEADWALL", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "23", + "label": "HIT GUARDRAIL", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "24", + "label": "HIT RAILROAD SIGNAL POLE OR POST", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "25", + "label": "HIT RAILROAD CROSSING GATES", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "26", + "label": "HIT TRAFFIC SIGNAL POLE OR POST", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "27", + "label": "HIT OVERHEAD SIGNAL LIGHT, WIRES, SIGNS, ETC", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "28", + "label": "HIT WORK ZONE BARRICADE, CONES, SIGNS OR MATERIAL", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "29", + "label": "HIT LUMINAIRE POLE", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "30", + "label": "HIT UTILITY POLE", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "31", + "label": "HIT MAILBOX", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "32", + "label": "HIT TREE, SHRUB, LANDSCAPING", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "33", + "label": "HIT FENCE", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "34", + "label": "HIT HOUSE, BUILDING, OR BUILDING FIXTURE", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "35", + "label": "HIT COMMERCIAL SIGN", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "36", + "label": "HIT OTHER FIXED OBJECT", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "37", + "label": "HIT BUS STOP STRUCTURE (BENCH)", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "38", + "label": "HIT WORK ZONE MACHINERY OR STOCKPILED MATERIALS", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "39", + "label": "HIT MEDIAN BARRIER", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "40", + "label": "HIT END OF BRIDGE (ABUTMENT OR RAIL END)", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "41", + "label": "HIT SIDE OF BRIDGE (BRIDGE RAIL)", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "42", + "label": "HIT PIER OR SUPPORT AT UNDERPASS, TUNNEL OR OVERHEAD SIGN BRIDGE", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "43", + "label": "HIT TOP OF UNDERPASS OR TUNNEL", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "44", + "label": "HIT BRIDGE CROSSING GATE", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "45", + "label": "HIT ATTENUATION DEVICE", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "49", + "label": "HIT BY FALLEN/BLOWING ROCKS FROM A TRUCK", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "50", + "label": "HIT FALLEN TREES OR DEBRIS ON ROAD", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "51", + "label": "HIT OBJECT FROM ANOTHER VEHICLE IN ROAD", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "52", + "label": "HIT PREVIOUSLY WRECKED VEHICLE", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "53", + "label": "HIT TOLL BOOTH", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "54", + "label": "HIT OTHER MACHINERY", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "56", + "label": "HIT CONCRETE TRAFFIC BARRIER", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "57", + "label": "HIT DELINEATOR OR MARKER POST", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "58", + "label": "HIT RETAINING WALL", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "59", + "label": "HIT HOV LANE GATE", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "60", + "label": "HIT GUARD POST", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "61", + "label": "FIRE HYDRANT", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "62", + "label": "DITCH", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "63", + "label": "EMBANKMENT", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "64", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "98", + "label": "OTHER", + "source": "cris", + "table_name": "obj_struck_lkp" + }, + { + "id": "1", + "label": "MAIN/PROPER LANE", + "source": "cris", + "table_name": "road_part_lkp" + }, + { + "id": "2", + "label": "SERVICE/FRONTAGE ROAD", + "source": "cris", + "table_name": "road_part_lkp" + }, + { + "id": "3", + "label": "ENTRANCE/ON RAMP", + "source": "cris", + "table_name": "road_part_lkp" + }, + { + "id": "4", + "label": "EXIT/OFF RAMP", + "source": "cris", + "table_name": "road_part_lkp" + }, + { + "id": "5", + "label": "CONNECTOR/FLYOVER", + "source": "cris", + "table_name": "road_part_lkp" + }, + { + "id": "7", + "label": "OTHER (EXPLAIN IN NARRATIVE)", + "source": "cris", + "table_name": "road_part_lkp" + }, + { + "id": "1", + "label": "INTERSTATE", + "source": "cris", + "table_name": "rwy_sys_lkp" + }, + { + "id": "2", + "label": "US HIGHWAY", + "source": "cris", + "table_name": "rwy_sys_lkp" + }, + { + "id": "3", + "label": "STATE HIGHWAY", + "source": "cris", + "table_name": "rwy_sys_lkp" + }, + { + "id": "4", + "label": "FARM TO MARKET", + "source": "cris", + "table_name": "rwy_sys_lkp" + }, + { + "id": "5", + "label": "RANCH ROAD", + "source": "cris", + "table_name": "rwy_sys_lkp" + }, + { + "id": "6", + "label": "RANCH TO MARKET", + "source": "cris", + "table_name": "rwy_sys_lkp" + }, + { + "id": "7", + "label": "BUSINESS INTERSTATE", + "source": "cris", + "table_name": "rwy_sys_lkp" + }, + { + "id": "8", + "label": "BUSINESS US", + "source": "cris", + "table_name": "rwy_sys_lkp" + }, + { + "id": "9", + "label": "BUSINESS STATE", + "source": "cris", + "table_name": "rwy_sys_lkp" + }, + { + "id": "10", + "label": "BUSINESS FM", + "source": "cris", + "table_name": "rwy_sys_lkp" + }, + { + "id": "11", + "label": "STATE LOOP", + "source": "cris", + "table_name": "rwy_sys_lkp" + }, + { + "id": "12", + "label": "TOLL ROAD", + "source": "cris", + "table_name": "rwy_sys_lkp" + }, + { + "id": "13", + "label": "ALTERNATE", + "source": "cris", + "table_name": "rwy_sys_lkp" + }, + { + "id": "14", + "label": "SPUR", + "source": "cris", + "table_name": "rwy_sys_lkp" + }, + { + "id": "15", + "label": "COUNTY ROAD", + "source": "cris", + "table_name": "rwy_sys_lkp" + }, + { + "id": "16", + "label": "PARK ROAD", + "source": "cris", + "table_name": "rwy_sys_lkp" + }, + { + "id": "17", + "label": "PRIVATE ROAD", + "source": "cris", + "table_name": "rwy_sys_lkp" + }, + { + "id": "18", + "label": "RECREATIONAL ROAD", + "source": "cris", + "table_name": "rwy_sys_lkp" + }, + { + "id": "19", + "label": "LOCAL ROAD/STREET (STREET, ROAD, AVE., BLVD., PL., TRL., BEACH, ALLEY, BOAT RAMP, ETC)", + "source": "cris", + "table_name": "rwy_sys_lkp" + }, + { + "id": "0", + "label": "UNKNOWN", + "source": "cris", + "table_name": "surf_cond_lkp" + }, + { + "id": "1", + "label": "DRY", + "source": "cris", + "table_name": "surf_cond_lkp" + }, + { + "id": "2", + "label": "WET", + "source": "cris", + "table_name": "surf_cond_lkp" + }, + { + "id": "3", + "label": "STANDING WATER", + "source": "cris", + "table_name": "surf_cond_lkp" + }, + { + "id": "5", + "label": "SLUSH", + "source": "cris", + "table_name": "surf_cond_lkp" + }, + { + "id": "6", + "label": "ICE", + "source": "cris", + "table_name": "surf_cond_lkp" + }, + { + "id": "8", + "label": "OTHER (EXPLAIN IN NARRATIVE)", + "source": "cris", + "table_name": "surf_cond_lkp" + }, + { + "id": "9", + "label": "SNOW", + "source": "cris", + "table_name": "surf_cond_lkp" + }, + { + "id": "10", + "label": "SAND, MUD, DIRT", + "source": "cris", + "table_name": "surf_cond_lkp" + }, + { + "id": "1", + "label": "CONTINUOUSLY REINFORCED CONCRETE", + "source": "cris", + "table_name": "surf_type_lkp" + }, + { + "id": "2", + "label": "JOINTED REINFORCED CONCRETE", + "source": "cris", + "table_name": "surf_type_lkp" + }, + { + "id": "3", + "label": "JOINTED PLAIN CONCRETE", + "source": "cris", + "table_name": "surf_type_lkp" + }, + { + "id": "4", + "label": "THICK ASPHALTIC CONCRETE, OVER 5.5 INCHES", + "source": "cris", + "table_name": "surf_type_lkp" + }, + { + "id": "5", + "label": "MEDIUM ASPHALTIC CONCRETE, 2.5 - 5.5 INCHES", + "source": "cris", + "table_name": "surf_type_lkp" + }, + { + "id": "6", + "label": "THIN ASPHALTIC CONCRETE, UNDER 2.5 INCHES", + "source": "cris", + "table_name": "surf_type_lkp" + }, + { + "id": "7", + "label": "COMPOSITE (ASPHALT SURFACED CONCRETE)", + "source": "cris", + "table_name": "surf_type_lkp" + }, + { + "id": "8", + "label": "WIDENED COMPOSITE PAVEMENT", + "source": "cris", + "table_name": "surf_type_lkp" + }, + { + "id": "9", + "label": "OVERLAID AND WIDENED ASPHALTIC CONCRETE PAVEMENT", + "source": "cris", + "table_name": "surf_type_lkp" + }, + { + "id": "10", + "label": "SURFACE TREATMENT PAVEMENT", + "source": "cris", + "table_name": "surf_type_lkp" + }, + { + "id": "11", + "label": "BRICK", + "source": "cris", + "table_name": "surf_type_lkp" + }, + { + "id": "12", + "label": "BLADED", + "source": "cris", + "table_name": "surf_type_lkp" + }, + { + "id": "13", + "label": "GRAVEL", + "source": "cris", + "table_name": "surf_type_lkp" + }, + { + "id": "99", + "label": "UNKNOWN", + "source": "cris", + "table_name": "surf_type_lkp" + }, + { + "id": "1", + "label": "NONE", + "source": "cris", + "table_name": "traffic_cntl_lkp" + }, + { + "id": "2", + "label": "INOPERATIVE (EXPLAIN IN NARRATIVE)", + "source": "cris", + "table_name": "traffic_cntl_lkp" + }, + { + "id": "3", + "label": "OFFICER", + "source": "cris", + "table_name": "traffic_cntl_lkp" + }, + { + "id": "4", + "label": "FLAGMAN", + "source": "cris", + "table_name": "traffic_cntl_lkp" + }, + { + "id": "5", + "label": "SIGNAL LIGHT", + "source": "cris", + "table_name": "traffic_cntl_lkp" + }, + { + "id": "6", + "label": "FLASHING RED LIGHT", + "source": "cris", + "table_name": "traffic_cntl_lkp" + }, + { + "id": "7", + "label": "FLASHING YELLOW LIGHT", + "source": "cris", + "table_name": "traffic_cntl_lkp" + }, + { + "id": "8", + "label": "STOP SIGN", + "source": "cris", + "table_name": "traffic_cntl_lkp" + }, + { + "id": "9", + "label": "YIELD SIGN", + "source": "cris", + "table_name": "traffic_cntl_lkp" + }, + { + "id": "10", + "label": "WARNING SIGN", + "source": "cris", + "table_name": "traffic_cntl_lkp" + }, + { + "id": "11", + "label": "CENTER STRIPE/DIVIDER", + "source": "cris", + "table_name": "traffic_cntl_lkp" + }, + { + "id": "12", + "label": "NO PASSING ZONE", + "source": "cris", + "table_name": "traffic_cntl_lkp" + }, + { + "id": "13", + "label": "RR GATE/SIGNAL", + "source": "cris", + "table_name": "traffic_cntl_lkp" + }, + { + "id": "15", + "label": "CROSSWALK", + "source": "cris", + "table_name": "traffic_cntl_lkp" + }, + { + "id": "16", + "label": "BIKE LANE", + "source": "cris", + "table_name": "traffic_cntl_lkp" + }, + { + "id": "17", + "label": "OTHER (EXPLAIN IN NARRATIVE)", + "source": "cris", + "table_name": "traffic_cntl_lkp" + }, + { + "id": "20", + "label": "MARKED LANES", + "source": "cris", + "table_name": "traffic_cntl_lkp" + }, + { + "id": "21", + "label": "SIGNAL LIGHT WITH RED LIGHT RUNNING CAMERA", + "source": "cris", + "table_name": "traffic_cntl_lkp" + }, + { + "id": "0", + "label": "UNKNOWN", + "source": "cris", + "table_name": "wthr_cond_lkp" + }, + { + "id": "2", + "label": "RAIN", + "source": "cris", + "table_name": "wthr_cond_lkp" + }, + { + "id": "3", + "label": "SLEET/HAIL", + "source": "cris", + "table_name": "wthr_cond_lkp" + }, + { + "id": "4", + "label": "SNOW", + "source": "cris", + "table_name": "wthr_cond_lkp" + }, + { + "id": "5", + "label": "FOG", + "source": "cris", + "table_name": "wthr_cond_lkp" + }, + { + "id": "6", + "label": "BLOWING SAND/SNOW", + "source": "cris", + "table_name": "wthr_cond_lkp" + }, + { + "id": "7", + "label": "SEVERE CROSSWINDS", + "source": "cris", + "table_name": "wthr_cond_lkp" + }, + { + "id": "8", + "label": "OTHER (EXPLAIN IN NARRATIVE)", + "source": "cris", + "table_name": "wthr_cond_lkp" + }, + { + "id": "11", + "label": "CLEAR", + "source": "cris", + "table_name": "wthr_cond_lkp" + }, + { + "id": "12", + "label": "CLOUDY", + "source": "cris", + "table_name": "wthr_cond_lkp" + }, + { + "id": "0", + "label": "UNKNOWN", + "source": "cris", + "table_name": "drvr_ethncty_lkp" + }, + { + "id": "1", + "label": "WHITE", + "source": "cris", + "table_name": "drvr_ethncty_lkp" + }, + { + "id": "2", + "label": "HISPANIC", + "source": "cris", + "table_name": "drvr_ethncty_lkp" + }, + { + "id": "3", + "label": "BLACK", + "source": "cris", + "table_name": "drvr_ethncty_lkp" + }, + { + "id": "4", + "label": "ASIAN", + "source": "cris", + "table_name": "drvr_ethncty_lkp" + }, + { + "id": "5", + "label": "OTHER", + "source": "cris", + "table_name": "drvr_ethncty_lkp" + }, + { + "id": "6", + "label": "AMER. INDIAN/ALASKAN NATIVE", + "source": "cris", + "table_name": "drvr_ethncty_lkp" + }, + { + "id": "95", + "label": "AUTONOMOUS", + "source": "cris", + "table_name": "drvr_ethncty_lkp" + }, + { + "id": "0", + "label": "UNKNOWN", + "source": "cris", + "table_name": "gndr_lkp" + }, + { + "id": "1", + "label": "MALE", + "source": "cris", + "table_name": "gndr_lkp" + }, + { + "id": "2", + "label": "FEMALE", + "source": "cris", + "table_name": "gndr_lkp" + }, + { + "id": "95", + "label": "AUTONOMOUS", + "source": "cris", + "table_name": "gndr_lkp" + }, + { + "id": "1", + "label": "WORN, DAMAGED", + "source": "cris", + "table_name": "helmet_lkp" + }, + { + "id": "2", + "label": "WORN, NOT DAMAGED", + "source": "cris", + "table_name": "helmet_lkp" + }, + { + "id": "3", + "label": "WORN, UNK DAMAGE", + "source": "cris", + "table_name": "helmet_lkp" + }, + { + "id": "4", + "label": "NOT WORN", + "source": "cris", + "table_name": "helmet_lkp" + }, + { + "id": "5", + "label": "UNKNOWN IF WORN", + "source": "cris", + "table_name": "helmet_lkp" + }, + { + "id": "97", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "helmet_lkp" + }, + { + "id": "0", + "label": "UNKNOWN", + "source": "cris", + "table_name": "injry_sev_lkp" + }, + { + "id": "1", + "label": "SUSPECTED SERIOUS INJURY", + "source": "cris", + "table_name": "injry_sev_lkp" + }, + { + "id": "2", + "label": "SUSPECTED MINOR INJURY", + "source": "cris", + "table_name": "injry_sev_lkp" + }, + { + "id": "3", + "label": "POSSIBLE INJURY", + "source": "cris", + "table_name": "injry_sev_lkp" + }, + { + "id": "4", + "label": "FATAL INJURY", + "source": "cris", + "table_name": "injry_sev_lkp" + }, + { + "id": "5", + "label": "NOT INJURED", + "source": "cris", + "table_name": "injry_sev_lkp" + }, + { + "id": "95", + "label": "AUTONOMOUS", + "source": "cris", + "table_name": "injry_sev_lkp" + }, + { + "id": "1", + "label": "FRONT LEFT OR MOTORCYCLE DRIVER", + "source": "cris", + "table_name": "occpnt_pos_lkp" + }, + { + "id": "2", + "label": "FRONT CENTER OR MOTORCYCLE SIDECAR PASSENGER", + "source": "cris", + "table_name": "occpnt_pos_lkp" + }, + { + "id": "3", + "label": "FRONT RIGHT", + "source": "cris", + "table_name": "occpnt_pos_lkp" + }, + { + "id": "4", + "label": "SECOND SEAT LEFT OR MOTORCYCLE BACK PASSENGER", + "source": "cris", + "table_name": "occpnt_pos_lkp" + }, + { + "id": "5", + "label": "SECOND SEAT CENTER", + "source": "cris", + "table_name": "occpnt_pos_lkp" + }, + { + "id": "6", + "label": "SECOND SEAT RIGHT", + "source": "cris", + "table_name": "occpnt_pos_lkp" + }, + { + "id": "7", + "label": "THIRD SEAT LEFT", + "source": "cris", + "table_name": "occpnt_pos_lkp" + }, + { + "id": "8", + "label": "THIRD SEAT CENTER", + "source": "cris", + "table_name": "occpnt_pos_lkp" + }, + { + "id": "9", + "label": "THIRD SEAT RIGHT", + "source": "cris", + "table_name": "occpnt_pos_lkp" + }, + { + "id": "10", + "label": "CARGO AREA", + "source": "cris", + "table_name": "occpnt_pos_lkp" + }, + { + "id": "11", + "label": "OUTSIDE VEHICLE", + "source": "cris", + "table_name": "occpnt_pos_lkp" + }, + { + "id": "12", + "label": "UNKNOWN", + "source": "cris", + "table_name": "occpnt_pos_lkp" + }, + { + "id": "13", + "label": "OTHER IN VEHICLE", + "source": "cris", + "table_name": "occpnt_pos_lkp" + }, + { + "id": "14", + "label": "PASSENGER IN BUS", + "source": "cris", + "table_name": "occpnt_pos_lkp" + }, + { + "id": "16", + "label": "PEDESTRIAN, PEDALCYCLIST, OR MOTORIZED CONVEYANCE", + "source": "cris", + "table_name": "occpnt_pos_lkp" + }, + { + "id": "95", + "label": "AUTONOMOUS", + "source": "cris", + "table_name": "occpnt_pos_lkp" + }, + { + "id": "98", + "label": "OTHER (EXPLAIN IN NARRATIVE)", + "source": "cris", + "table_name": "occpnt_pos_lkp" + }, + { + "id": "1", + "label": "DRIVER", + "source": "cris", + "table_name": "prsn_type_lkp" + }, + { + "id": "2", + "label": "PASSENGER/OCCUPANT", + "source": "cris", + "table_name": "prsn_type_lkp" + }, + { + "id": "3", + "label": "PEDALCYCLIST", + "source": "cris", + "table_name": "prsn_type_lkp" + }, + { + "id": "4", + "label": "PEDESTRIAN", + "source": "cris", + "table_name": "prsn_type_lkp" + }, + { + "id": "5", + "label": "DRIVER OF MOTORCYCLE TYPE VEHICLE", + "source": "cris", + "table_name": "prsn_type_lkp" + }, + { + "id": "6", + "label": "PASSENGER/OCCUPANT ON MOTORCYCLE TYPE VEHICLE", + "source": "cris", + "table_name": "prsn_type_lkp" + }, + { + "id": "95", + "label": "AUTONOMOUS", + "source": "cris", + "table_name": "prsn_type_lkp" + }, + { + "id": "97", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "prsn_type_lkp" + }, + { + "id": "98", + "label": "OTHER (EXPLAIN IN NARRATIVE)", + "source": "cris", + "table_name": "prsn_type_lkp" + }, + { + "id": "99", + "label": "UNKNOWN", + "source": "cris", + "table_name": "prsn_type_lkp" + }, + { + "id": "1", + "label": "SHOULDER & LAP BELT", + "source": "cris", + "table_name": "rest_lkp" + }, + { + "id": "2", + "label": "SHOULDER BELT ONLY", + "source": "cris", + "table_name": "rest_lkp" + }, + { + "id": "3", + "label": "LAP BELT ONLY", + "source": "cris", + "table_name": "rest_lkp" + }, + { + "id": "4", + "label": "CHILD SEAT, FACING FORWARD", + "source": "cris", + "table_name": "rest_lkp" + }, + { + "id": "5", + "label": "CHILD SEAT, FACING REAR", + "source": "cris", + "table_name": "rest_lkp" + }, + { + "id": "6", + "label": "CHILD SEAT, UNKNOWN", + "source": "cris", + "table_name": "rest_lkp" + }, + { + "id": "7", + "label": "CHILD BOOSTER SEAT", + "source": "cris", + "table_name": "rest_lkp" + }, + { + "id": "8", + "label": "NONE", + "source": "cris", + "table_name": "rest_lkp" + }, + { + "id": "9", + "label": "OTHER (EXPLAIN IN NARRATIVE)", + "source": "cris", + "table_name": "rest_lkp" + }, + { + "id": "10", + "label": "UNKNOWN", + "source": "cris", + "table_name": "rest_lkp" + }, + { + "id": "11", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "rest_lkp" + }, + { + "id": "1", + "label": "BREATH", + "source": "cris", + "table_name": "specimen_type_lkp" + }, + { + "id": "2", + "label": "BLOOD", + "source": "cris", + "table_name": "specimen_type_lkp" + }, + { + "id": "3", + "label": "URINE", + "source": "cris", + "table_name": "specimen_type_lkp" + }, + { + "id": "4", + "label": "NONE", + "source": "cris", + "table_name": "specimen_type_lkp" + }, + { + "id": "5", + "label": "REFUSED", + "source": "cris", + "table_name": "specimen_type_lkp" + }, + { + "id": "6", + "label": "OTHER (EXPLAIN IN NARRATIVE)", + "source": "cris", + "table_name": "specimen_type_lkp" + }, + { + "id": "0", + "label": "UNKNOWN", + "source": "cris", + "table_name": "substnc_tst_result_lkp" + }, + { + "id": "1", + "label": "Positive", + "source": "cris", + "table_name": "substnc_tst_result_lkp" + }, + { + "id": "2", + "label": "Negative", + "source": "cris", + "table_name": "substnc_tst_result_lkp" + }, + { + "id": "97", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "substnc_tst_result_lkp" + }, + { + "id": "2", + "label": "CNS DEPRESSANTS", + "source": "cris", + "table_name": "substnc_cat_lkp" + }, + { + "id": "3", + "label": "CNS STIMULANTS", + "source": "cris", + "table_name": "substnc_cat_lkp" + }, + { + "id": "4", + "label": "HALLUCINOGENS", + "source": "cris", + "table_name": "substnc_cat_lkp" + }, + { + "id": "6", + "label": "NARCOTIC ANALGESICS", + "source": "cris", + "table_name": "substnc_cat_lkp" + }, + { + "id": "7", + "label": "INHALANTS", + "source": "cris", + "table_name": "substnc_cat_lkp" + }, + { + "id": "8", + "label": "CANNABIS", + "source": "cris", + "table_name": "substnc_cat_lkp" + }, + { + "id": "10", + "label": "DISSOCIATIVE ANESTHETICS", + "source": "cris", + "table_name": "substnc_cat_lkp" + }, + { + "id": "11", + "label": "OTHER DRUGS (EXPLAIN IN NARRATIVE)", + "source": "cris", + "table_name": "substnc_cat_lkp" + }, + { + "id": "12", + "label": "MULTIPLE DRUGS (EXPLAIN IN NARRATIVE)", + "source": "cris", + "table_name": "substnc_cat_lkp" + }, + { + "id": "97", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "substnc_cat_lkp" + }, + { + "id": "99", + "label": "UNKNOWN", + "source": "cris", + "table_name": "substnc_cat_lkp" + }, + { + "id": "0", + "label": "NO AUTOMATION", + "source": "cris", + "table_name": "autonomous_level_engaged_lkp" + }, + { + "id": "1", + "label": "DRIVER ASSISTANCE", + "source": "cris", + "table_name": "autonomous_level_engaged_lkp" + }, + { + "id": "2", + "label": "PARTIAL AUTOMATION", + "source": "cris", + "table_name": "autonomous_level_engaged_lkp" + }, + { + "id": "3", + "label": "CONDITIONAL AUTOMATION", + "source": "cris", + "table_name": "autonomous_level_engaged_lkp" + }, + { + "id": "4", + "label": "HIGH AUTOMATION", + "source": "cris", + "table_name": "autonomous_level_engaged_lkp" + }, + { + "id": "5", + "label": "FULL AUTOMATION", + "source": "cris", + "table_name": "autonomous_level_engaged_lkp" + }, + { + "id": "6", + "label": "AUTOMATION LEVEL UNKNOWN", + "source": "cris", + "table_name": "autonomous_level_engaged_lkp" + }, + { + "id": "94", + "label": "2023 CR3 EFFECTIVE 04/01/2023", + "source": "cris", + "table_name": "autonomous_level_engaged_lkp" + }, + { + "id": "99", + "label": "UNKNOWN", + "source": "cris", + "table_name": "autonomous_level_engaged_lkp" + }, + { + "id": "1", + "label": "YES", + "source": "cris", + "table_name": "autonomous_unit_lkp" + }, + { + "id": "2", + "label": "NO", + "source": "cris", + "table_name": "autonomous_unit_lkp" + }, + { + "id": "95", + "label": "DATA NOT AVAILABLE AT DATA ENTRY", + "source": "cris", + "table_name": "autonomous_unit_lkp" + }, + { + "id": "97", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "autonomous_unit_lkp" + }, + { + "id": "0", + "label": "NONE", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "1", + "label": "ANIMAL ON ROAD - DOMESTIC", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "2", + "label": "ANIMAL ON ROAD - WILD", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "3", + "label": "BACKED WITHOUT SAFETY", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "4", + "label": "CHANGED LANE WHEN UNSAFE", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "14", + "label": "DISABLED IN TRAFFIC LANE", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "15", + "label": "DISREGARD STOP AND GO SIGNAL", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "16", + "label": "DISREGARD STOP SIGN OR LIGHT", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "17", + "label": "DISREGARD TURN MARKS AT INTERSECTION", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "18", + "label": "DISREGARD WARNING SIGN AT CONSTRUCTION", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "19", + "label": "DISTRACTION IN VEHICLE", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "20", + "label": "DRIVER INATTENTION", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "21", + "label": "DROVE WITHOUT HEADLIGHTS", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "22", + "label": "FAILED TO CONTROL SPEED", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "23", + "label": "FAILED TO DRIVE IN SINGLE LANE", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "24", + "label": "FAILED TO GIVE HALF OF ROADWAY", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "25", + "label": "FAILED TO HEED WARNING SIGN OR TRAFFIC CONTROL DEVICE", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "26", + "label": "FAILED TO PASS TO LEFT SAFELY", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "27", + "label": "FAILED TO PASS TO RIGHT SAFELY", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "28", + "label": "FAILED TO SIGNAL OR GAVE WRONG SIGNAL", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "29", + "label": "FAILED TO STOP AT PROPER PLACE", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "30", + "label": "FAILED TO STOP FOR SCHOOL BUS", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "31", + "label": "FAILED TO STOP FOR TRAIN", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "32", + "label": "FAILED TO YIELD RIGHT OF WAY - EMERGENCY VEHICLE", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "33", + "label": "FAILED TO YIELD RIGHT OF WAY - OPEN INTERSECTION", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "34", + "label": "FAILED TO YIELD RIGHT OF WAY - PRIVATE DRIVE", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "35", + "label": "FAILED TO YIELD RIGHT OF WAY - STOP SIGN", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "36", + "label": "FAILED TO YIELD RIGHT OF WAY - TO PEDESTRIAN", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "37", + "label": "FAILED TO YIELD RIGHT OF WAY - TURNING LEFT", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "38", + "label": "FAILED TO YIELD RIGHT OF WAY - TURN ON RED", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "39", + "label": "FAILED TO YIELD RIGHT OF WAY - YIELD SIGN", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "40", + "label": "FATIGUED OR ASLEEP", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "41", + "label": "FAULTY EVASIVE ACTION", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "42", + "label": "FIRE IN VEHICLE", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "43", + "label": "FLEEING OR EVADING POLICE", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "44", + "label": "FOLLOWED TOO CLOSELY", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "45", + "label": "HAD BEEN DRINKING", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "46", + "label": "HANDICAPPED DRIVER (EXPLAIN IN NARRATIVE)", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "47", + "label": "ILL (EXPLAIN IN NARRATIVE)", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "48", + "label": "IMPAIRED VISIBILITY (EXPLAIN IN NARRATIVE)", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "49", + "label": "IMPROPER START FROM A STOPPED, STANDING, OR PARKED POSITION", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "50", + "label": "LOAD NOT SECURED", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "51", + "label": "OPENED DOOR INTO TRAFFIC LANE", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "52", + "label": "OVERSIZED VEHICLE OR LOAD", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "53", + "label": "OVERTAKE AND PASS INSUFFICIENT CLEARANCE", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "54", + "label": "PARKED AND FAILED TO SET BRAKES", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "55", + "label": "PARKED IN TRAFFIC LANE", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "56", + "label": "PARKED WITHOUT LIGHTS", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "57", + "label": "PASSED IN NO PASSING LANE", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "58", + "label": "PASSED ON SHOULDER", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "59", + "label": "PEDESTRIAN FAILED TO YIELD RIGHT OF WAY TO VEHICLE", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "60", + "label": "UNSAFE SPEED", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "61", + "label": "SPEEDING - (OVERLIMIT)", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "62", + "label": "TAKING MEDICATION (EXPLAIN IN NARRATIVE)", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "63", + "label": "TURNED IMPROPERLY - CUT CORNER ON LEFT", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "64", + "label": "TURNED IMPROPERLY - WIDE RIGHT", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "65", + "label": "TURNED IMPROPERLY - WRONG LANE", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "66", + "label": "TURNED WHEN UNSAFE", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "67", + "label": "INTOXICATED - ALCOHOL", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "68", + "label": "INTOXICATED - DRUG", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "69", + "label": "WRONG SIDE - APPROACH OR INTERSECTION", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "70", + "label": "WRONG SIDE - NOT PASSING", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "71", + "label": "WRONG WAY - ONE WAY ROAD", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "72", + "label": "CELL/MOBILE PHONE USE", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "73", + "label": "ROAD RAGE", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "74", + "label": "OTHER (EXPLAIN IN NARRATIVE)", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "75", + "label": "CELL/MOBILE DEVICE USE - TALKING", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "76", + "label": "CELL/MOBILE DEVICE USE - TEXTING", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "77", + "label": "CELL/MOBILE DEVICE USE - OTHER", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "78", + "label": "CELL/MOBILE DEVICE USE - UNKNOWN", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "79", + "label": "FAILED TO SLOW OR MOVE OVER FOR VEHICLES DISPLAYING EMERGENCY LIGHTS", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "80", + "label": "DROVE ON IMPROVED SHOULDER", + "source": "cris", + "table_name": "contrib_factr_lkp" + }, + { + "id": "1", + "label": "YES", + "source": "cris", + "table_name": "e_scooter_lkp" + }, + { + "id": "2", + "label": "NO", + "source": "cris", + "table_name": "e_scooter_lkp" + }, + { + "id": "95", + "label": "DATA NOT AVAILABLE AT DATA ENTRY", + "source": "cris", + "table_name": "e_scooter_lkp" + }, + { + "id": "97", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "e_scooter_lkp" + }, + { + "id": "1", + "label": "PEDESTRIAN", + "source": "cris", + "table_name": "harm_evnt_lkp" + }, + { + "id": "2", + "label": "MOTOR VEHICLE IN TRANSPORT", + "source": "cris", + "table_name": "harm_evnt_lkp" + }, + { + "id": "3", + "label": "RR TRAIN", + "source": "cris", + "table_name": "harm_evnt_lkp" + }, + { + "id": "4", + "label": "PARKED CAR", + "source": "cris", + "table_name": "harm_evnt_lkp" + }, + { + "id": "5", + "label": "PEDALCYCLIST", + "source": "cris", + "table_name": "harm_evnt_lkp" + }, + { + "id": "6", + "label": "ANIMAL", + "source": "cris", + "table_name": "harm_evnt_lkp" + }, + { + "id": "7", + "label": "FIXED OBJECT", + "source": "cris", + "table_name": "harm_evnt_lkp" + }, + { + "id": "8", + "label": "OTHER OBJECT", + "source": "cris", + "table_name": "harm_evnt_lkp" + }, + { + "id": "9", + "label": "OTHER NON COLLISION", + "source": "cris", + "table_name": "harm_evnt_lkp" + }, + { + "id": "10", + "label": "OVERTURNED", + "source": "cris", + "table_name": "harm_evnt_lkp" + }, + { + "id": "1", + "label": "BACKING VEHICLE", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "2", + "label": "BICYCLIST FAILED TO CLEAR - MULTIPLE THREAT", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "3", + "label": "BICYCLIST FAILED TO CLEAR - TRAPPED", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "4", + "label": "BICYCLIST FAILED TO CLEAR - UNKNOWN", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "5", + "label": "BICYCLIST INTENTIONALLY CAUSED", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "6", + "label": "BICYCLIST LEFT TURN - OPPOSITE DIRECTION", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "7", + "label": "BICYCLIST LEFT TURN - SAME DIRECTION", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "8", + "label": "BICYCLIST LOST CONTROL - MECHANICAL PROBLEMS", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "9", + "label": "BICYCLIST LOST CONTROL - OTHER/UNKNOWN", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "10", + "label": "BICYCLIST LOST CONTROL - OVERSTEERING, IMPROPER BRAKING, SPEED", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "11", + "label": "BICYCLIST LOST CONTROL - SURFACE CONDITIONS", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "12", + "label": "BICYCLIST OVERTAKING - EXTENDED DOOR", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "13", + "label": "BICYCLIST OVERTAKING - OTHER/UNKNOWN", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "15", + "label": "BICYCLIST OVERTAKING - PASSING ON LEFT", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "16", + "label": "BICYCLIST OVERTAKING - PASSING ON RIGHT", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "17", + "label": "BICYCLIST RIDE OUT - COMMERCIAL DRIVEWAY/ALLEY", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "18", + "label": "BICYCLIST RIDE OUT - MIDBLOCK - UNKNOWN", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "19", + "label": "BICYCLIST RIDE OUT - OTHER MIDBLOCK", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "20", + "label": "BICYCLIST RIDE OUT - PARALLEL PATH", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "21", + "label": "BICYCLIST RIDE OUT - RESIDENTIAL DRIVEWAY", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "22", + "label": "BICYCLIST RIDE OUT - SIGN-CONTROLLED INTERSECTION", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "23", + "label": "BICYCLIST RIDE OUT - SIGNALIZED INTERSECTION", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "24", + "label": "BICYCLIST RIDE THROUGH - SIGN-CONTROLLED INTERSECTION", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "25", + "label": "BICYCLIST RIDE THROUGH - SIGNALIZED INTERSECTION", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "26", + "label": "BICYCLIST RIGHT TURN - OPPOSITE DIRECTION", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "27", + "label": "BICYCLIST RIGHT TURN - SAME DIRECTION", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "28", + "label": "BICYCLIST TURNING ERROR - LEFT TURN", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "29", + "label": "BICYCLIST TURNING ERROR - OTHER", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "30", + "label": "BICYCLIST TURNING ERROR - RIGHT TURN", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "31", + "label": "BICYCLIST LOST CONTROL - ALCOHOL/DRUG IMPAIRMENT", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "32", + "label": "BUS/DELIVERY VEHICLE PULLOVER", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "33", + "label": "CROSSING PATHS - INTERSECTION - OTHER/UNKNOWN", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "34", + "label": "CROSSING PATHS - MIDBLOCK - OTHER/UNKNOWN", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "35", + "label": "CROSSING PATHS - UNCONTROLLED INTERSECTION", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "36", + "label": "HEAD-ON - BICYCLIST", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "37", + "label": "HEAD-ON - MOTORIST", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "38", + "label": "HEAD-ON - UNKNOWN", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "39", + "label": "MOTORIST DRIVE IN/OUT PARKING", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "40", + "label": "MOTORIST DRIVE OUT - COMMERCIAL DRIVEWAY/ALLEY", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "41", + "label": "MOTORIST DRIVE OUT - MIDBLOCK - UNKNOWN", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "42", + "label": "MOTORIST DRIVE OUT - OTHER MIDBLOCK", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "43", + "label": "MOTORIST DRIVE OUT - RESIDENTIAL DRIVEWAY", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "44", + "label": "MOTORIST DRIVE OUT - RIGHT TURN ON RED", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "45", + "label": "MOTORIST DRIVE OUT - SIGN-CONTROLLED INTERSECTION", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "46", + "label": "MOTORIST DRIVE OUT - SIGNALIZED INTERSECTION", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "47", + "label": "MOTORIST DRIVE THROUGH - SIGN-CONTROLLED INTERSECTION", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "48", + "label": "MOTORIST DRIVE THROUGH - SIGNALIZED INTERSECTION", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "49", + "label": "MOTORIST INTENTIONALLY CAUSED", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "50", + "label": "MOTORIST LEFT TURN - OPPOSITE DIRECTION", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "51", + "label": "MOTORIST LEFT TURN - SAME DIRECTION", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "52", + "label": "MOTORIST LOST CONTROL - ALCOHOL/DRUG IMPAIRMENT", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "53", + "label": "MOTORIST LOST CONTROL - MECHANICAL PROBLEMS", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "54", + "label": "MOTORIST LOST CONTROL - OTHER/UNKNOWN", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "55", + "label": "MOTORIST LOST CONTROL - OVERSTEERING, IMPROPER BRAKING, SPEED", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "56", + "label": "MOTORIST LOST CONTROL - SURFACE CONDITIONS", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "57", + "label": "MOTORIST OVERTAKING - BICYCLIST SWERVED", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "58", + "label": "MOTORIST OVERTAKING - MISJUDGED SPACE", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "59", + "label": "MOTORIST OVERTAKING - OTHER/UNKNOWN", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "60", + "label": "MOTORIST OVERTAKING - UNDETECTED BICYCLIST", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "61", + "label": "MOTORIST RIGHT TURN - OPPOSITE DIRECTION", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "62", + "label": "MOTORIST RIGHT TURN - SAME DIRECTION", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "63", + "label": "MOTORIST RIGHT TURN ON RED - OPPOSITE DIRECTION", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "64", + "label": "MOTORIST RIGHT TURN ON RED - SAME DIRECTION", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "65", + "label": "MOTORIST TURN/MERGE - OTHER/UNKNOWN", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "66", + "label": "MOTORIST TURNING ERROR - LEFT TURN", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "67", + "label": "MOTORIST TURNING ERROR - OTHER", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "68", + "label": "MOTORIST TURNING ERROR - RIGHT TURN", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "69", + "label": "MULTIPLE THREAT - MIDBLOCK", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "70", + "label": "MULTIPLE THREAT - SIGN-CONTROLLED INTERSECTION", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "71", + "label": "NON-ROADWAY", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "72", + "label": "PARALLEL PATHS - OTHER/UNKNOWN", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "73", + "label": "SIGN-CONTROLLED INTERSECTION - OTHER/UNKNOWN", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "74", + "label": "SIGNALIZED INTERSECTION - OTHER/UNKNOWN", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "75", + "label": "UNKNOWN APPROACH PATHS", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "76", + "label": "UNKNOWN LOCATION", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "77", + "label": "UNUSUAL CIRCUMSTANCES", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "95", + "label": "DATA NOT AVAILABLE AT DATA ENTRY", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "97", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "pbcat_pedalcyclist_lkp" + }, + { + "id": "1", + "label": "ASSAULT WITH VEHICLE", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "2", + "label": "BACKING VEHICLE - DRIVEWAY", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "3", + "label": "BACKING VEHICLE - DRIVEWAY/SIDEWALK INTERSECTION", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "4", + "label": "BACKING VEHICLE - OTHER/UNKNOWN", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "5", + "label": "BACKING VEHICLE - PARKING LOT", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "6", + "label": "BACKING VEHICLE - ROADWAY", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "7", + "label": "COMMERCIAL BUS-RELATED", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "8", + "label": "CROSSING AN EXPRESSWAY", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "9", + "label": "CROSSING DRIVEWAY OR ALLEY", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "10", + "label": "DART-OUT", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "11", + "label": "DASH", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "12", + "label": "DISABLED VEHICLE-RELATED", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "13", + "label": "DISPUTE-RELATED", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "14", + "label": "DRIVERLESS VEHICLE", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "15", + "label": "DRIVEWAY CROSSING - OTHER/UNKNOWN", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "16", + "label": "EMERGENCY VEHICLE-RELATED", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "17", + "label": "ENTERING/EXITING PARKED VEHICLE", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "18", + "label": "ICE CREAM/VENDOR TRUCK-RELATED", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "19", + "label": "INTERSECTION - OTHER/UNKNOWN", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "20", + "label": "LYING IN ROADWAY", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "21", + "label": "MAILBOX RELATED", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "22", + "label": "MOTOR VEHICLE LOSS OF CONTROL", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "23", + "label": "MOTORIST ENTERING DRIVEWAY OR ALLEY", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "24", + "label": "MOTORIST FAILED TO YIELD", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "25", + "label": "MOTORIST LEFT TURN - PARALLEL PATHS", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "26", + "label": "MOTORIST LEFT TURN - PERPENDICULAR PATHS", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "27", + "label": "MOTORIST RIGHT TURN - PARALLEL PATHS", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "28", + "label": "MOTORIST RIGHT TURN - PERPENDICULAR PATHS", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "29", + "label": "MOTORIST RIGHT TURN ON RED - PARALLEL PATHS", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "30", + "label": "MOTORIST RIGHT TURN ON RED - PERPENDICULAR PATHS", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "31", + "label": "MOTORIST TURN/MERGE - OTHER/UNKNOWN", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "32", + "label": "MULTIPLE THREAT", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "33", + "label": "NON-INTERSECTION - OTHER/UNKNOWN", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "34", + "label": "OFF ROADWAY - OTHER/UNKNOWN", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "35", + "label": "OFF ROADWAY - PARKING LOT", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "36", + "label": "OTHER - UNKNOWN LOCATION", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "37", + "label": "OTHER UNUSUAL CIRCUMSTANCES", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "38", + "label": "PEDESTRIAN FAILED TO YIELD", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "39", + "label": "PEDESTRIAN LOSS OF CONTROL", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "40", + "label": "PLAY VEHICLE-RELATED", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "41", + "label": "PLAYING IN ROADWAY", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "42", + "label": "SCHOOL BUS-RELATED", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "43", + "label": "STANDING IN ROADWAY", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "44", + "label": "TRAPPED", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "45", + "label": "VEHICLE-VEHICLE/OBJECT", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "46", + "label": "WAITING TO CROSS - VEHICLE ACTION UNKNOWN", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "47", + "label": "WAITING TO CROSS - VEHICLE NOT TURNING", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "48", + "label": "WAITING TO CROSS - VEHICLE TURNING", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "49", + "label": "WALKING ALONG ROADWAY - DIRECTION/POSITION UNKNOWN", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "50", + "label": "WALKING ALONG ROADWAY AGAINST TRAFFIC - FROM BEHIND", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "51", + "label": "WALKING ALONG ROADWAY AGAINST TRAFFIC - FROM FRONT", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "52", + "label": "WALKING ALONG ROADWAY WITH TRAFFIC - FROM BEHIND", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "53", + "label": "WALKING ALONG ROADWAY WITH TRAFFIC - FROM FRONT", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "54", + "label": "WALKING IN ROADWAY", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "55", + "label": "WORKING IN ROADWAY", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "95", + "label": "DATA NOT AVAILABLE AT DATA ENTRY", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "97", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "pbcat_pedestrian_lkp" + }, + { + "id": "1", + "label": "IN PARKING LOT", + "source": "cris", + "table_name": "pedalcyclist_action_lkp" + }, + { + "id": "2", + "label": "NOT IN ROADWAY", + "source": "cris", + "table_name": "pedalcyclist_action_lkp" + }, + { + "id": "3", + "label": "OTHER IN ROADWAY (EX. STANDING OR PLAYING)", + "source": "cris", + "table_name": "pedalcyclist_action_lkp" + }, + { + "id": "4", + "label": "OTHER RIDING WHILE DISTRACTED (TALKING, EATING, ELECTRONIC DEVICE, ETC.)", + "source": "cris", + "table_name": "pedalcyclist_action_lkp" + }, + { + "id": "5", + "label": "RIDING CYCLE WHILE CROSSING ROAD AT DRIVEWAY", + "source": "cris", + "table_name": "pedalcyclist_action_lkp" + }, + { + "id": "6", + "label": "RIDING CYCLE WHILE CROSSING ROAD AT INTERSECTION OR CROSSWALK (MARKED OR UNMARKED)", + "source": "cris", + "table_name": "pedalcyclist_action_lkp" + }, + { + "id": "7", + "label": "RIDING CYCLE WHILE CROSSING ROAD NOT AT INTERSECTION OR CROSSWALK", + "source": "cris", + "table_name": "pedalcyclist_action_lkp" + }, + { + "id": "8", + "label": "RIDING IN BIKE LANE - AGAINST TRAFFIC", + "source": "cris", + "table_name": "pedalcyclist_action_lkp" + }, + { + "id": "9", + "label": "RIDING IN BIKE LANE - WITH TRAFFIC", + "source": "cris", + "table_name": "pedalcyclist_action_lkp" + }, + { + "id": "10", + "label": "RIDING IN ROADWAY (VEHICLE LANE - UNKNOWN IF BIKE MARKINGS PRESENT) - AGAINST TRAFFIC", + "source": "cris", + "table_name": "pedalcyclist_action_lkp" + }, + { + "id": "11", + "label": "RIDING IN ROADWAY (VEHICLE LANE - UNKNOWN IF BIKE MARKINGS PRESENT) - WITH TRAFFIC", + "source": "cris", + "table_name": "pedalcyclist_action_lkp" + }, + { + "id": "12", + "label": "RIDING IN ROADWAY (VEHICLE LANE WITH BIKE MARKINGS IN THE LANE) - AGAINST TRAFFIC", + "source": "cris", + "table_name": "pedalcyclist_action_lkp" + }, + { + "id": "13", + "label": "RIDING IN ROADWAY (VEHICLE LANE WITH BIKE MARKINGS IN THE LANE) - WITH TRAFFIC", + "source": "cris", + "table_name": "pedalcyclist_action_lkp" + }, + { + "id": "14", + "label": "RIDING IN ROADWAY (VEHICLE LANE WITHOUT BIKE MARKINGS) - AGAINST TRAFFIC", + "source": "cris", + "table_name": "pedalcyclist_action_lkp" + }, + { + "id": "15", + "label": "RIDING IN ROADWAY (VEHICLE LANE WITHOUT BIKE MARKINGS) - WITH TRAFFIC", + "source": "cris", + "table_name": "pedalcyclist_action_lkp" + }, + { + "id": "16", + "label": "RIDING IN SHOULDER - AGAINST TRAFFIC", + "source": "cris", + "table_name": "pedalcyclist_action_lkp" + }, + { + "id": "17", + "label": "RIDING IN SHOULDER - WITH TRAFFIC", + "source": "cris", + "table_name": "pedalcyclist_action_lkp" + }, + { + "id": "18", + "label": "RIDING ON SIDEWALK", + "source": "cris", + "table_name": "pedalcyclist_action_lkp" + }, + { + "id": "19", + "label": "WORKING IN ROADWAY OR SHOULDER (INCIDENT RESPONSE)", + "source": "cris", + "table_name": "pedalcyclist_action_lkp" + }, + { + "id": "95", + "label": "DATA NOT AVAILABLE AT DATA ENTRY", + "source": "cris", + "table_name": "pedalcyclist_action_lkp" + }, + { + "id": "97", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "pedalcyclist_action_lkp" + }, + { + "id": "99", + "label": "UNKNOWN", + "source": "cris", + "table_name": "pedalcyclist_action_lkp" + }, + { + "id": "1", + "label": "CONSTRUCTION WORKER IN ROADWAY OR SHOULDER", + "source": "cris", + "table_name": "pedestrian_action_lkp" + }, + { + "id": "2", + "label": "CROSSING DRIVEWAY OR ALLEY", + "source": "cris", + "table_name": "pedestrian_action_lkp" + }, + { + "id": "3", + "label": "CROSSING ROAD AT INTERSECTION OR CROSSWALK (MARKED OR UNMARKED)", + "source": "cris", + "table_name": "pedestrian_action_lkp" + }, + { + "id": "4", + "label": "CROSSING ROAD NOT AT INTERSECTION OR CROSSWALK (MARKED OR UNMARKED)", + "source": "cris", + "table_name": "pedestrian_action_lkp" + }, + { + "id": "5", + "label": "CROSSING ROAD WITH DO NOT WALK PHASE OR PEDESTRIAN TRAFFIC CONTROL SIGNAL", + "source": "cris", + "table_name": "pedestrian_action_lkp" + }, + { + "id": "6", + "label": "GETTING ON OR OFF VEHICLE", + "source": "cris", + "table_name": "pedestrian_action_lkp" + }, + { + "id": "7", + "label": "IN PARKING LOT/PRIVATE PROPERTY", + "source": "cris", + "table_name": "pedestrian_action_lkp" + }, + { + "id": "8", + "label": "NOT IN ROADWAY", + "source": "cris", + "table_name": "pedestrian_action_lkp" + }, + { + "id": "9", + "label": "OTHER IN ROADWAY (EX. PLAYING OR LYING DOWN)", + "source": "cris", + "table_name": "pedestrian_action_lkp" + }, + { + "id": "10", + "label": "OTHER WALKING WHILE DISTRACTED (TALKING, EATING, ELECTRONIC DEVICE, ETC.)", + "source": "cris", + "table_name": "pedestrian_action_lkp" + }, + { + "id": "11", + "label": "PUSHING OR WORKING ON VEHICLE IN ROADWAY OR SHOULDER", + "source": "cris", + "table_name": "pedestrian_action_lkp" + }, + { + "id": "12", + "label": "STANDING IN MEDIAN", + "source": "cris", + "table_name": "pedestrian_action_lkp" + }, + { + "id": "13", + "label": "STANDING IN ROADWAY", + "source": "cris", + "table_name": "pedestrian_action_lkp" + }, + { + "id": "14", + "label": "STANDING IN SHOULDER", + "source": "cris", + "table_name": "pedestrian_action_lkp" + }, + { + "id": "15", + "label": "STANDING IN SIDEWALK", + "source": "cris", + "table_name": "pedestrian_action_lkp" + }, + { + "id": "16", + "label": "WALKING IN MEDIAN", + "source": "cris", + "table_name": "pedestrian_action_lkp" + }, + { + "id": "18", + "label": "WALKING IN ROADWAY - AGAINST TRAFFIC", + "source": "cris", + "table_name": "pedestrian_action_lkp" + }, + { + "id": "19", + "label": "WALKING IN ROADWAY - WITH TRAFFIC", + "source": "cris", + "table_name": "pedestrian_action_lkp" + }, + { + "id": "20", + "label": "WALKING IN SHOULDER - AGAINST TRAFFIC", + "source": "cris", + "table_name": "pedestrian_action_lkp" + }, + { + "id": "21", + "label": "WALKING IN SHOULDER - WITH TRAFFIC", + "source": "cris", + "table_name": "pedestrian_action_lkp" + }, + { + "id": "22", + "label": "WALKING IN SIDEWALK", + "source": "cris", + "table_name": "pedestrian_action_lkp" + }, + { + "id": "23", + "label": "WORKING IN ROADWAY OR SHOULDER (INCIDENT RESPONSE)", + "source": "cris", + "table_name": "pedestrian_action_lkp" + }, + { + "id": "24", + "label": "IN A BUILDING OR HOUSE", + "source": "cris", + "table_name": "pedestrian_action_lkp" + }, + { + "id": "95", + "label": "DATA NOT AVAILABLE AT DATA ENTRY", + "source": "cris", + "table_name": "pedestrian_action_lkp" + }, + { + "id": "97", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "pedestrian_action_lkp" + }, + { + "id": "99", + "label": "UNKNOWN", + "source": "cris", + "table_name": "pedestrian_action_lkp" + }, + { + "id": "1", + "label": "NORTH", + "source": "cris", + "table_name": "trvl_dir_lkp" + }, + { + "id": "2", + "label": "NORTHEAST", + "source": "cris", + "table_name": "trvl_dir_lkp" + }, + { + "id": "3", + "label": "EAST", + "source": "cris", + "table_name": "trvl_dir_lkp" + }, + { + "id": "4", + "label": "SOUTHEAST", + "source": "cris", + "table_name": "trvl_dir_lkp" + }, + { + "id": "5", + "label": "SOUTH", + "source": "cris", + "table_name": "trvl_dir_lkp" + }, + { + "id": "6", + "label": "SOUTHWEST", + "source": "cris", + "table_name": "trvl_dir_lkp" + }, + { + "id": "7", + "label": "WEST", + "source": "cris", + "table_name": "trvl_dir_lkp" + }, + { + "id": "8", + "label": "NORTHWEST", + "source": "cris", + "table_name": "trvl_dir_lkp" + }, + { + "id": "9", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "trvl_dir_lkp" + }, + { + "id": "11", + "label": "UNKNOWN", + "source": "cris", + "table_name": "trvl_dir_lkp" + }, + { + "id": "1", + "label": "MOTOR VEHICLE", + "source": "cris", + "table_name": "unit_desc_lkp" + }, + { + "id": "2", + "label": "TRAIN", + "source": "cris", + "table_name": "unit_desc_lkp" + }, + { + "id": "3", + "label": "PEDALCYCLIST", + "source": "cris", + "table_name": "unit_desc_lkp" + }, + { + "id": "4", + "label": "PEDESTRIAN", + "source": "cris", + "table_name": "unit_desc_lkp" + }, + { + "id": "5", + "label": "MOTORIZED CONVEYANCE", + "source": "cris", + "table_name": "unit_desc_lkp" + }, + { + "id": "6", + "label": "TOWED/TRAILER", + "source": "cris", + "table_name": "unit_desc_lkp" + }, + { + "id": "7", + "label": "NON-CONTACT", + "source": "cris", + "table_name": "unit_desc_lkp" + }, + { + "id": "8", + "label": "OTHER (EXPLAIN IN NARRATIVE)", + "source": "cris", + "table_name": "unit_desc_lkp" + }, + { + "id": "0", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_body_styl_lkp" + }, + { + "id": "9", + "label": "AMBULANCE", + "source": "cris", + "table_name": "veh_body_styl_lkp" + }, + { + "id": "23", + "label": "FIRE TRUCK", + "source": "cris", + "table_name": "veh_body_styl_lkp" + }, + { + "id": "30", + "label": "PICKUP", + "source": "cris", + "table_name": "veh_body_styl_lkp" + }, + { + "id": "47", + "label": "BUS", + "source": "cris", + "table_name": "veh_body_styl_lkp" + }, + { + "id": "69", + "label": "SPORT UTILITY VEHICLE", + "source": "cris", + "table_name": "veh_body_styl_lkp" + }, + { + "id": "71", + "label": "MOTORCYCLE", + "source": "cris", + "table_name": "veh_body_styl_lkp" + }, + { + "id": "87", + "label": "TRUCK TRACTOR", + "source": "cris", + "table_name": "veh_body_styl_lkp" + }, + { + "id": "90", + "label": "POLICE MOTORCYCLE", + "source": "cris", + "table_name": "veh_body_styl_lkp" + }, + { + "id": "92", + "label": "OTHER (EXPLAIN IN NARRATIVE)", + "source": "cris", + "table_name": "veh_body_styl_lkp" + }, + { + "id": "100", + "label": "PASSENGER CAR, 2-DOOR", + "source": "cris", + "table_name": "veh_body_styl_lkp" + }, + { + "id": "101", + "label": "FARM EQUIPMENT", + "source": "cris", + "table_name": "veh_body_styl_lkp" + }, + { + "id": "102", + "label": "TRAILER, SEMI-TRAILER, OR POLE TRAILER", + "source": "cris", + "table_name": "veh_body_styl_lkp" + }, + { + "id": "103", + "label": "VAN", + "source": "cris", + "table_name": "veh_body_styl_lkp" + }, + { + "id": "104", + "label": "PASSENGER CAR, 4-DOOR", + "source": "cris", + "table_name": "veh_body_styl_lkp" + }, + { + "id": "105", + "label": "POLICE CAR/TRUCK", + "source": "cris", + "table_name": "veh_body_styl_lkp" + }, + { + "id": "106", + "label": "TRUCK", + "source": "cris", + "table_name": "veh_body_styl_lkp" + }, + { + "id": "107", + "label": "YELLOW SCHOOL BUS", + "source": "cris", + "table_name": "veh_body_styl_lkp" + }, + { + "id": "108", + "label": "NEV-NEIGHBORHOOD ELECTRIC VEHICLE", + "source": "cris", + "table_name": "veh_body_styl_lkp" + }, + { + "id": "109", + "label": "SCHOOL BUS OTHER", + "source": "cris", + "table_name": "veh_body_styl_lkp" + }, + { + "id": "0", + "label": "UNK - UNKNOWN", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "1", + "label": "FC - FRONT END DAMAGE CONCENTRATED IMPACT", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "2", + "label": "FD - FRONT END DAMAGE DISTRIBUTED IMPACT", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "3", + "label": "FL - FRONT END (LEFT) DAMAGE PARTIAL CONTACT", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "4", + "label": "FR - FRONT END (RIGHT) DAMAGE PARTIAL CONTACT", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "5", + "label": "BC - BACK END DAMAGE CONCENTRATED IMPACT", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "6", + "label": "BD - BACK END DAMAGE DISTRIBUTED IMPACT", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "7", + "label": "BL - BACK END (LEFT) DAMAGE PARTIAL CONTACT", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "8", + "label": "BR - BACK END (RIGHT) DAMAGE PARTIAL CONTACT", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "9", + "label": "LP - LEFT SIDE DAMAGE ANGULAR IMPACT", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "10", + "label": "RP - RIGHT SIDE DAMAGE ANGULAR IMPACT", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "11", + "label": "LFQ - LEFT FRONT QUARTER DAMAGE ANGULAR IMPACT", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "12", + "label": "RFQ - RIGHT FRONT QUARTER DAMAGE ANGULAR IMPACT", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "13", + "label": "LBQ - LEFT BACK QUARTER DAMAGE ANGULAR IMPACT", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "14", + "label": "RBQ - RIGHT BACK QUARTER DAMAGE ANGULAR IMPACT", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "15", + "label": "LD - DISTRIBUTED LEFT SIDE DAMAGE PARALLEL IMPACT", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "16", + "label": "RD - DISTRIBUTED RIGHT SIDE DAMAGE PARALLEL IMPACT", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "17", + "label": "L&T - LEFT SIDE AND TOP DAMAGE ROLLOVER EFFECTS", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "18", + "label": "R&T - RIGHT SIDE AND TOP DAMAGE ROLLOVER EFFECTS", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "19", + "label": "VX-0 - UNDERCARRIAGE DAMAGE ONLY", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "20", + "label": "VB-1 - VEHICLE BURNED NOT DUE TO COLLISION (ENGINE CATCHES FIRE, CIGARETTE BURNS UPHOLSTERY, ETC.)", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "22", + "label": "VB-7 - VEHICLE CATCHES FIRE DUE TO THE COLLISION (VEHICLE COLLIDES WITH OBJECT OR ANOTHER VEHICLE AND FIRE STARTS)", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "23", + "label": "NA-NOT APPLICABLE ( FARM TRACTOR, ETC.)", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "24", + "label": "TP-0 - TOP DAMAGE ONLY", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "25", + "label": "MC-1 - MOTORCYCLE, SCOOTER, MOPED, ETC. ONLY", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "26", + "label": "MC - MOTORCYCLE, SCOOTER, MOPED, ETC. ONLY", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "27", + "label": "TP - TOP DAMAGE", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "28", + "label": "VB - VEHICLE BURNED", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "29", + "label": "VX - UNDERCARRIAGE DAMAGE", + "source": "cris", + "table_name": "veh_damage_description_lkp" + }, + { + "id": "0", + "label": "NO DAMAGE", + "source": "cris", + "table_name": "veh_damage_severity_lkp" + }, + { + "id": "1", + "label": "DAMAGED 1 MINIMUM", + "source": "cris", + "table_name": "veh_damage_severity_lkp" + }, + { + "id": "2", + "label": "DAMAGED 2", + "source": "cris", + "table_name": "veh_damage_severity_lkp" + }, + { + "id": "3", + "label": "DAMAGED 3", + "source": "cris", + "table_name": "veh_damage_severity_lkp" + }, + { + "id": "4", + "label": "DAMAGED 4", + "source": "cris", + "table_name": "veh_damage_severity_lkp" + }, + { + "id": "5", + "label": "DAMAGED 5", + "source": "cris", + "table_name": "veh_damage_severity_lkp" + }, + { + "id": "6", + "label": "DAMAGED 6", + "source": "cris", + "table_name": "veh_damage_severity_lkp" + }, + { + "id": "7", + "label": "DAMAGED 7 HIGHEST", + "source": "cris", + "table_name": "veh_damage_severity_lkp" + }, + { + "id": "1", + "label": "ACURA", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "4", + "label": "AMERICAN MOTORS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "6", + "label": "APRILIA", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "7", + "label": "ASTON MARTIN", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "8", + "label": "AUDI", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "10", + "label": "AUTOCAR", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "11", + "label": "BENTLEY", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "13", + "label": "BLUE BIRD", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "14", + "label": "BMW", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "17", + "label": "BUELL", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "19", + "label": "CATERPILLAR", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "21", + "label": "CHRYSLER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "23", + "label": "CRANE CARRIER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "25", + "label": "DAEWOO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "26", + "label": "DAIHATSU", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "28", + "label": "DIAMOND REO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "30", + "label": "DINA TRANSIT BUS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "32", + "label": "DUCATI", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "33", + "label": "FEDERAL MOTORS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "34", + "label": "FERRARI", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "35", + "label": "FIAT", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "36", + "label": "FLXIBLE TRANSIT BUS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "37", + "label": "FORD", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "38", + "label": "FREIGHTLINER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "39", + "label": "GMC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "40", + "label": "GILLIG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "42", + "label": "HARLEY-DAVIDSON", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "43", + "label": "HINO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "44", + "label": "HONDA", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "45", + "label": "HYUNDAI", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "47", + "label": "INFINITI", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "48", + "label": "INTERNATIONAL", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "49", + "label": "ISUZU", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "50", + "label": "IVECO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "51", + "label": "JAGUAR", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "52", + "label": "JOHN DEERE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "53", + "label": "KAWASAKI", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "54", + "label": "KENWORTH", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "55", + "label": "KIA", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "56", + "label": "LANCIA", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "57", + "label": "LAND ROVER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "58", + "label": "LEXUS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "59", + "label": "LOTUS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "60", + "label": "MACK", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "61", + "label": "MARMON HERRINGTON", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "62", + "label": "MAYBACH", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "63", + "label": "MAZDA", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "64", + "label": "LES AUTOBUS MCI", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "65", + "label": "MERCEDES-BENZ", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "68", + "label": "MITSUBISHI", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "69", + "label": "MOTO GUZZI", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "70", + "label": "NEOPLAN", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "71", + "label": "NISSAN", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "74", + "label": "PETERBILT", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "75", + "label": "PEUGEOT", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "76", + "label": "PORSCHE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "79", + "label": "ROLLS-ROYCE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "80", + "label": "SAAB", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "81", + "label": "SATURN", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "82", + "label": "SILVER EAGLE MFG CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "84", + "label": "STERLING", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "85", + "label": "SUBARU", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "88", + "label": "SUZUKI", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "89", + "label": "TRANSPORTATION MFG CORP.", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "91", + "label": "TOYOTA", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "92", + "label": "TRIUMPH CAR", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "95", + "label": "VESPA", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "96", + "label": "VOLKSWAGEN", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "98", + "label": "VOLVO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "100", + "label": "WHITE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "101", + "label": "YAMAHA", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "102", + "label": "YUGO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "104", + "label": "ALFA ROMEO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "105", + "label": "BUICK", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "106", + "label": "CADILLAC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "107", + "label": "CHEVROLET", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "108", + "label": "DATSUN", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "109", + "label": "DODGE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "110", + "label": "GEO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "112", + "label": "HUMMER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "113", + "label": "LINCOLN", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "114", + "label": "MERCURY", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "115", + "label": "MINI", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "116", + "label": "OLDSMOBILE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "117", + "label": "PLYMOUTH", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "118", + "label": "PONTIAC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "119", + "label": "ALL OTHER MAKES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "121", + "label": "MERKUR", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "125", + "label": "AVANTI", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "146", + "label": "EAGLE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "151", + "label": "FORETRAVEL MOTORHOME", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "155", + "label": "FWD CORPORATION", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "157", + "label": "GREAT DANE TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "160", + "label": "INDIAN MOTORCYCLE CO.", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "167", + "label": "LADA", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "168", + "label": "LAMBORGHINI", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "171", + "label": "MASERATI", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "173", + "label": "MONARCH TRAILER CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "178", + "label": "OSHKOSH", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "179", + "label": "OVERLAND TRUCK/TRAILER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "181", + "label": "PIERCE MFG. INC.", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "183", + "label": "PREVOST", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "201", + "label": "WINNEBAGO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "207", + "label": "OTHER (EXPLAIN IN NARRATIVE)", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "208", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "210", + "label": "ACE WELDING TRAILER COMPANY", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "211", + "label": "ACIER FABREX INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "212", + "label": "ACRO TRAILER COMPANY", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "213", + "label": "ACTION EQUIPMENT", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "214", + "label": "ADVANCE ENGINEERED PRODUCTS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "215", + "label": "ADVANCE MIXER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "216", + "label": "AJAX MANUFACTURING COMPANY INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "217", + "label": "AJR INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "218", + "label": "ALABAMA TRAILER COMPANY", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "219", + "label": "ALFAB INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "220", + "label": "ALLENTOWN BRAKE & WHEEL SERVICE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "221", + "label": "ALLIED TANK TRUCK", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "222", + "label": "ALLOY TRAILERS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "223", + "label": "ALMONT", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "224", + "label": "ALTEC IND INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "225", + "label": "ALUMATECH", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "226", + "label": "ALUMINUM BODY CORP", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "227", + "label": "AMERICAN GENERAL", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "228", + "label": "AMERICAN CARRIER EQUIPMENT", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "229", + "label": "AMERICAN IRON HORSE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "230", + "label": "AMERICAN LA FRANCE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "231", + "label": "AMERICAN REBEL", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "232", + "label": "AMERICAN ROAD TRAILER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "233", + "label": "AMERICAN TRAILER MANUFACTURING INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "234", + "label": "AMERICAN TRAILERS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "235", + "label": "ANDERSON MANUFACTURING INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "236", + "label": "ANJI MFG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "237", + "label": "ARLINGTON POWER SYSTEMS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "238", + "label": "ARMOR CHASSIS LLC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "239", + "label": "ARTECH ENG INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "240", + "label": "ASPEN METAL PROD & FABRICATORS LTD", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "241", + "label": "ASUNA", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "242", + "label": "ATK", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "243", + "label": "ATLAS MFG CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "244", + "label": "ATLAS TRUCK BODIES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "245", + "label": "AUTOCAR LLC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "246", + "label": "AZTEC PRODUCTS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "247", + "label": "BAME TRAILER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "248", + "label": "BANKHEAD ENTERPRISES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "249", + "label": "BAR-BEL FABRICATION CO INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "250", + "label": "BARRETT TRAILERS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "251", + "label": "BEALL AND/OR TECWELD", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "252", + "label": "BEDARD TANKERS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "253", + "label": "BENSON TRUCK BODIES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "254", + "label": "BERING", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "255", + "label": "BETTER BUILT TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "256", + "label": "BIG BEAR CHOPPERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "257", + "label": "BIG DOG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "258", + "label": "BILT-RITE TRAILERS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "259", + "label": "BLACK BEAR MFG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "260", + "label": "BOBKO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "261", + "label": "BOCATS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "262", + "label": "BOISE MOBILE EQUIPMENT", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "263", + "label": "BOONE TRAILERS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "264", + "label": "BORCO EQUIPMENT CO INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "265", + "label": "BOYD TANK TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "266", + "label": "BOYDSTUN METAL WORKS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "267", + "label": "BRENNER TANK INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "268", + "label": "BRENT INDUSTRIES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "269", + "label": "BROOKFIELD TRAILER CORP", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "270", + "label": "BUILT-RITE TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "271", + "label": "BULK MFG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "272", + "label": "BURKETT'S AUTORAMA INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "273", + "label": "BUTLER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "274", + "label": "BWS MANUFACTURING", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "275", + "label": "C Z ENGINEERING", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "276", + "label": "C/S TRAILER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "277", + "label": "CAGIVA", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "278", + "label": "CAPACITY OF TEXAS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "279", + "label": "CENTENNIAL INDUSTRIES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "280", + "label": "CENTREVILLE TAG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "281", + "label": "CHALLENGE-COOK BROTHERS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "282", + "label": "CHAMBERLAIN TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "283", + "label": "CHAMPION TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "284", + "label": "CHANCE COACH TRANSIT BUS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "285", + "label": "CHAPARRAL MANUFACTURING INC.", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "286", + "label": "CHAPARRAL TRAILERS OF AR", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "287", + "label": "CHARMAC TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "288", + "label": "CHEETAH CHASSIS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "289", + "label": "CHEROKEE MFG CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "290", + "label": "CHEROKEE PRODUCTS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "291", + "label": "CHIEF INDUSTRIES INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "292", + "label": "CIMC TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "293", + "label": "CIRCLE J", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "294", + "label": "CIRCLE R INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "295", + "label": "CITY TRAILER SALES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "296", + "label": "CLARK TRAILER SERVICE INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "297", + "label": "CLEMENT INDUSTRIES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "298", + "label": "CLOUGH EQUIPMENT", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "299", + "label": "COAST MECH INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "300", + "label": "COBRA MFG INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "301", + "label": "COLUMBIA BODY & EQUIP CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "302", + "label": "COLUMBIA TRAILER CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "303", + "label": "COMANCHE MFG INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "304", + "label": "COMET CORPORATION", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "306", + "label": "CONSTRUCTION TRAILER SPECIALISTS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "307", + "label": "CONTRACT MANUFACTURING INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "308", + "label": "CORN BELT MFG CO INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "309", + "label": "CORNELIUS MFG INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "310", + "label": "CORNHUSKER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "311", + "label": "COTTINGHAM MONTONE CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "312", + "label": "COTTRELL INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "313", + "label": "COUNTRY COACH MOTORHOME", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "314", + "label": "COZAD TRAILER SALES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "315", + "label": "CPI MOTOR COMPANY", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "316", + "label": "CPS TRAILER CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "317", + "label": "CRESCENT EQUIP CO INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "318", + "label": "CRONKITE IND INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "319", + "label": "CROSS TRUCK EQUIP CO INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "320", + "label": "CROWN COACH", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "321", + "label": "CRYENCO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "322", + "label": "CUSTOM TRAILER INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "323", + "label": "D & B TRAILER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "324", + "label": "DACO TRAILER CORP", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "325", + "label": "DANCO TRAILERS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "326", + "label": "SPRINTER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "327", + "label": "DELAVAN IND INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "328", + "label": "DELOUPE INC.", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "329", + "label": "DELTA MANUFACTURING INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "330", + "label": "DELTA TRUCK TRAILER COMPANY", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "331", + "label": "DERBI", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "332", + "label": "DETERMAN WELDING & TANK", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "333", + "label": "DIAMOND STEEL COMPANY", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "334", + "label": "DICO CO INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "335", + "label": "DOONAN", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "336", + "label": "DORSEY TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "337", + "label": "DRESSEN CUSTOM TRAILER INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "338", + "label": "DUNHAM MFG CO INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "339", + "label": "DUPLEX", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "340", + "label": "DUR-A-LITE INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "341", + "label": "DYNAWELD INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "342", + "label": "E D ETNYRE & CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "343", + "label": "EAGER BEAVER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "344", + "label": "EAGLE TRANSIT BUSES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "345", + "label": "EAGLEROCK TRAILES INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "346", + "label": "EAST MANUFACTURING", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "347", + "label": "ECONOLINE TRAILERS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "348", + "label": "EIGHT POINT", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "349", + "label": "EL DORADO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "350", + "label": "ELECTRIC VEHICLE TECHNOLOGIES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "351", + "label": "EMERGENCY ONE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "352", + "label": "EMPIRE LIKENS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "353", + "label": "EVANS TANK TRAILER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "354", + "label": "EVANS-PLUGGE CO INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "355", + "label": "EVERLITE INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "356", + "label": "EVOBUS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "357", + "label": "EXXISS ALUMINUM TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "358", + "label": "FALCON TRAILERWORKS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "359", + "label": "FEATHERLITE MANUFACTURING INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "361", + "label": "FERREE TRAILER CORP", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "362", + "label": "FLORIG EQUIPMENT CO INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "363", + "label": "FLOW BOY MFG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "364", + "label": "FONTAINE SPECIALIZED INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "365", + "label": "FONTAINE TRAILER CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "366", + "label": "FRUEHAUF", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "367", + "label": "GALBREATH INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "368", + "label": "GALLATY TR MFG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "369", + "label": "GALYEAN EQUIP CO INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "370", + "label": "GCL TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "371", + "label": "GLOBAL ELECTRIC MOTORS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "372", + "label": "GENERAL TRAILER CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "373", + "label": "GENESIS TRANSIT BUSES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "374", + "label": "GIANT", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "375", + "label": "GILMORE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "376", + "label": "GILPIN'S WELDING & MACH WORKS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "378", + "label": "GOOSENECK TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "379", + "label": "GRAYCO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "380", + "label": "GUTHRIE TRAILER SALES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "381", + "label": "HACKNEY & SONS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "382", + "label": "HACKNEY BROS BODY", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "383", + "label": "HALLIBUTRON SERVICES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "384", + "label": "HARDEE MFG CO.", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "385", + "label": "HARLEY MURRAY INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "386", + "label": "HARMON TANK", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "387", + "label": "HATFIELD WELDING & TRAILER SALES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "388", + "label": "HAUL MARK IND", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "389", + "label": "HAWKEYE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "390", + "label": "HEIL CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "391", + "label": "HEIL KALYN SIEBERT", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "392", + "label": "HENDRICKSON", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "393", + "label": "HERRIN WELDING", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "394", + "label": "HESSE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "395", + "label": "HIGH VIEW MANUFACTURING INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "396", + "label": "HILBILT MFG CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "397", + "label": "HILL", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "398", + "label": "HILLSBORO INDS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "399", + "label": "HOBBS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "400", + "label": "HOGG/DAVIS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "401", + "label": "HOLDEN IND", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "402", + "label": "HOMEMADE VEHICLE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "403", + "label": "HOOPER TRAILER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "404", + "label": "HUDSON BROS TRAILER MFG INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "405", + "label": "HURST TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "406", + "label": "HUSABERG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "407", + "label": "HUSQVARNA", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "408", + "label": "HYOSUNG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "409", + "label": "HYSTER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "410", + "label": "HYUNDAI STEEL INDUSTRIES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "411", + "label": "I R WITZER CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "412", + "label": "IC CORPORATION", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "413", + "label": "IMPERIAL TR SER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "414", + "label": "INDEPENDENT TRAILER MFG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "415", + "label": "INDIANA PHOENIX", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "416", + "label": "INNOVATIVE TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "417", + "label": "INTERMOUNTAIN WHOLE SALE INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "418", + "label": "INTERNATIONAL TANK & TRAILER CORP", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "419", + "label": "INTERNATIONAL TRAILER CORP", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "420", + "label": "INTERSTATE TRAILER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "421", + "label": "INTERSTATE TRAILERS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "422", + "label": "INTERSTATE WEST CORPORATION", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "423", + "label": "J & L", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "424", + "label": "JACOBSEN TRAILER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "425", + "label": "JA-MAR MFG INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "426", + "label": "JAMES RUSSELL ENG WORKS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "427", + "label": "JANTZ-FEMCO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "428", + "label": "JD BERTOLINI IND LTD", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "429", + "label": "JEEP", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "430", + "label": "JET COMPANY INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "431", + "label": "JFW MANUFACTURING CO INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "432", + "label": "JOHN EVANS MFG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "433", + "label": "J-ROD INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "434", + "label": "KALMAR", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "435", + "label": "KALYN CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "436", + "label": "KANN MFG CORP", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "437", + "label": "KENT TRUCK-TRAILER SERVICE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "438", + "label": "KENTUCKY MFG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "439", + "label": "KIDRON INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "440", + "label": "KIEFER BUILT INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "441", + "label": "KILLEBREW MFG CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "442", + "label": "KOLBERG MFG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "443", + "label": "KOLSTAD", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "444", + "label": "KOVATCH", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "445", + "label": "KROHNERT STAINLESS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "446", + "label": "KTM", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "447", + "label": "KWIK-LOC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "448", + "label": "L & L MANUFACTURING", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "449", + "label": "L & M MANUFACTURING INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "450", + "label": "L & S LINE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "451", + "label": "LAFORZA", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "452", + "label": "LAMCO MFG & DISTR CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "453", + "label": "LANDOLL CORP", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "454", + "label": "LBT INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "455", + "label": "LEE CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "457", + "label": "LOAD KING", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "458", + "label": "LOADCRAFT TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "459", + "label": "LODAL", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "460", + "label": "LOWBOY", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "461", + "label": "LOX EQUIPMENT COMPANY", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "462", + "label": "LUBBOCK", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "463", + "label": "LUFKIN INDUSTRIES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "464", + "label": "M & W TRAILERS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "465", + "label": "M H EBY TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "466", + "label": "MAC TRAILER MFG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "467", + "label": "MAC-LANDER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "468", + "label": "IVECO-MAGIRUS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "469", + "label": "MANAC INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "470", + "label": "MARQUEZ MANUFACTURING CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "471", + "label": "MATE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "472", + "label": "MATLOCK TRAILER CORPORATION", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "473", + "label": "MAURER MANUFACTURING INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "474", + "label": "MAVERICK (FRELL INC)", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "475", + "label": "MAXIM", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "476", + "label": "MC CULLOUGH ALUM", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "477", + "label": "MC CULLOUGH CORP", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "478", + "label": "MCCLAIN INDUSTRIES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "479", + "label": "MCCORD MANUFACTURING INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "480", + "label": "MERRITT EQUIPMENT CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "481", + "label": "MICKEY BODY CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "482", + "label": "MIDLAND MANUFACTURING LIMITED", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "483", + "label": "MILLER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "484", + "label": "MINESOTA VALLEY ENGINEERING", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "485", + "label": "MISSISSIPPI TANK CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "486", + "label": "MOND INDUSTRIES INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "487", + "label": "MONON", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "488", + "label": "MONROE MTRS WALLY-MO DIV", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "489", + "label": "MORITZ INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "490", + "label": "MOTOR COACH INDUSTRIES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "491", + "label": "MOTORRAD UND ZWEIRADWERK", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "492", + "label": "MURPHY MANUFACTURING CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "493", + "label": "NABORS TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "494", + "label": "NECKOVER TR MFG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "495", + "label": "NELSON MFG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "496", + "label": "NEVILLE WELDING INC.", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "497", + "label": "NEW CASTLE TRAILER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "498", + "label": "NEW FLYER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "499", + "label": "NISSAN DIESEL", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "500", + "label": "NORTH AMERICAN BUS INDUSTRIES (NABI)", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "501", + "label": "NORTHCUTT TRAILER & EQUIP.", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "502", + "label": "NOVA BUS CORPORATION", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "503", + "label": "NOVA FABRICATING", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "504", + "label": "NUVAN TECHNOLOGY INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "505", + "label": "O T FABRICATING INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "506", + "label": "OKLAHOMA GOOSENECK", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "507", + "label": "ON THE ROAD INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "508", + "label": "ONNEN TANK TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "509", + "label": "ONTARIO BUS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "510", + "label": "ORANGE BLOSSOM TRAILER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "511", + "label": "ORION BUS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "512", + "label": "OTTAWA", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "513", + "label": "OWEN CUSTOM", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "514", + "label": "OWENS-CLASSIC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "515", + "label": "PALM MFG AND SALES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "516", + "label": "PALMER MACHINE WORKS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "517", + "label": "PARAMOUNT TANK", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "518", + "label": "PASSPORT", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "519", + "label": "PAUL KROHNERT MFG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "520", + "label": "PEERLESS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "521", + "label": "PENNSTYLE CAMPERS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "522", + "label": "PHELAN MFG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "523", + "label": "PHOENIX PROD INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "524", + "label": "PIAGGIO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "525", + "label": "PIKE TRAILER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "526", + "label": "PINES TRAILER CORP", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "527", + "label": "PITTS ENTERPRISES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "528", + "label": "POLAR", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "529", + "label": "POLARIS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "531", + "label": "PRAIRIE TRAILER SALES & SERVICE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "532", + "label": "R & S BODY", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "533", + "label": "R M WARREN MANUFACTURING", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "534", + "label": "RAGLAND INDUSTRIES INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "535", + "label": "RANCH MFG CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "536", + "label": "RAVENS METAL PRODUCTS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "537", + "label": "RED RIVER MANUFACTURING", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "538", + "label": "REDI-HAUL", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "539", + "label": "REIDS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "540", + "label": "REINKE MFG CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "541", + "label": "REITNOUER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "542", + "label": "RELIABLE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "543", + "label": "RELIABLE TANK", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "544", + "label": "RELIANCE TRAILER MFG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "545", + "label": "REMTEC INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "546", + "label": "RENAULT", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "547", + "label": "ROAD RAILER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "548", + "label": "ROAD SYSTEMS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "549", + "label": "ROADMASTER RAIL", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "550", + "label": "ROADRUNNER TRAILER & HITCH CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "551", + "label": "ROCKHILL BODY CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "552", + "label": "ROGER MFG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "553", + "label": "ROGERS BROTHERS CORP", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "554", + "label": "R-WAY CORPORATION", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "555", + "label": "S/M EQUIP COR", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "556", + "label": "SAUK CENTRE WELDING & MACHINE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "557", + "label": "SAVAGE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "558", + "label": "SAVANNAH MACHINE SHOP & LOADER CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "559", + "label": "SCANIA", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "560", + "label": "SCHALLER MFG INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "561", + "label": "SCHIEN BODY & EQUIP", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "562", + "label": "SCHWARTZ MFG CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "563", + "label": "SEAGRAVE FIRE APPARATUS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "564", + "label": "SHELBY TRAILER & MFG CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "565", + "label": "SHOALS AMERICAN IND", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "566", + "label": "SIEBERT TRAILERS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "567", + "label": "SIMCO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "568", + "label": "SKODA", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "569", + "label": "SKYLINE TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "570", + "label": "SMART", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "571", + "label": "SMITHCO MANUFACTURING", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "572", + "label": "SOMERSET WELDING & STEEL", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "573", + "label": "SOONER TRAILER MFG CO INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "574", + "label": "SPARTA MANUFACTURING CORP", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "575", + "label": "SPARTAN MOTORS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "576", + "label": "SPECTOR MANUFACTURING", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "577", + "label": "SSI", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "578", + "label": "STAINLESS TANK & EQUIPME", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "580", + "label": "STANDARD T/T", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "581", + "label": "STANDARD TRAILER CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "582", + "label": "STAR TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "583", + "label": "STARLITE TRAILER MFG CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "584", + "label": "STECO INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "585", + "label": "STEPHENS PNEUMATIC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "586", + "label": "STEWART & STEVENSON", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "587", + "label": "STOUGHTON TRAILERS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "588", + "label": "STRICK TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "589", + "label": "STUART", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "590", + "label": "SUMMIT TRAILER SALES INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "591", + "label": "SUNSHINE STAINLESS TANK", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "592", + "label": "SUPERIOR IDEAL INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "593", + "label": "SUPERIOR TRAILER WORKS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "594", + "label": "SUPREME CORP", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "595", + "label": "SUTPHEN CORP.", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "596", + "label": "T & L MANUFACTURING CO INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "597", + "label": "TA BROUILLETTE & SON INC.", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "598", + "label": "TALBERT TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "599", + "label": "TARASPORT TRAILERS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "600", + "label": "TARGET TRAILER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "601", + "label": "TEREX / TEREX ADVANCE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "602", + "label": "TESLA", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "603", + "label": "TEXAS BRAGG ENTERPRISES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "604", + "label": "TEXAS TRAILER SERVICE CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "605", + "label": "THAYCO TRAILER CORP", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "606", + "label": "THE BUDD COMPANY", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "607", + "label": "THEURER TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "608", + "label": "THIELE INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "609", + "label": "THOMAS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "610", + "label": "THOMPSON TANK", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "611", + "label": "TI-BROOK", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "612", + "label": "TIMPTE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "613", + "label": "TITAN TRAILER CORP", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "614", + "label": "TITAN TRAILER MFG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "615", + "label": "TITAN TRAILER-PDQ", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "616", + "label": "TOP ENTERPRISES INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "617", + "label": "TOP HAT INDUSTRIES INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "618", + "label": "TRAIL KING", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "619", + "label": "TRAILERS-R-US", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "620", + "label": "TRAILERS DE MONTERREY S A", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "621", + "label": "TRAILERS UNLIMITED OF ARLINGTON INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "622", + "label": "TRAIL EZE DAKOTA MFG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "623", + "label": "TRAILMASTER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "624", + "label": "TRAILMASTER TANKS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "625", + "label": "TRAILMOBILE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "626", + "label": "TRAIL-RITE TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "627", + "label": "TRAILSTAR MFG CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "628", + "label": "TRANSCRAFT CORP", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "629", + "label": "TRANSGLOBAL IND", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "630", + "label": "TRANSPORT TECH CORP", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "631", + "label": "TRANSPORT TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "632", + "label": "TRAVIS BODY & TRAILER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "633", + "label": "TREMCAR", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "634", + "label": "TRINITY TRAILER MFG INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "635", + "label": "TRIPLE B TRUCK BODY", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "636", + "label": "TRI-QUEST INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "637", + "label": "TUFF BOY INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "638", + "label": "TVR", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "639", + "label": "TWIN CITY WELDING & TRAILER SALES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "640", + "label": "TWO K MFG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "641", + "label": "U S LIBERTY TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "642", + "label": "U SAVE TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "643", + "label": "U-HAUL INTERNATIONAL", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "644", + "label": "ULTRA LITE MFG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "645", + "label": "UNIMOG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "646", + "label": "UNITED EXPRESS LINE INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "647", + "label": "UNVERFERTH MFG CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "648", + "label": "USTS MFG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "649", + "label": "UTILIMASTER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "650", + "label": "UTILITY EQUP", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "651", + "label": "UTILITY TOOL & BODY COMPANY INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "652", + "label": "UTILITY TRAILER MFG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "653", + "label": "VAN HOOL", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "654", + "label": "VANCO INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "655", + "label": "VANGUARD NATIONAL TRAILER CORP", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "656", + "label": "VANTAGE DUMP TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "657", + "label": "VERMEER MFG. CO.", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "658", + "label": "VICTORIA IRON & METAL", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "659", + "label": "VICTORY MOTORCYCLES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "660", + "label": "VIM TRAILER MFG INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "661", + "label": "VULCAN TRAILER MFG CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "662", + "label": "WABASH NATIONAL CORP", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "663", + "label": "WALKER STAINLESS EQUIP CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "664", + "label": "WALTON PRODUCTS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "665", + "label": "WARREN INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "666", + "label": "WELCH TRAILER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "667", + "label": "WELD IT", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "668", + "label": "WELLCO MFG", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "669", + "label": "WELLS CARGO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "670", + "label": "WESCO TRUCK & TRAILER SALES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "671", + "label": "WESTERN RV", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "672", + "label": "WESTERN STAR/AUTO CAR", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "673", + "label": "WESTERN TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "674", + "label": "WESTERN TRUCK & TRAILER CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "675", + "label": "WEST-MARK CORP", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "676", + "label": "WHEELER STEEL WORKS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "677", + "label": "WHITE BEAR EQUIPMENT CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "678", + "label": "WHITE/GMC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "679", + "label": "WILKENS MFG INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "680", + "label": "WILLIAMS (MOYOCK MFG INC)", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "681", + "label": "WILLIAMS MFG CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "682", + "label": "WILLIAMSEN TRUCK EQUIPMENT", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "683", + "label": "WIL-RO INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "684", + "label": "WILSON TRAILER CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "685", + "label": "WISCONSIN", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "686", + "label": "WORKHORSE CUSTOM CHASSIS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "687", + "label": "X-L SPECIALIZED", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "688", + "label": "X-TEN CORPORATION", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "689", + "label": "YOUNG TANK INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "690", + "label": "ZELIGSON", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "691", + "label": "ZONGSHEN", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "692", + "label": "PETER PIRSCH & SONS CO.", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "693", + "label": "BUGATTI", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "694", + "label": "AZURE DYNAMICS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "695", + "label": "BASHAN", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "696", + "label": "BRAE TRAILERS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "697", + "label": "BRI-MAR MANUFACTURING", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "698", + "label": "BUS & COACH INTL (BCI)", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "699", + "label": "CAN-AM", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "700", + "label": "COMPETITION TRAILERS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "701", + "label": "FISKER AUTOMOTIVE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "702", + "label": "FLOE INTERNATIONAL", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "703", + "label": "GM", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "704", + "label": "HERITAGE TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "705", + "label": "KYMCO USA INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "706", + "label": "MAC LTT", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "707", + "label": "MCLAREN AUTOMOTIVE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "708", + "label": "MITSUBISHI FUSO TRUCK OF AMERICA INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "709", + "label": "PEABODY ITL COR", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "710", + "label": "RAM", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "711", + "label": "STEAIRS WELDING", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "712", + "label": "TERMINAL SERVICE COMPANY", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "713", + "label": "VT HACKNEY", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "714", + "label": "ALMAC INDUSTRIES LIMITED", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "715", + "label": "AMERICAN CRUISER MOTOR HOME", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "716", + "label": "ARO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "717", + "label": "AXLE & EQUIPMENT SALES CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "718", + "label": "BEBCO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "719", + "label": "BIG TEX TRAILER MFG INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "720", + "label": "BILL SCHIFSKY ENTERPRISES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "721", + "label": "CMC TRAILERS DIST INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "722", + "label": "COLLIERS EQUIPMENT", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "723", + "label": "COMMERCIAL BODY SALES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "724", + "label": "ETON", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "725", + "label": "GENUINE SCOOTER CO.", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "726", + "label": "LIL CAT INC.", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "727", + "label": "M. V. AGUSTA", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "728", + "label": "MAHINDRA AND MAHINDRA", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "729", + "label": "OSHKOSH MOTOR TRUCK CO.", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "730", + "label": "SMITH ELECTRIC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "731", + "label": "STERLING TRUCK", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "732", + "label": "SYM", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "733", + "label": "TRAVALONG INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "734", + "label": "TRIPLE R TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "735", + "label": "TRIUMPH MOTORCYCLE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "736", + "label": "WESTLAND", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "737", + "label": "WITZCO TRAILERS INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "738", + "label": "YIBEN", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "739", + "label": "ZERO MOTORCYCLES INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "740", + "label": "DRAGON PRODUCTS LTD", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "741", + "label": "STEALTH TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "742", + "label": "BEALL TRANS-LINER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "743", + "label": "BELSHE TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "744", + "label": "CO CHEROKE MFG CO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "745", + "label": "DRAGON ESP LTD", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "746", + "label": "FERRARA FIRE APPARATUS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "747", + "label": "GENESIS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "748", + "label": "JENSEN", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "749", + "label": "KIMBLE CHASSIS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "750", + "label": "POMONA SHEET METAL WORKS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "751", + "label": "ROYAL ENFIELD MOTORS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "753", + "label": "TEMSA BUS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "754", + "label": "KARMA AUTOMOTIVE LLC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "755", + "label": "BYD COACH AND BUS LLC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "756", + "label": "CENTEX", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "757", + "label": "PROTERRA", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "758", + "label": "BREMACH MOTORS USA", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "759", + "label": "FOREST RIVER TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "760", + "label": "GRANDE WEST", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "761", + "label": "HYUNDAI TRANSLEAD TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "762", + "label": "KEARNEY TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "763", + "label": "LEDWELL TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "764", + "label": "SOUTHWEST GOOSENECK TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "765", + "label": "TIGER TRUCK", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "766", + "label": "CARRIAGE TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "767", + "label": "CENTEX TRAILERS LTD", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "768", + "label": "CHANJE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "769", + "label": "DEMCO", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "770", + "label": "FELLING TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "771", + "label": "LION EBUS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "772", + "label": "LUCON TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "773", + "label": "PJ TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "774", + "label": "POLESTAR", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "775", + "label": "PRATT TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "776", + "label": "ROSENBAUER AMERICA", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "777", + "label": "THOR MOTOR COACH", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "778", + "label": "VOLVO TRUCKS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "779", + "label": "XOS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "780", + "label": "MURRAY TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "781", + "label": "TIFFIN MOTORHOMES INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "782", + "label": "RANCO TRAILER", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "783", + "label": "GRUMMAN LLV", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "784", + "label": "ALPHA HD TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "785", + "label": "BIG JOHN", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "786", + "label": "DEEP SOUTH CARGO TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "787", + "label": "GLOBAL ENVIRONMENTAL PRODUCTS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "788", + "label": "HERCULES ENTERPRISES", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "789", + "label": "KAUFMAN TRAILERS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "790", + "label": "KING KUTTER II", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "791", + "label": "LIDDELL INDUSTRIES INC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "792", + "label": "LUCID MOTORS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "793", + "label": "RIVIAN", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "794", + "label": "ALEXANDER DENNIS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "795", + "label": "ARCTIC CAT", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "796", + "label": "AUTOMOBILI PININFARINA", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "797", + "label": "BRIGHTDROP", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "799", + "label": "CHE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "800", + "label": "CRUISE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "801", + "label": "DENNIS EAGLE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "802", + "label": "ELECTRA MECCANICA VEHICLES CORPORATION", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "803", + "label": "ENERGICA", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "805", + "label": "FISKER INC.", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "808", + "label": "GREENPOWER MOTORS", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "809", + "label": "IRIZAR", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "811", + "label": "LION", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "812", + "label": "LIVEWIRE", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "813", + "label": "LORDSTOWN EV CORPORATION", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "815", + "label": "ORANGE EV", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "817", + "label": "ROKON", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "818", + "label": "TOY", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "819", + "label": "VINFAST TRADING AND PRODUCTION LLC", + "source": "cris", + "table_name": "veh_make_lkp" + }, + { + "id": "1", + "label": "ALFA ROMEO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4", + "label": "AMBASSADOR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5", + "label": "COMMANDO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "6", + "label": "GREMLIN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "8", + "label": "JAVELIN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "9", + "label": "JEEP CHEROKEE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "10", + "label": "WAGONEER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "11", + "label": "JEEPSTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "13", + "label": "RAMBLER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "14", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "15", + "label": "FOX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "20", + "label": "BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "21", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "24", + "label": "APOLLO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "25", + "label": "CENTURY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "26", + "label": "CENTURY WAGON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "27", + "label": "CENTURY LUXUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "28", + "label": "REGAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "29", + "label": "LESABRE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "30", + "label": "LE SABRE LUXUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "31", + "label": "ESTATE WAGON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "32", + "label": "ELECTRA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "33", + "label": "RIVIERA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "34", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "35", + "label": "CALAIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "36", + "label": "DEVILLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "37", + "label": "ELDORADO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "39", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "40", + "label": "CAPRI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "43", + "label": "BEL AIR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "44", + "label": "BISCAYNE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "45", + "label": "BLAZER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "46", + "label": "CAMARO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "47", + "label": "CAPRICE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "48", + "label": "CHEVELLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "49", + "label": "CHEVY II", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "50", + "label": "CORVETTE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "51", + "label": "CORVAIR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "52", + "label": "EL CAMINO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "53", + "label": "IMPALA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "54", + "label": "LAGUNA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "55", + "label": "LUV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "56", + "label": "MALIBU", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "57", + "label": "MONTE CARLO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "58", + "label": "NOVA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "59", + "label": "VEGA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "60", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "61", + "label": "IMPERIAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "62", + "label": "NEWPORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "63", + "label": "NEW YORKER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "64", + "label": "TOWN & COUNTRY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "65", + "label": "300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "66", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "69", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "70", + "label": "DEERE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "71", + "label": "T OR REO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "73", + "label": "CHALLENGER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "74", + "label": "CHARGER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "75", + "label": "COLT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "76", + "label": "CORONET", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "77", + "label": "CRESTWOOD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "78", + "label": "DART", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "79", + "label": "MONACO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "80", + "label": "POLARA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "82", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "83", + "label": "FEDERAL MOTORS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "84", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "86", + "label": "BRONCO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "88", + "label": "COURIER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "89", + "label": "CUSTOM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "90", + "label": "FAIRLANE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "91", + "label": "FALCON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "92", + "label": "GALAXIE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "93", + "label": "LTD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "94", + "label": "MACH I OR II", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "95", + "label": "MAVERICK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "96", + "label": "MUSTANG", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "97", + "label": "PINTO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "98", + "label": "RANCHERO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "99", + "label": "THUNDERBIRD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "100", + "label": "TORINO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "101", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "103", + "label": "SPRINT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "104", + "label": "JIMMY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "105", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "107", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "109", + "label": "SCOUT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "110", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "111", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "114", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "115", + "label": "MARK SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "117", + "label": "ROTARY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "118", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "119", + "label": "COMET", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "120", + "label": "COUGAR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "122", + "label": "MARQUIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "123", + "label": "MONTEGO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "124", + "label": "MONTEREY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "125", + "label": "PARK LANE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "126", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "128", + "label": "MOTO GUIZZI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "129", + "label": "CUSTOM CRUISER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "130", + "label": "CUTLASS SUPREME", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "131", + "label": "DELTA 88", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "132", + "label": "OMEGA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "133", + "label": "98", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "134", + "label": "TORONADO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "135", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "136", + "label": "OPEL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "142", + "label": "DUSTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "143", + "label": "FURY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "144", + "label": "GTX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "145", + "label": "SATELLITE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "146", + "label": "SCAMP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "147", + "label": "TRAILDUSTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "148", + "label": "VALIANT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "149", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "150", + "label": "BONNEVILLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "151", + "label": "CATALINA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "152", + "label": "FIREBIRD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "153", + "label": "GRAND AM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "154", + "label": "GRAND PRIX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "155", + "label": "GRAND VILLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "156", + "label": "LEMANS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "157", + "label": "TEMPEST", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "158", + "label": "VENTURA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "159", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "160", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "163", + "label": "ROLLS ROYCE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "166", + "label": "SILVER EAGLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "168", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "171", + "label": "CARINA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "172", + "label": "CELICA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "173", + "label": "COROLLA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "174", + "label": "CORONA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "175", + "label": "HI-LUX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "176", + "label": "LAND CRUISER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "177", + "label": "MX MARK II", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "178", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "179", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "181", + "label": "BEETLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "182", + "label": "KARMANN-GHIA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "183", + "label": "DASHER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "184", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "185", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "192", + "label": "SKYHAWK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "193", + "label": "SKYLARK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "194", + "label": "SEVILLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "195", + "label": "C-SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "196", + "label": "CHEVETTE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "197", + "label": "CONCOURS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "198", + "label": "G SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "199", + "label": "MONZA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "200", + "label": "CORDOBA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "201", + "label": "ASPEN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "202", + "label": "CUSTOM 500, STATION WAGON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "203", + "label": "ELITE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "204", + "label": "GRANADA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "205", + "label": "C-SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "206", + "label": "G SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "208", + "label": "TRAVELALL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "210", + "label": "MONARCH", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "212", + "label": "GRAN FURY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "213", + "label": "VOLARE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "214", + "label": "ASTRE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "215", + "label": "SUNBIRD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "216", + "label": "TRANSPORTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "217", + "label": "RABBIT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "218", + "label": "SCIROCCO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "220", + "label": "INLINE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "221", + "label": "ARROW", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "222", + "label": "LTD II", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "223", + "label": "CONCORD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "224", + "label": "LEBARON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "225", + "label": "MAGNUM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "226", + "label": "OMNI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "227", + "label": "BERTONE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "228", + "label": "FAIRMONT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "229", + "label": "FIESTA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "230", + "label": "FUTURA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "231", + "label": "GENERAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "232", + "label": "MAGNA VAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "233", + "label": "RALLY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "234", + "label": "RALLY CAMPER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "235", + "label": "VANDURA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "236", + "label": "ACCORD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "237", + "label": "VERSAILLES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "238", + "label": "ZEPHYR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "239", + "label": "CALAIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "240", + "label": "HORIZON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "241", + "label": "SAPPORO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "242", + "label": "PHOENIX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "243", + "label": "THING", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "244", + "label": "SPIRIT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "246", + "label": "5000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "247", + "label": "COMMERCIAL CHASSIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "249", + "label": "SUBURBAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "251", + "label": "CELESTE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "252", + "label": "DIPLOMAT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "253", + "label": "ST REGIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "255", + "label": "CABALLERO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "256", + "label": "CIVIC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "257", + "label": "RX SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "260", + "label": "CUTLASS SALON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "261", + "label": "DELTA 88 ROYALE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "262", + "label": "98 LUXURY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "263", + "label": "98 REGENCY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "264", + "label": "CHAMP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "265", + "label": "LANCER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "269", + "label": "CRESSIDA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "272", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "273", + "label": "CITATION", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "275", + "label": "EAGLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "276", + "label": "210", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "277", + "label": "310", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "278", + "label": "510", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "279", + "label": "200SX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "280", + "label": "280ZX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "281", + "label": "810", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "282", + "label": "BRAVA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "283", + "label": "124", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "284", + "label": "128", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "285", + "label": "131", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "286", + "label": "PRELUDE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "287", + "label": "BETA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "289", + "label": "COBRA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "290", + "label": "MIRADA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "292", + "label": "ESCORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "293", + "label": "ARIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "294", + "label": "RELIANT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "295", + "label": "LYNX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "297", + "label": "MAXIMA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "299", + "label": "CIMARRON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "300", + "label": "CAVALIER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "301", + "label": "024 DE TOMASO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "303", + "label": "J-2000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "304", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "305", + "label": "GLC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "306", + "label": "BRAT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "307", + "label": "DL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "308", + "label": "STARLET", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "309", + "label": "4000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "310", + "label": "633 CSI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "311", + "label": "733I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "312", + "label": "300 SD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "313", + "label": "380 SLC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "314", + "label": "924", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "315", + "label": "928", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "316", + "label": "JETTA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "317", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "318", + "label": "308GTS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "319", + "label": "SPIDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "320", + "label": "STRADA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "321", + "label": "X 1/9", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "322", + "label": "ZAGATO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "325", + "label": "TR-8", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "326", + "label": "GLF", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "327", + "label": "EXP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "330", + "label": "STANZA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "331", + "label": "SPIRIT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "332", + "label": "T-1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "335", + "label": "TOWN CAR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "336", + "label": "CELEBRITY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "337", + "label": "QUANTUM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "338", + "label": "6000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "339", + "label": "CIERA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "340", + "label": "FIRENZA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "341", + "label": "SENTRA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "342", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "343", + "label": "ALLIANCE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "344", + "label": "ENCORE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "346", + "label": "QUATTRO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "348", + "label": "S SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "349", + "label": "E-CLASS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "350", + "label": "LASER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "352", + "label": "300ZX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "353", + "label": "PULSAR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "355", + "label": "400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "356", + "label": "600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "357", + "label": "RANGER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "358", + "label": "TEMPO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "359", + "label": "S TRUCK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "360", + "label": "CIVIC CRX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "361", + "label": "TOPAZ", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "362", + "label": "COLT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "363", + "label": "CONQUEST", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "364", + "label": "FIERO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "365", + "label": "PARISIENNE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "366", + "label": "SUPRA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "367", + "label": "TERCEL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "368", + "label": "VAN WAGON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "370", + "label": "ASTRO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "372", + "label": "GEO SPRINT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "373", + "label": "5TH AVENUE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "374", + "label": "LANCER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "375", + "label": "AEROSTAR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "376", + "label": "TAURUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "377", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "378", + "label": "SABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "379", + "label": "CARAVELLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "380", + "label": "CAMRY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "381", + "label": "GOLF", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "382", + "label": "CABRIOLET", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "383", + "label": "VANAGON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "385", + "label": "TURISMO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "386", + "label": "IMPULSE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "387", + "label": "TROOPER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "388", + "label": "MARK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "389", + "label": "MIRAGE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "390", + "label": "TREDIA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "391", + "label": "CORDIA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "392", + "label": "GALANT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "393", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "394", + "label": "CONQUEST", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "395", + "label": "4RUNNER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "396", + "label": "SAMURAI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "399", + "label": "BERETTA/CORSICA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "400", + "label": "SHADOW", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "402", + "label": "REATTA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "403", + "label": "ALLANTE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "404", + "label": "CONQUEST TSI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "405", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "406", + "label": "DYNASTY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "407", + "label": "FESTIVA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "408", + "label": "PROBE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "409", + "label": "SCORPIO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "410", + "label": "TRACER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "411", + "label": "MONTERO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "412", + "label": "PRECIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "413", + "label": "STARION", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "414", + "label": "SUNDANCE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "415", + "label": "SAFARI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "417", + "label": "FOX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "420", + "label": "LUMINA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "421", + "label": "SALON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "422", + "label": "SPIRIT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "423", + "label": "METRO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "424", + "label": "PRIZM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "425", + "label": "SPECTRUM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "426", + "label": "STORM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "427", + "label": "TRACKER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "428", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "429", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "430", + "label": "MX-6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "431", + "label": "MX-5 MIATA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "432", + "label": "MILANO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "433", + "label": "MPV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "434", + "label": "PROTEGE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "435", + "label": "ECLIPSE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "436", + "label": "SIGMA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "437", + "label": "AXXESS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "438", + "label": "240SX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "439", + "label": "ACCLAIM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "440", + "label": "LASER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "441", + "label": "TRANS SPORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "442", + "label": "JUSTY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "443", + "label": "LEGACY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "444", + "label": "LOYALE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "445", + "label": "SIDEKICK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "446", + "label": "SWIFT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "447", + "label": "MR2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "448", + "label": "INTEGRA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "449", + "label": "LEGEND", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "450", + "label": "NSX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "451", + "label": "80/90 SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "452", + "label": "100/200 SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "453", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "454", + "label": "ROADMASTER ESTATE WAGON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "455", + "label": "BROUGHAM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "456", + "label": "CHARADE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "458", + "label": "STEALTH", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "459", + "label": "SONOMA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "460", + "label": "EXCEL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "461", + "label": "SCOUPE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "462", + "label": "SONATA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "463", + "label": "G20", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "464", + "label": "M30", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "465", + "label": "Q45", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "466", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "467", + "label": "AMIGO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "468", + "label": "NAVAJO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "469", + "label": "3000 GT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "470", + "label": "BRAVADA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "471", + "label": "SILHOUETTE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "472", + "label": "CORRADO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "473", + "label": "PASSAT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "474", + "label": "VIGOR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "475", + "label": "ROADMASTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "476", + "label": "EAGLE TALON TSI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "478", + "label": "SAFARI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "479", + "label": "YUKON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "480", + "label": "ELANTRA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "481", + "label": "ES 250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "482", + "label": "300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "483", + "label": "400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "484", + "label": "SC 300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "485", + "label": "SC 400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "486", + "label": "MX-3 GS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "487", + "label": "DIAMANTE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "488", + "label": "EXPO LRV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "489", + "label": "EXPO SPORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "490", + "label": "NX2000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "491", + "label": "ACHIEVA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "492", + "label": "968", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "493", + "label": "SVX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "494", + "label": "PASEO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "495", + "label": "PREVIA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "496", + "label": "960", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "497", + "label": "EAGLE VISION", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "498", + "label": "525 I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "499", + "label": "CONCORDE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "500", + "label": "ALTIMA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "501", + "label": "QUEST", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "502", + "label": "INTREPID", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "503", + "label": "VIPER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "504", + "label": "DEL SOL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "505", + "label": "J30", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "506", + "label": "STYLUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "507", + "label": "626", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "508", + "label": "929", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "509", + "label": "400/500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "510", + "label": "500 SL/600 SL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "511", + "label": "VILLAGER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "512", + "label": "SC1", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "513", + "label": "SL1", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "514", + "label": "SW1", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "515", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "516", + "label": "IMPREZA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "517", + "label": "T100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "518", + "label": "EUROVAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "519", + "label": "GTI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "520", + "label": "240", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "521", + "label": "850 GLT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "522", + "label": "318", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "523", + "label": "325", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "524", + "label": "530", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "525", + "label": "540", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "526", + "label": "740", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "527", + "label": "840", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "529", + "label": "LHS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "531", + "label": "PATHFINDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "533", + "label": "NEON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "535", + "label": "PASSPORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "536", + "label": "RODEO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "539", + "label": "323", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "540", + "label": "NEON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "541", + "label": "VOYAGER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "543", + "label": "740", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "544", + "label": "760", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "545", + "label": "780", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "546", + "label": "940", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "547", + "label": "TAHOE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "548", + "label": "CIRRUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "549", + "label": "AVENGER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "550", + "label": "CARAVAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "551", + "label": "STRATUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "552", + "label": "ASPIRE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "553", + "label": "CONTOUR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "554", + "label": "EXPLORER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "555", + "label": "WINDSTAR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "556", + "label": "SIERRA PICKUP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "557", + "label": "ACCENT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "558", + "label": "MILLENIA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "559", + "label": "MYSTIQUE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "560", + "label": "AURORA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "561", + "label": "SUNFIRE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "562", + "label": "911 CARRERA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "563", + "label": "AVALON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "564", + "label": "TL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "565", + "label": "Z3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "566", + "label": "K SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "567", + "label": "DAKOTA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "568", + "label": "RAM VAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "570", + "label": "SAVANA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "571", + "label": "ODYSSEY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "572", + "label": "I30", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "573", + "label": "HOMBRE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "574", + "label": "SEPHIA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "575", + "label": "SPORTAGE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "576", + "label": "LEGACY OUTBACK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "577", + "label": "LX 450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "578", + "label": "BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "579", + "label": "BREEZE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "580", + "label": "X90", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "581", + "label": "RAV4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "582", + "label": "CL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "583", + "label": "RL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "584", + "label": "SLX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "585", + "label": "A-4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "586", + "label": "A-6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "587", + "label": "A-8", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "588", + "label": "328", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "589", + "label": "528", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "590", + "label": "CATERA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "591", + "label": "KODIAK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "592", + "label": "VENTURE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "593", + "label": "SEBRING", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "595", + "label": "B SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "596", + "label": "D-SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "597", + "label": "PROSPECTOR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "598", + "label": "RAIDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "599", + "label": "RAMCHARGER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "600", + "label": "ECONOLINE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "601", + "label": "EXPEDITION", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "602", + "label": "F SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "603", + "label": "BRIGADIER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "604", + "label": "SUBURBAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "605", + "label": "CR-V", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "608", + "label": "QX4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "609", + "label": "OASIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "611", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "612", + "label": "DEFENDER 90", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "613", + "label": "DISCOVERY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "614", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "615", + "label": "MED. DUTY TRUCK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "616", + "label": "B-SERIES PICKUP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "618", + "label": "MOUNTAINEER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "620", + "label": "BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "621", + "label": "PROWLER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "622", + "label": "FIREFLY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "623", + "label": "900", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "624", + "label": "9000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "625", + "label": "ESTEEM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "626", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "628", + "label": "BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "629", + "label": "TACOMA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "631", + "label": "CABRIOLET", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "632", + "label": "5 SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "633", + "label": "7 SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "634", + "label": "FRONTIER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "635", + "label": "DURANGO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "636", + "label": "TIBURON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "637", + "label": "LX 470", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "638", + "label": "NAVIGATOR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "639", + "label": "320 ML", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "640", + "label": "320 CLK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "641", + "label": "SCORPIO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "642", + "label": "XR4TI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "643", + "label": "INTRIGUE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "644", + "label": "LSS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "645", + "label": "BOXSTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "646", + "label": "FORESTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "647", + "label": "STREEGA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "648", + "label": "SIENNA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "651", + "label": "TT COUPE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "652", + "label": "3 SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "653", + "label": "6 SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "654", + "label": "8 SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "655", + "label": "M SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "656", + "label": "Z SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "657", + "label": "ESCALADE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "658", + "label": "SILVERADO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "659", + "label": "DENALI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "660", + "label": "ENVOY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "661", + "label": "VEHICROSS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "662", + "label": "ES SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "663", + "label": "GS SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "664", + "label": "LS SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "665", + "label": "LX SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "666", + "label": "RX SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "667", + "label": "SC SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "669", + "label": "CONTINENTAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "670", + "label": "LS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "671", + "label": "C", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "672", + "label": "CL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "673", + "label": "CLK-CLASS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "674", + "label": "E-CLASS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "675", + "label": "M-CLASS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "676", + "label": "S", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "677", + "label": "SL-CLASS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "678", + "label": "SLK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "679", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "680", + "label": "ALERO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "681", + "label": "MONTANA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "683", + "label": "9-3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "684", + "label": "9-5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "685", + "label": "VITARA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "686", + "label": "CAMRY SOLARA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "687", + "label": "TUNDRA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "688", + "label": "S80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "689", + "label": "X5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "690", + "label": "EAGLE VISION", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "691", + "label": "LANOS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "692", + "label": "LEGANZA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "693", + "label": "NUBIRA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "694", + "label": "XTERRA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "695", + "label": "EXCURSION", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "696", + "label": "FOCUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "697", + "label": "INSIGHT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "698", + "label": "S2000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "699", + "label": "LS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "700", + "label": "LW", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "701", + "label": "ECHO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "702", + "label": "PRIUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "705", + "label": "MDX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "706", + "label": "S-4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "707", + "label": "S-8", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "708", + "label": "ALLROAD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "709", + "label": "PT CRUISER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "710", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "711", + "label": "ESCAPE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "712", + "label": "EXPLORER SPORT TRAC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "713", + "label": "SANTA FE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "714", + "label": "XG300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "715", + "label": "OPTIMA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "716", + "label": "RIO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "717", + "label": "SPECTRA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "718", + "label": "IS 300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "719", + "label": "TRIBUTE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "720", + "label": "AZTEC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "721", + "label": "HIGHLANDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "722", + "label": "SEQUOIA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "723", + "label": "S60", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "724", + "label": "RSX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "725", + "label": "S-6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "726", + "label": "Z8", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "727", + "label": "RENDEZVOUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "728", + "label": "CTS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "729", + "label": "ESCALADE EXT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "730", + "label": "AVALANCHE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "731", + "label": "EXPRESS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "732", + "label": "TRAILBLAZER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "734", + "label": "PROWLER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "735", + "label": "VOYAGER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "736", + "label": "XG350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "737", + "label": "I35", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "738", + "label": "AXIOM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "739", + "label": "SEDONA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "740", + "label": "FREELANDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "741", + "label": "BLACKWOOD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "742", + "label": "COOPER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "743", + "label": "G", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "744", + "label": "LANCER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "745", + "label": "L SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "746", + "label": "S SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "747", + "label": "VUE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "748", + "label": "AERIO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "749", + "label": "XL-7", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "754", + "label": "CABRIO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "755", + "label": "XC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "756", + "label": "Z4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "757", + "label": "XLR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "758", + "label": "SSR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "759", + "label": "CROSSFIRE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "760", + "label": "ELEMENT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "761", + "label": "PILOT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "762", + "label": "H2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "763", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "764", + "label": "G35", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "765", + "label": "M45", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "766", + "label": "ASCENDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "767", + "label": "SORENTO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "768", + "label": "GX 470", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "769", + "label": "AVIATOR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "771", + "label": "SPEED PROTEGE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "772", + "label": "PROTEGE5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "773", + "label": "MARAUDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "774", + "label": "ECLIPSE SPYDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "775", + "label": "OUTLANDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "776", + "label": "350Z", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "777", + "label": "MURANO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "778", + "label": "VIBE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "779", + "label": "ION", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "780", + "label": "BAJA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "781", + "label": "XC90", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "783", + "label": "ALTIMA HYBRID", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "784", + "label": "ARMADA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "785", + "label": "CLS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "786", + "label": "COOPER CLUBMAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "787", + "label": "DISCOVERY II", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "788", + "label": "IS 350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "789", + "label": "IS 350 C", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "790", + "label": "IS F", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "791", + "label": "LX 570", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "792", + "label": "MIGHTY MAX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "793", + "label": "MILAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "794", + "label": "NAVIGATOR L", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "795", + "label": "RX7", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "796", + "label": "RX8", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "797", + "label": "SC 430", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "798", + "label": "SLR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "799", + "label": "SP / SPX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "800", + "label": "SPACE WAGON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "801", + "label": "SPECTRA5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "802", + "label": "9-2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "803", + "label": "93", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "804", + "label": "95", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "805", + "label": "181", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "806", + "label": "405", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "807", + "label": "504", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "808", + "label": "505", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "809", + "label": "604", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "810", + "label": "911", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "811", + "label": "944", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "812", + "label": "TRANSIT BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "813", + "label": "BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "814", + "label": "E SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "815", + "label": "F SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "816", + "label": "G SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "817", + "label": "K SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "818", + "label": "P SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "819", + "label": "R SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "820", + "label": "V SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "821", + "label": "W-SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "822", + "label": "100 SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "826", + "label": "128I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "828", + "label": "135I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "830", + "label": "164", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "831", + "label": "190", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "832", + "label": "200 GTX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "833", + "label": "200 SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "834", + "label": "2000 GTX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "835", + "label": "200SX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "836", + "label": "240", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "837", + "label": "260", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "838", + "label": "280", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "839", + "label": "300-CLASS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "840", + "label": "300ZX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "841", + "label": "308", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "842", + "label": "320I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "843", + "label": "323", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "844", + "label": "328", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "845", + "label": "330", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "846", + "label": "335", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "847", + "label": "348", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "848", + "label": "350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "849", + "label": "360", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "850", + "label": "370Z", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "851", + "label": "380-CLASS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "852", + "label": "400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "853", + "label": "420", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "854", + "label": "425", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "855", + "label": "430", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "856", + "label": "430", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "857", + "label": "456", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "858", + "label": "500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "860", + "label": "524", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "861", + "label": "533", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "862", + "label": "535", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "863", + "label": "545", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "864", + "label": "550", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "865", + "label": "F550", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "866", + "label": "560", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "867", + "label": "MAYBACH", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "868", + "label": "575", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "869", + "label": "599 GTB FIORANO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "870", + "label": "6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "871", + "label": "60 SPECIAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "872", + "label": "600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "874", + "label": "635 CSI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "875", + "label": "645 CI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "876", + "label": "650I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "877", + "label": "720", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "878", + "label": "720 SERIES TRUCK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "879", + "label": "735", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "880", + "label": "745", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "881", + "label": "750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "882", + "label": "760", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "883", + "label": "80 SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "884", + "label": "850", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "885", + "label": "88", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "886", + "label": "88 ROYALE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "888", + "label": "90 SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "889", + "label": "9-7X", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "892", + "label": "A3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "893", + "label": "A5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "894", + "label": "ACADIA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "895", + "label": "ACADIAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "898", + "label": "ALFA ROMERO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "902", + "label": "ALL TERRAIN PICKUP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "904", + "label": "ALL TERRAIN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "908", + "label": "ALLURE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "909", + "label": "ALPINA B7", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "910", + "label": "ALTRA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "911", + "label": "AMANTI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "912", + "label": "AMBULANCE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "914", + "label": "ARNAGE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "915", + "label": "ASPEN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "916", + "label": "ASTRA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "918", + "label": "ATC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "919", + "label": "AURA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "920", + "label": "AVEO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "921", + "label": "AVIATOR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "922", + "label": "AZERA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "923", + "label": "AZURE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "924", + "label": "B210", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "925", + "label": "B", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "927", + "label": "BITURBO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "928", + "label": "BORREGO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "929", + "label": "BREVA 1100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "931", + "label": "BREVA 750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "932", + "label": "BRONCO/BRONCO II", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "933", + "label": "BROOKLANDS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "934", + "label": "B-SERIES TRUCK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "935", + "label": "B-SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "936", + "label": "BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "937", + "label": "BUS CHASSIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "938", + "label": "BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "939", + "label": "TRANSIT BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "940", + "label": "BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "941", + "label": "BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "942", + "label": "ORION VI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "943", + "label": "BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "944", + "label": "BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "945", + "label": "TRANSIT BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "946", + "label": "C/T", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "947", + "label": "C116", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "948", + "label": "C120", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "949", + "label": "C30", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "950", + "label": "C70", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "951", + "label": "CALIBER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "952", + "label": "CALIFORNIA 1100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "955", + "label": "CALIFORNIA III", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "956", + "label": "CALIFORNIA VINTAGE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "957", + "label": "CAMPER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "958", + "label": "CANYON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "959", + "label": "CARAVAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "960", + "label": "CARMAQUE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "961", + "label": "CARRERA GT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "962", + "label": "CAYENNE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "963", + "label": "CAYMAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "964", + "label": "CC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "965", + "label": "CEMENT MIXER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "966", + "label": "CENTURION", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "967", + "label": "CENTURY II", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "968", + "label": "CHASSIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "970", + "label": "CHEROKEE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "972", + "label": "CINCO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "973", + "label": "CITYLINER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "974", + "label": "CJ5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "975", + "label": "CJ7", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "976", + "label": "CLASSIC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "977", + "label": "CLUBWAGON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "978", + "label": "COBALT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "979", + "label": "COLORADO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "980", + "label": "COMANCHE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "981", + "label": "COMANCHE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "982", + "label": "COMMANDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "983", + "label": "COMPASS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "984", + "label": "CONCRETE MIXER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "985", + "label": "CONDOR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "986", + "label": "CONQUEST", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "987", + "label": "CONTINENTAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "988", + "label": "CONVENTIONAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "990", + "label": "CORNICHE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "991", + "label": "CORNICHE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "992", + "label": "CORSICA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "993", + "label": "COUNTACH", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "994", + "label": "COUPE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "995", + "label": "CROWN VICTORIA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "996", + "label": "C-SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "997", + "label": "CSX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "998", + "label": "CUBE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "999", + "label": "CUSTOM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1000", + "label": "CUTLASS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1001", + "label": "CUTLASS BROUGHAM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1002", + "label": "CUTLASS CALAIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1003", + "label": "CUTLASS CIERA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1004", + "label": "CUTLASS CRUISER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1005", + "label": "CUTLASS GL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1006", + "label": "CUTLASS GLS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1007", + "label": "CUTLASS LS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1008", + "label": "CX-7", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1009", + "label": "CX-9", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1010", + "label": "D-10 MILITARY BLAZER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1011", + "label": "D21 SERIES TRUCK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1012", + "label": "DAYTONA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1013", + "label": "DAYTONA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1016", + "label": "DB7", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1017", + "label": "DB9", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1018", + "label": "DBS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1019", + "label": "DEFENDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1020", + "label": "DELTA 88 INTERNATIONAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1021", + "label": "DIABLO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1022", + "label": "DIAMOND", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1030", + "label": "DRILL RIG", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1031", + "label": "DTS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1032", + "label": "DYNASTY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1034", + "label": "ECO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1035", + "label": "EDGE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1036", + "label": "EDS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1037", + "label": "EIGHT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1038", + "label": "ELAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1039", + "label": "ELECTRA ESTATE WAGON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1040", + "label": "ELISE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1041", + "label": "ENCLAVE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1042", + "label": "ENDEAVOR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1043", + "label": "ENTOURAGE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1044", + "label": "ENZO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1045", + "label": "EOS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1046", + "label": "EPICA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1047", + "label": "EQUATOR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1048", + "label": "EQUINOX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1049", + "label": "EQUIPMENT CARRIER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1050", + "label": "ES 300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1051", + "label": "ES 330", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1052", + "label": "ES 350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1053", + "label": "ESPRIT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1057", + "label": "EV PLUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1058", + "label": "EVO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1059", + "label": "EX35", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1060", + "label": "EXECUTIVE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1061", + "label": "EXECUTIVE XJ6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1062", + "label": "EXIGE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1063", + "label": "EXPO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1064", + "label": "EXPRESS RV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1066", + "label": "F355", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1067", + "label": "F40", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1068", + "label": "F50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1069", + "label": "F550", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1070", + "label": "F575", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1071", + "label": "FCX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1072", + "label": "FE TRUCK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1073", + "label": "FG TRUCK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1074", + "label": "FH TRUCK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1075", + "label": "FIFTH AVENUE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1076", + "label": "FIRETRUCK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1077", + "label": "FIRETRUCK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1078", + "label": "PETER PIRSCH", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1079", + "label": "PIERCE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1080", + "label": "FIRETRUCK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1081", + "label": "FIRETRUCK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1082", + "label": "EAGLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1083", + "label": "FIT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1084", + "label": "FIVE HUNDRED", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1085", + "label": "FJ CRUISER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1086", + "label": "FK TRUCK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1087", + "label": "FLEETWOOD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1088", + "label": "FLEX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1089", + "label": "FLYING SPUR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1090", + "label": "FM TRUCK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1091", + "label": "FORENZA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1092", + "label": "FORSA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1093", + "label": "FORTE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1094", + "label": "FREESTAR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1095", + "label": "FREESTYLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1096", + "label": "FUEGO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1097", + "label": "FUSION", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1098", + "label": "FWD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1099", + "label": "FX35", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1100", + "label": "FX50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1101", + "label": "G3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1102", + "label": "G37", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1103", + "label": "G5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1104", + "label": "G6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1105", + "label": "G8", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1106", + "label": "GALLARDO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1107", + "label": "GENESIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1108", + "label": "GL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1109", + "label": "GL-10", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1110", + "label": "GL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1111", + "label": "GLI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1112", + "label": "GLIDER KIT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1113", + "label": "GLK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1114", + "label": "GRAND MARQUIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1115", + "label": "GRAND CARAVAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1116", + "label": "GRAND CHEROKEE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1117", + "label": "GRAND LEMANS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1118", + "label": "GRAND VITARA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1119", + "label": "GRAND VOYAGER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1120", + "label": "GRAND VOYAGER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1121", + "label": "GRAND WAGONEER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1122", + "label": "GRAND WAGONEER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1123", + "label": "GRANSPORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1124", + "label": "GRANTURISMO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1127", + "label": "GS 300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1128", + "label": "GS 350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1129", + "label": "GS 400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1130", + "label": "GS 430", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1131", + "label": "GS 450H HYBRID", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1132", + "label": "GS 460", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1133", + "label": "GT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1134", + "label": "GT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1135", + "label": "GTO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1136", + "label": "GT-R", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1137", + "label": "GT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1138", + "label": "H-1", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1140", + "label": "H-3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1141", + "label": "HATCHBACK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1142", + "label": "HHR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1143", + "label": "HMC2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1144", + "label": "HMC4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1145", + "label": "HMCO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1148", + "label": "HONEYBEE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1149", + "label": "HP2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1150", + "label": "I-MARK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1151", + "label": "INCOMPLETE VEHICLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1152", + "label": "INTER FRONT LOADER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1153", + "label": "INTER REAR LOADER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1154", + "label": "INTER SIDE LOADER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1155", + "label": "INTREPID", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1156", + "label": "IS 250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1157", + "label": "IS 250 C", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1159", + "label": "J10 PICKUP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1161", + "label": "J20 PICKUP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1162", + "label": "JALPA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1163", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1165", + "label": "JIMNY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1166", + "label": "JOURNEY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1167", + "label": "KING CAB", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1168", + "label": "KOMBI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1171", + "label": "L100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1172", + "label": "L200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1173", + "label": "L300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1174", + "label": "L7", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1175", + "label": "LACROSSE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1176", + "label": "LASER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1177", + "label": "LAURENTIAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1179", + "label": "L", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1181", + "label": "LIBERTY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1182", + "label": "LM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1183", + "label": "LOW ENTRY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1184", + "label": "LP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1185", + "label": "LPS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1186", + "label": "LR2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1187", + "label": "LR3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1188", + "label": "LS 400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1189", + "label": "LS 430", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1190", + "label": "LS 460", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1191", + "label": "LS 600H L", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1192", + "label": "LS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1193", + "label": "LUCERNE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1195", + "label": "M128 GT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1196", + "label": "M138 SPYDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1197", + "label": "M35", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1198", + "label": "MARINER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1199", + "label": "MARINER HYBRID", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1200", + "label": "MARK LT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1201", + "label": "MARK MKS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1202", + "label": "MARK MKT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1203", + "label": "MARK MKX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1204", + "label": "MARK MKZ", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1205", + "label": "MARK VI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1206", + "label": "MARK VII", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1207", + "label": "MARK VIII", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1208", + "label": "COROLLA MATRIX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1209", + "label": "MAXIMA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1210", + "label": "MAZDA3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1211", + "label": "5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1212", + "label": "MEDALLION", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1213", + "label": "METRO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1214", + "label": "METROPOLITAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1215", + "label": "MICRA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1216", + "label": "MICRA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1217", + "label": "MILAN HYBRID", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1218", + "label": "MILANO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1223", + "label": "MINI RAM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1225", + "label": "MIXER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1226", + "label": "ADVANCE MIXER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1227", + "label": "MONDIAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1228", + "label": "MONTERO SPORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1231", + "label": "MOTORHOME", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1233", + "label": "MOTORHOME", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1246", + "label": "MOTORHOME", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1247", + "label": "MOTORHOME", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1248", + "label": "MPV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1249", + "label": "MTD COUNTRY SQUIRE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1250", + "label": "MULSANNE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1251", + "label": "MULTI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1252", + "label": "MURCIELAGO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1254", + "label": "N W BET CONVERT GLX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1255", + "label": "NEON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1257", + "label": "NEW BEETLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1258", + "label": "NEW S4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1259", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1260", + "label": "NITRO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1263", + "label": "NORGE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1264", + "label": "NX COUPE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1265", + "label": "OPTIMA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1266", + "label": "OPTRA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1267", + "label": "OTHER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1268", + "label": "OUTBACK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1269", + "label": "OUTLOOK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1270", + "label": "PACIFICA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1271", + "label": "PARK AVENUE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1272", + "label": "PARK WARD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1273", + "label": "PATRIOT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1274", + "label": "PHAETON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1275", + "label": "PHANTOM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1276", + "label": "PININFARINA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1277", + "label": "PONY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1278", + "label": "PREMIER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1279", + "label": "GEO PRIZM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1280", + "label": "PROFESSIONAL CHASSIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1281", + "label": "PULSAR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1282", + "label": "PUP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1283", + "label": "PURSUIT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1284", + "label": "Q5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1285", + "label": "Q7", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1286", + "label": "QUATTROPORTE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1287", + "label": "QX56", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1288", + "label": "R SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1289", + "label": "R32", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1290", + "label": "R8", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1291", + "label": "RAIDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1292", + "label": "RAINIER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1293", + "label": "RALLY WAGON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1294", + "label": "RALLY WAGON / VAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1296", + "label": "RAM WAGON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1297", + "label": "RAMPAGE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1298", + "label": "RANGE ROVER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1299", + "label": "RANGE ROVER SPORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1300", + "label": "R", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1301", + "label": "RDX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1302", + "label": "RECYCLE EQUIPMENT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1303", + "label": "REGENCY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1304", + "label": "RELAY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1305", + "label": "RENO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1306", + "label": "RIDGELINE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1307", + "label": "RIO5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1308", + "label": "ROADSTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1310", + "label": "ROGUE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1311", + "label": "RONDO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1312", + "label": "ROUTAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1313", + "label": "ROYAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1314", + "label": "RS4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1315", + "label": "RS6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1316", + "label": "RX 300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1317", + "label": "RX 330", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1318", + "label": "RX 350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1319", + "label": "RX 400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1320", + "label": "RX 400 HYBRID", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1321", + "label": "RX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1322", + "label": "S15", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1323", + "label": "S40", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1324", + "label": "S5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1325", + "label": "S70", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1326", + "label": "S90", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1327", + "label": "SA310", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1328", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1332", + "label": "SAPPORO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1333", + "label": "SC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1335", + "label": "SC2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1336", + "label": "SCHOOL BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1337", + "label": "SCHOOL BUS / TRANSIT BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1340", + "label": "SENTRA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1342", + "label": "SHELBY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1343", + "label": "SHORT BED", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1345", + "label": "SILVER SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1346", + "label": "SILVERSTAR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1350", + "label": "SKY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1352", + "label": "SL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1353", + "label": "SL2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1355", + "label": "SOLSTICE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1356", + "label": "SOMERSET", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1357", + "label": "SOUL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1358", + "label": "SOVERIGN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1360", + "label": "SPECIALTY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1361", + "label": "GEO SPECTRUM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1362", + "label": "SPEED 3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1363", + "label": "SPEED 6 AWD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1364", + "label": "SPEED MIATA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1365", + "label": "SPIDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1367", + "label": "SPORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1369", + "label": "SPORTVAN / VAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1371", + "label": "SPRINTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1372", + "label": "SPYDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1373", + "label": "SRX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1374", + "label": "STANDARD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1375", + "label": "STANDARD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1376", + "label": "STANZA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1377", + "label": "STELLAR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1378", + "label": "STELVIO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1379", + "label": "STEP VAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1380", + "label": "STEPVAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1381", + "label": "STS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1382", + "label": "S-TYPE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1383", + "label": "SUMMIT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1384", + "label": "SUNBURST", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1386", + "label": "SUNRUNNER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1387", + "label": "SUPER 8", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1388", + "label": "SW2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1389", + "label": "SYCLONE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1390", + "label": "TALON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1391", + "label": "T-C BY MASERATI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1392", + "label": "TERRAIN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1393", + "label": "TERRAZA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1394", + "label": "TESTAROSSA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1395", + "label": "THINK NEIGHBOR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1396", + "label": "TIGUAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1397", + "label": "TITAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1398", + "label": "TOPKICK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1399", + "label": "TORRENT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1400", + "label": "TOUAREG", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1401", + "label": "TOURING LIMO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1402", + "label": "TR7", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1403", + "label": "TRACKER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1404", + "label": "TRANSIT BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1405", + "label": "TRANSIT BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1406", + "label": "TRANSIT BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1407", + "label": "SETRA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1408", + "label": "TRANSIT BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1409", + "label": "TRANSIT BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1410", + "label": "TRANSIT BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1411", + "label": "TRANSIT BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1412", + "label": "TRANSIT CONNECT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1414", + "label": "TRAVERSE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1415", + "label": "TRIBECA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1416", + "label": "TRIBUTE HYBRID", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1430", + "label": "TSX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1431", + "label": "TUCSON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1432", + "label": "TURBO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1433", + "label": "TYPHOON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1434", + "label": "UPLANDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1436", + "label": "V10 CENTAURO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1437", + "label": "V40", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1438", + "label": "V50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1439", + "label": "V7 CLASSIC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1440", + "label": "V70", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1441", + "label": "V8 QUATTRO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1442", + "label": "V90", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1443", + "label": "VALUE VAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1444", + "label": "VAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1445", + "label": "VAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1446", + "label": "VANDENPLAS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1447", + "label": "VANQUISH", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1448", + "label": "V8", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1449", + "label": "VENZA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1450", + "label": "VERACRUZ", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1451", + "label": "VERONA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1452", + "label": "VERSA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1453", + "label": "VEYRON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1454", + "label": "VIRAGE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1455", + "label": "VISION", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1459", + "label": "WAGON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1461", + "label": "WAGONEER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1462", + "label": "WAVE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1463", + "label": "WRANGLER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1464", + "label": "WRANGLER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1465", + "label": "X TRAIL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1466", + "label": "X3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1467", + "label": "X6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1468", + "label": "XC60", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1469", + "label": "XC70", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1470", + "label": "XF SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1471", + "label": "XJ SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1472", + "label": "XK SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1474", + "label": "XR3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1475", + "label": "XT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1476", + "label": "X-TYPE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1477", + "label": "YARIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1479", + "label": "ZEPHYR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1502", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1503", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1504", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1505", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1507", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1510", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1512", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1515", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1517", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1519", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1521", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1522", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1523", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1524", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1525", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1527", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1528", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1530", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1531", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1532", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1533", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1534", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1535", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1536", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1537", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1538", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1539", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1542", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1543", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1545", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1546", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1548", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1549", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1551", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1553", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1555", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1557", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1558", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1559", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1561", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1562", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1563", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1564", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1565", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1569", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1589", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1594", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1598", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1600", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1603", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1610", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1611", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1614", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1616", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1620", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1621", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1623", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1625", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1643", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1645", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1646", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1647", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1648", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1649", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1650", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1651", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1652", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1653", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1654", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1655", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1656", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1657", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1658", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1659", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1660", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1661", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1662", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1663", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1664", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1665", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1666", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1667", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1668", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1669", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1670", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1671", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1672", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1673", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1674", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1675", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1676", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1677", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1678", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1679", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1680", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1681", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1682", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1683", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1684", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1685", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1686", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1687", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1688", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1689", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1690", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1691", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1692", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1693", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1694", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1695", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1696", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1697", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1698", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1699", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1700", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1701", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1702", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1703", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1704", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1705", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1706", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1707", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1708", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1709", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1710", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1711", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1712", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1713", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1714", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1715", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1716", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1717", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1718", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1719", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1720", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1721", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1722", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1723", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1724", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1725", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1726", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1727", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1728", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1729", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1730", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1731", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1732", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1733", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1734", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1735", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1736", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1737", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1738", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1739", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1741", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1742", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1743", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1744", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1745", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1746", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1747", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1748", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1749", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1750", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1751", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1752", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1753", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1754", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1755", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1756", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1757", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1758", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1759", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1760", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1761", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1762", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1763", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1764", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1765", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1766", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1767", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1768", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1769", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1770", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1771", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1772", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1773", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1774", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1775", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1776", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1777", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1778", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1779", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1780", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1781", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1782", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1783", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1784", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1785", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1786", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1787", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1788", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1789", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1790", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1791", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1792", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1793", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1794", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1795", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1796", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1797", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1798", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1799", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1800", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1801", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1802", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1803", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1804", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1805", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1806", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1807", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1808", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1809", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1810", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1811", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1812", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1813", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1814", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1815", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1816", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1817", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1818", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1819", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1820", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1821", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1822", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1823", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1824", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1825", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1826", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1827", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1828", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1829", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1830", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1831", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1832", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1833", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1834", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1835", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1836", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1837", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1838", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1839", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1840", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1841", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1842", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1843", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1844", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1845", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1846", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1847", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1848", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1849", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1850", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1851", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1852", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1853", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1854", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1855", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1856", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1857", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1858", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1859", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1860", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1861", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1862", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1863", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1864", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1865", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1866", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1867", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1868", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1869", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1870", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1871", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1872", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1873", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1874", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1875", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1876", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1877", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1878", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1879", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1880", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1881", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1882", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1883", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1884", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1885", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1886", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1887", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1889", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1890", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1891", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1892", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1893", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1894", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1895", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1896", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1897", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1898", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1899", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1900", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1901", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1902", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1903", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1904", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1905", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1906", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1907", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1908", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1909", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1910", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1911", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1912", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1913", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1914", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1915", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1916", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1917", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1918", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1919", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1920", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1921", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1922", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1923", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1924", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1925", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1926", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1927", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1928", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1929", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1930", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1931", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1932", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1933", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1934", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1935", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1936", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1937", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1938", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1939", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1940", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1941", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1942", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1943", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1944", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1945", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1946", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1947", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1948", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1949", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1950", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1951", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1952", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1953", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1954", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1955", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1956", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1957", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1958", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1959", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1960", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1962", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1963", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1964", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1965", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1966", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1967", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1968", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1969", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1970", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1971", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1972", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1973", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1974", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1975", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1976", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1977", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1978", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1979", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1980", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1981", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1982", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1983", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1984", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1985", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1986", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1987", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1988", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1989", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1990", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1991", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1992", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1993", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1994", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1995", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1996", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1997", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "1998", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2000", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2001", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2002", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2003", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2004", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2005", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2006", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2007", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2008", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2009", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2011", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2012", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2013", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2014", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2015", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2016", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2017", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2018", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2019", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2020", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2021", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2022", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2023", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2024", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2025", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2026", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2027", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2028", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2029", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2030", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2031", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2032", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2033", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2034", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2035", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2036", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2037", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2038", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2039", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2040", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2041", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2042", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2043", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2044", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2045", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2046", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2047", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2048", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2049", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2050", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2051", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2052", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2053", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2054", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2055", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2056", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2057", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2058", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2059", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2060", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2061", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2062", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2063", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2064", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2065", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2066", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2067", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2068", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2069", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2070", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2071", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2072", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2073", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2074", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2075", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2076", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2077", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2078", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2079", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2080", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2081", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2082", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2083", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2084", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2085", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2086", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2087", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2088", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2089", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2090", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2091", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2092", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2093", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2094", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2095", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2096", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2097", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2098", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2099", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2100", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2101", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2102", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2103", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2104", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2105", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2106", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2107", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2108", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2109", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2110", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2111", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2112", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2113", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2114", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2115", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2116", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2117", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2118", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2119", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2120", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2121", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2122", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2123", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2124", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2125", + "label": "EL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2126", + "label": "ILX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2127", + "label": "RLX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2128", + "label": "ZDX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2130", + "label": "HMC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2131", + "label": "HMR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2137", + "label": "CHEROKEE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2141", + "label": "RAPIDE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2144", + "label": "80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2145", + "label": "90", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2146", + "label": "100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2147", + "label": "200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2148", + "label": "A4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2149", + "label": "A6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2150", + "label": "A7", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2151", + "label": "A8", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2152", + "label": "RS5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2153", + "label": "S4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2154", + "label": "S6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2155", + "label": "S7", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2156", + "label": "S8", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2157", + "label": "TT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2158", + "label": "TTS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2159", + "label": "AVANTI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2160", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2161", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2163", + "label": "128", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2164", + "label": "135", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2165", + "label": "320", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2166", + "label": "525", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2167", + "label": "633", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2168", + "label": "635", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2169", + "label": "640", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2170", + "label": "645", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2171", + "label": "650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2172", + "label": "733", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2173", + "label": "1M", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2174", + "label": "ACTIVE E", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2175", + "label": "ACTIVEHYBRID 3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2177", + "label": "M", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2178", + "label": "M3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2179", + "label": "M5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2180", + "label": "M6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2181", + "label": "X1", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2182", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2183", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2184", + "label": "ENCORE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2186", + "label": "PARK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2187", + "label": "VERANO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2188", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2189", + "label": "60", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2190", + "label": "ATS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2191", + "label": "COMMERCIAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2192", + "label": "CTS-V", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2196", + "label": "STS-V", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2197", + "label": "XLR-V", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2198", + "label": "XTS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2199", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2200", + "label": "BERETTA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2201", + "label": "C10", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2202", + "label": "C1500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2203", + "label": "C1500 SUBURBAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2204", + "label": "C20", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2205", + "label": "C2500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2206", + "label": "C2500 SUBURBAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2207", + "label": "C30", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2208", + "label": "CAPTIVA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2209", + "label": "CRUZE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2210", + "label": "D10", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2211", + "label": "D30", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2212", + "label": "EQUINOX SPORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2213", + "label": "K10", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2214", + "label": "K1500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2215", + "label": "K1500 SUBURBAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2216", + "label": "K20", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2217", + "label": "K2500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2218", + "label": "K2500 SUBURBAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2219", + "label": "K30", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2220", + "label": "K3500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2221", + "label": "MONTE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2223", + "label": "R10", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2224", + "label": "R10 SUBURBAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2225", + "label": "R1500 SUBURBAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2226", + "label": "R20", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2227", + "label": "R20 SUBURBAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2228", + "label": "R2500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2229", + "label": "R2500 SUBURBAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2230", + "label": "R30", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2231", + "label": "R3500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2232", + "label": "S TRUCK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2233", + "label": "S10", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2234", + "label": "S10 BLAZER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2235", + "label": "S10 ELECTRIC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2236", + "label": "SILVERADO C1500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2237", + "label": "SILVERADO C2500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2238", + "label": "SILVERADO C3500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2239", + "label": "SILVERADO K1500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2240", + "label": "SILVERADO K2500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2241", + "label": "SILVERADO K3500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2242", + "label": "SILVERADO SS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2243", + "label": "SONIC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2244", + "label": "SPARK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2245", + "label": "SS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2246", + "label": "TAHOE C1500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2247", + "label": "TAHOE K1500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2248", + "label": "TRAX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2249", + "label": "V10", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2250", + "label": "V10 BLAZER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2251", + "label": "V10 SUBURBAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2252", + "label": "V1500 SUBURBAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2253", + "label": "V20", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2254", + "label": "V2500 SUBURBAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2255", + "label": "V30", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2256", + "label": "V3500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2257", + "label": "VOLT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2258", + "label": "200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2259", + "label": "300C", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2260", + "label": "300M", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2261", + "label": "E", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2264", + "label": "NEW", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2265", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2266", + "label": "2000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2267", + "label": "COLT 100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2269", + "label": "D-100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2270", + "label": "D-150", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2271", + "label": "D-250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2272", + "label": "D-350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2273", + "label": "D50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2275", + "label": "RAM 1500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2276", + "label": "RAM 2500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2277", + "label": "RAM 50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2278", + "label": "RAM SRT10", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2279", + "label": "RAM TRUCK 1500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2280", + "label": "RAM TRUCK 2500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2281", + "label": "RAM 3500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2283", + "label": "RAMCHARGER AD-150", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2285", + "label": "RAMCHARGER AW-150", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2286", + "label": "ST", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2287", + "label": "W100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2288", + "label": "W-100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2289", + "label": "W-150", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2290", + "label": "W-250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2291", + "label": "W-350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2293", + "label": "EAGLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2294", + "label": "458", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2295", + "label": "599", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2296", + "label": "612", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2301", + "label": "512TR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2302", + "label": "CALIFORNIA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2304", + "label": "F430", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2305", + "label": "FF", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2307", + "label": "500 ABARTH", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2308", + "label": "500 LOUNGE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2309", + "label": "500 POP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2310", + "label": "500 SPORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2311", + "label": "500L EASY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2312", + "label": "500L LOUNGE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2313", + "label": "500L POP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2314", + "label": "500L TREKKING", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2316", + "label": "KARMA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2317", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2318", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2319", + "label": "BRONCO II", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2320", + "label": "C-MAX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2321", + "label": "CROWN VIC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2322", + "label": "ECOSPORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2323", + "label": "F100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2324", + "label": "F150", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2325", + "label": "F250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2326", + "label": "F350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2327", + "label": "F450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2328", + "label": "KA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2329", + "label": "MONDEO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2332", + "label": "825", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2333", + "label": "E2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2334", + "label": "E4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2335", + "label": "E6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2336", + "label": "EL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2337", + "label": "ES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2338", + "label": "EV1", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2339", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2340", + "label": "C1500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2341", + "label": "C2500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2342", + "label": "C3500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2343", + "label": "G20", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2344", + "label": "GEO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2345", + "label": "K1500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2346", + "label": "K1500 JIMMY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2347", + "label": "K1500 SUBURBAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2348", + "label": "K2500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2349", + "label": "K2500 SUBURBAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2350", + "label": "K3500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2351", + "label": "R1500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2352", + "label": "R1500 SUBURBAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2353", + "label": "R2500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2355", + "label": "R35 CONVENTIONAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2356", + "label": "SIERRA C1500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2357", + "label": "SIERRA C2500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2358", + "label": "SIERRA C3500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2359", + "label": "SIERRA DENALI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2360", + "label": "SIERRA K1500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2361", + "label": "SIERRA K2500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2362", + "label": "SIERRA K3500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2364", + "label": "V15 CONVENTIONAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2365", + "label": "V25 CONVENTIONAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2366", + "label": "V35 CONVENTIONAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2367", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2368", + "label": "CROSSTOUR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2369", + "label": "CR-Z", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2370", + "label": "EV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2372", + "label": "H1", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2373", + "label": "H3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2374", + "label": "H3T", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2376", + "label": "HMCS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2379", + "label": "EQUUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2380", + "label": "SANTA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2381", + "label": "VELOSTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2382", + "label": "VERACRUZGLS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2385", + "label": "EX37", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2386", + "label": "FX37", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2387", + "label": "FX45", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2388", + "label": "G25", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2389", + "label": "JX35", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2390", + "label": "M35H", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2391", + "label": "M37", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2392", + "label": "M56", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2393", + "label": "Q50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2394", + "label": "Q60", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2396", + "label": "QX50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2397", + "label": "QX70", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2398", + "label": "ESTAR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2399", + "label": "CONVENTIONAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2400", + "label": "I-280", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2401", + "label": "I-350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2402", + "label": "I-370", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2403", + "label": "PICKUP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2404", + "label": "SPACE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2405", + "label": "EXECUTIVE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2406", + "label": "F-TYPE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2407", + "label": "SUPER V8", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2408", + "label": "VANDEN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2409", + "label": "XF", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2410", + "label": "XFR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2411", + "label": "XJ", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2412", + "label": "XJ12", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2413", + "label": "XJ6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2414", + "label": "XJ6L", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2415", + "label": "XJ8", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2416", + "label": "XJL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2417", + "label": "XJR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2419", + "label": "XJS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2421", + "label": "XK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2422", + "label": "XK8", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2423", + "label": "XKR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2424", + "label": "J10", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2425", + "label": "J20", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2426", + "label": "CADENZA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2427", + "label": "NEW SPECTRA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2428", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2429", + "label": "LAFORZA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2430", + "label": "AVENTADOR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2433", + "label": "LR4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2434", + "label": "RANGE ROV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2435", + "label": "RANGE RVR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2436", + "label": "CT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2437", + "label": "ES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2438", + "label": "GS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2439", + "label": "GX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2440", + "label": "HS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2441", + "label": "IS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2442", + "label": "IS-F", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2444", + "label": "LS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2445", + "label": "LX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2446", + "label": "RX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2447", + "label": "SC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2448", + "label": "CONTINTL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2449", + "label": "MKS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2450", + "label": "MKT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2451", + "label": "MKX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2452", + "label": "MKZ", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2453", + "label": "T C", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2454", + "label": "EVORA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2455", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2457", + "label": "GHIBLI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2461", + "label": "323/SE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2462", + "label": "6I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2463", + "label": "6S", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2464", + "label": "B2000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2465", + "label": "B2200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2466", + "label": "B2300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2467", + "label": "B2500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2468", + "label": "B2600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2469", + "label": "B3000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2470", + "label": "B4000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2471", + "label": "CX-5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2472", + "label": "MAZDA2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2473", + "label": "MAZDA3I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2474", + "label": "MAZDA3S", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2475", + "label": "MAZDA6I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2476", + "label": "MAZDA6S", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2477", + "label": "MAZDASPEED3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2478", + "label": "MAZDASPEED6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2479", + "label": "MIATA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2480", + "label": "MX-3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2481", + "label": "MX5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2482", + "label": "MX-5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2483", + "label": "MP4-12C", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2484", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2486", + "label": "CLA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2487", + "label": "E300D", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2488", + "label": "E320", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2489", + "label": "E420", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2490", + "label": "GLA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2491", + "label": "ML-CLASS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2492", + "label": "SL65AMG", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2493", + "label": "SLS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2494", + "label": "VIANO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2495", + "label": "I MIEV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2496", + "label": "MIGHTY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2497", + "label": "OUTLANDER SPORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2498", + "label": "SP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2499", + "label": "SPACE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2500", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2501", + "label": "720", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2502", + "label": "200SX/SE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2503", + "label": "240SX/SE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2504", + "label": "D21", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2505", + "label": "JUKE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2506", + "label": "LEAF", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2507", + "label": "LONG", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2508", + "label": "NX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2509", + "label": "SHORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2510", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2512", + "label": "AZTEK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2513", + "label": "J2000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2515", + "label": "924S", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2517", + "label": "BOXSTERS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2518", + "label": "CARRERA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2519", + "label": "PANAMERA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2520", + "label": "PROMASTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2521", + "label": "TRUCK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2522", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2523", + "label": "18I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2527", + "label": "SPORTWAGON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2529", + "label": "GHOST", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2535", + "label": "92X", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2536", + "label": "9-4X", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2537", + "label": "LS1", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2538", + "label": "LS2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2539", + "label": "LW1", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2540", + "label": "LW2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2541", + "label": "LW200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2542", + "label": "LW300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2544", + "label": "FORTWO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2547", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2548", + "label": "825", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2549", + "label": "827", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2550", + "label": "B9 TRIBECA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2551", + "label": "BRZ", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2553", + "label": "LEGCY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2554", + "label": "LGCY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2555", + "label": "XV CROSSTREK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2556", + "label": "GRAND", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2557", + "label": "KIZASHI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2559", + "label": "SX4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2560", + "label": "XL7", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2561", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2562", + "label": "MODEL S", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2563", + "label": "3/4 TON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2565", + "label": "4RUNNER/SR5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2566", + "label": "DELUXE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2567", + "label": "HIGLANDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2569", + "label": "PICKUP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2570", + "label": "FR-S", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2571", + "label": "SCION IQ", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2572", + "label": "SCION IQ ELECTRIC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2573", + "label": "SCION TC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2574", + "label": "SCION XA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2575", + "label": "SCION XB", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2576", + "label": "SCION XD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2577", + "label": "SR5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2578", + "label": "XTRACAB", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2579", + "label": "TR8", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2582", + "label": "TVR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2584", + "label": "NEW GTI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2585", + "label": "NEW JETTA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2586", + "label": "NW BET CONVERT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2587", + "label": "PSAT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2588", + "label": "242", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2589", + "label": "244", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2590", + "label": "245", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2591", + "label": "262", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2592", + "label": "264", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2593", + "label": "265", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2594", + "label": "745", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2595", + "label": "765", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2596", + "label": "850", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2597", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2598", + "label": "GV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2599", + "label": "GVC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2600", + "label": "GVL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2601", + "label": "GVS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2602", + "label": "GVX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2603", + "label": "2.2CL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2604", + "label": "2.3CL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2605", + "label": "2.5TL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2606", + "label": "3.0CL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2607", + "label": "3.2CL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2608", + "label": "3.2TL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2609", + "label": "3.5RL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2610", + "label": "TLX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2611", + "label": "ADVANCE MIXER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2612", + "label": "4C", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2613", + "label": "VELOCE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2614", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2615", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2616", + "label": "H1", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2617", + "label": "10TH ANNIVERSARY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2618", + "label": "BANDERA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2619", + "label": "CLASSIC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2620", + "label": "CLASSIC CHOPPER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2621", + "label": "JUDGE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2622", + "label": "LEGEND", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2623", + "label": "LSC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2624", + "label": "OUTLAW", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2625", + "label": "RANGER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2626", + "label": "ROADSTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2627", + "label": "SLAMMER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2628", + "label": "STALKER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2629", + "label": "TEJAS SJ", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2630", + "label": "TEXAS CHOPPER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2631", + "label": "ATLANTIC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2632", + "label": "CAPONORD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2633", + "label": "DORSODURO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2634", + "label": "ETV 1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2635", + "label": "MANA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2636", + "label": "MOJITO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2637", + "label": "MXV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2638", + "label": "RALLY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2639", + "label": "RS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2640", + "label": "RST FUTURA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2641", + "label": "RSV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2642", + "label": "RSV4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2643", + "label": "RXV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2644", + "label": "SCARABEO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2645", + "label": "SHIVER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2646", + "label": "SL1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2647", + "label": "SPORTCITY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2648", + "label": "SPORTCITY 250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2649", + "label": "SR MOTARD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2650", + "label": "SR50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2651", + "label": "SXV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2652", + "label": "TUONO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2653", + "label": "HUNTER 244", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2654", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2655", + "label": "V12 VANTAGE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2656", + "label": "50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2657", + "label": "90", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2658", + "label": "110", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2659", + "label": "125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2660", + "label": "200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2661", + "label": "250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2662", + "label": "260", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2663", + "label": "350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2664", + "label": "406", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2665", + "label": "450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2666", + "label": "490", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2667", + "label": "503", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2668", + "label": "600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2669", + "label": "605", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2670", + "label": "A4 ALLROAD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2671", + "label": "Q3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2672", + "label": "RS7", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2673", + "label": "SPORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2674", + "label": "SQ5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2675", + "label": "TT RS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2676", + "label": "ACL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2677", + "label": "ACM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2678", + "label": "AT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2679", + "label": "C / DC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2680", + "label": "CONSTRUKTOR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2681", + "label": "DK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2682", + "label": "DS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2683", + "label": "S", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2684", + "label": "XPEDITOR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2685", + "label": "XPERT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2686", + "label": "XSPOTTER-OFF", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2687", + "label": "XSPOTTER-ON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2688", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2689", + "label": "TRANSIT CONNECT E", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2690", + "label": "BASHAN ATV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2691", + "label": "BASHAN DIRT BIKE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2692", + "label": "BASHAN MOTORCYCLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2693", + "label": "BASHAN SCOOTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2694", + "label": "155", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2695", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2696", + "label": "FLYING SPUR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2697", + "label": "HD67MX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2698", + "label": "LD15A", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2699", + "label": "MD23M", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2700", + "label": "MD26M", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2701", + "label": "ATHENA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2702", + "label": "BEAR BONES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2703", + "label": "DEVILS ADVOCATE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2704", + "label": "GTX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2705", + "label": "MERC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2706", + "label": "MISS BEHAVIN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2707", + "label": "PARADOX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2708", + "label": "RAGE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2709", + "label": "REAPER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2710", + "label": "SCREAMIN DEMON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2711", + "label": "THE SLED", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2712", + "label": "VENOM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2713", + "label": "AEROGLIDE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2714", + "label": "AEROSPORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2715", + "label": "BOXER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2716", + "label": "BULLDOG", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2717", + "label": "CHOPPER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2718", + "label": "COYOTE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2719", + "label": "HUSKY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2720", + "label": "K9", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2721", + "label": "K-9", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2722", + "label": "MASTIFF", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2723", + "label": "MUTT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2724", + "label": "PITBULL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2725", + "label": "PROGLIDE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2726", + "label": "PROSPORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2727", + "label": "RIDGEBACK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2728", + "label": "VINTAGE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2729", + "label": "WOLF", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2730", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2731", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2732", + "label": "228", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2733", + "label": "428", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2734", + "label": "435", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2735", + "label": "228I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2736", + "label": "ACTIVEHYBRID 5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2737", + "label": "C600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2738", + "label": "C650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2739", + "label": "F1200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2740", + "label": "F650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2741", + "label": "F700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2742", + "label": "F800", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2743", + "label": "G450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2744", + "label": "G650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2745", + "label": "HP4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2746", + "label": "I3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2747", + "label": "I8", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2748", + "label": "K1", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2749", + "label": "K100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2750", + "label": "K1100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2751", + "label": "K1200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2752", + "label": "K1300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2753", + "label": "K1600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2754", + "label": "K75", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2755", + "label": "M235I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2756", + "label": "M235XI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2757", + "label": "M4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2758", + "label": "R NINE T", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2759", + "label": "R100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2760", + "label": "R1100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2761", + "label": "R1150", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2762", + "label": "R1200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2763", + "label": "R65", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2764", + "label": "R650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2765", + "label": "R80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2766", + "label": "R850", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2767", + "label": "R900", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2768", + "label": "S 1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2769", + "label": "X4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2770", + "label": "1125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2771", + "label": "BLAST", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2772", + "label": "CYCLONE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2773", + "label": "FIREBOLT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2774", + "label": "LIGHTNING", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2775", + "label": "RS SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2776", + "label": "THUNDERBOLT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2777", + "label": "ULYSSES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2778", + "label": "WHITE LIGHTNING", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2779", + "label": "XB12SCG", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2780", + "label": "XB9SX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2781", + "label": "FALCON 45", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2782", + "label": "195", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2783", + "label": "ELR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2784", + "label": "CAGIVA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2785", + "label": "F4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2786", + "label": "TE E", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2787", + "label": "WXC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2788", + "label": "COMMANDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2789", + "label": "COMMANDER MAX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2790", + "label": "DS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2791", + "label": "MAVERICK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2792", + "label": "MAVERICK MAX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2793", + "label": "OUTLANDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2794", + "label": "OUTLANDER MAX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2795", + "label": "RENEGADE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2796", + "label": "SPYDER ROADSTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2797", + "label": "PHETT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2798", + "label": "TJ5000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2799", + "label": "TJ6500T", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2800", + "label": "TJ7000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2801", + "label": "TJ9000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2802", + "label": "CT660", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2803", + "label": "7000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2804", + "label": "B7T042", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2805", + "label": "C4500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2806", + "label": "C5000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2807", + "label": "C5500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2808", + "label": "C6000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2809", + "label": "C65", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2810", + "label": "C6500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2811", + "label": "C7500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2812", + "label": "C8500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2813", + "label": "CAPRICE / IMPALA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2814", + "label": "CITY EXPRESS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2815", + "label": "CUTAWAY VAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2816", + "label": "EXPRESS CUTAWAY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2817", + "label": "EXPRESS G1500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2818", + "label": "EXPRESS G2500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2819", + "label": "EXPRESS G3500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2820", + "label": "EXPRESS G4500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2821", + "label": "EXPRESS VAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2824", + "label": "G10", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2825", + "label": "G20", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2826", + "label": "G30", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2827", + "label": "GMT-400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2828", + "label": "G-P", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2829", + "label": "HI-CUBE VAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2830", + "label": "IMPALA LIMITED", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2831", + "label": "ME6000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2832", + "label": "ME6500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2833", + "label": "P20", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2834", + "label": "P30", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2835", + "label": "PS4500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2836", + "label": "PS6500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2837", + "label": "S6000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2838", + "label": "SPARK EV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2839", + "label": "TILT MASTER W35042", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2840", + "label": "TILT MASTER W4S042", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2841", + "label": "TILT MASTER W4T042", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2842", + "label": "TILT MASTER W5R042", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2843", + "label": "TILT MASTER W5S042", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2844", + "label": "TILT MASTER W5T042", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2845", + "label": "TILT MASTER W6R042", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2846", + "label": "TILT MASTER W7R042", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2847", + "label": "TILT MASTER W7R042HV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2848", + "label": "T-SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2849", + "label": "VAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2850", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2851", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2852", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2853", + "label": "AFFINITY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2854", + "label": "ALLURE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2855", + "label": "INSPIRE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2856", + "label": "INTRIGUE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2857", + "label": "ISLANDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2858", + "label": "LEXA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2859", + "label": "LTC CHASSIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2860", + "label": "MAGNA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2861", + "label": "TRIBUTE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2862", + "label": "CITY HOP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2863", + "label": "GTR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2864", + "label": "OLIVER CITY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2865", + "label": "STYLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2866", + "label": "VEER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2867", + "label": "CHASSIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2868", + "label": "SCHOOL BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2869", + "label": "ROCKY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2870", + "label": "ATLANTIS 50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2871", + "label": "BOULEVARD 151", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2872", + "label": "258", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2873", + "label": "RAM 4500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2874", + "label": "RAM 5500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2875", + "label": "RD200 / RD250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2876", + "label": "620", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2877", + "label": "650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2878", + "label": "748", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2879", + "label": "749", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2880", + "label": "750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2881", + "label": "848", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2882", + "label": "851", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2883", + "label": "888", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2884", + "label": "900", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2885", + "label": "906", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2886", + "label": "907", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2887", + "label": "916", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2888", + "label": "996", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2889", + "label": "999", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2890", + "label": "1098", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2891", + "label": "1198", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2892", + "label": "DESMOSEDICI RR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2893", + "label": "DIAVEL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2894", + "label": "E900", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2895", + "label": "HYPERMOTARD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2896", + "label": "M600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2897", + "label": "M750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2898", + "label": "M900", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2899", + "label": "MONSTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2900", + "label": "MULTISTRADA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2901", + "label": "SPORTCLASSIC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2902", + "label": "ST2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2903", + "label": "ST3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2904", + "label": "ST4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2905", + "label": "STREETFIGHTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2906", + "label": "SUPERBIKE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2907", + "label": "SUPERSPORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2908", + "label": "DUPLEX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2909", + "label": "AXESS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2910", + "label": "ESCORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2911", + "label": "E-Z RIDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2912", + "label": "E-Z RIDER II", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2913", + "label": "TRANSMARK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2914", + "label": "TRANSMARK XHF", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2915", + "label": "CLASSIC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2916", + "label": "SPORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2917", + "label": "BEAMER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2918", + "label": "BEAMER II", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2919", + "label": "BEAMER III", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2920", + "label": "BEAMER MATRIX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2921", + "label": "BEAMER MATRIX II", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2922", + "label": "BEAMER R2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2923", + "label": "BEAMER R4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2924", + "label": "LIGHTNING", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2925", + "label": "MATRIX 50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2926", + "label": "MATRIX R4-150", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2927", + "label": "RASCAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2928", + "label": "ROVER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2929", + "label": "ROVER GT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2930", + "label": "SIERRA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2931", + "label": "SIERRA UTILITY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2932", + "label": "THUNDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2933", + "label": "TXL-50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2934", + "label": "TXL-90", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2935", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2936", + "label": "VECTOR 250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2937", + "label": "VIPER 150R", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2938", + "label": "VIPER 40E", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2939", + "label": "VIPER 50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2940", + "label": "VIPER 50M", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2941", + "label": "VIPER 70", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2942", + "label": "VIPER 70-4S", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2943", + "label": "VIPER 70M", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2944", + "label": "VIPER 90", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2945", + "label": "VIPER 90-4S", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2946", + "label": "VIPER 90R", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2947", + "label": "VIPER JR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2948", + "label": "YUKON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2949", + "label": "YUKON II", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2950", + "label": "417", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2951", + "label": "458 ITALIA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2952", + "label": "458 SPECIALE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2953", + "label": "458 SPIDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2954", + "label": "512TR / F512M", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2955", + "label": "LAFERRARI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2956", + "label": "500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2961", + "label": "500L", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2966", + "label": "CL-SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2967", + "label": "C-SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2968", + "label": "F-150 HERITAGE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2969", + "label": "F53", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2970", + "label": "F530", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2971", + "label": "F59", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2972", + "label": "F590", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2973", + "label": "F600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2974", + "label": "F6000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2975", + "label": "F650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2976", + "label": "F700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2977", + "label": "F7000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2978", + "label": "F750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2979", + "label": "F800", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2980", + "label": "F8000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2981", + "label": "FT800", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2982", + "label": "FT8000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2983", + "label": "FT900", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2984", + "label": "H-SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2985", + "label": "LOW CAB FORWARD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2986", + "label": "LOW TILT CARGO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2987", + "label": "L-SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2988", + "label": "N-SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2989", + "label": "P600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2990", + "label": "P800F", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2991", + "label": "TAURUS X", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2992", + "label": "TRANSIT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2993", + "label": "108SD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2994", + "label": "114SD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2995", + "label": "ARGOSY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2996", + "label": "CASCADIA 113", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2997", + "label": "CASCADIA 125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2998", + "label": "CHASSIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "2999", + "label": "COE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3000", + "label": "COLUMBIA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3001", + "label": "CONVENTIONAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3002", + "label": "HC CARGO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3003", + "label": "LEGACY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3004", + "label": "M2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3005", + "label": "MEDIUM CONVENTIONAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3006", + "label": "RIV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3007", + "label": "SPORT CHASSIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3008", + "label": "358", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3009", + "label": "SPRINTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3010", + "label": "AMERICA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3011", + "label": "BXU", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3012", + "label": "CB", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3013", + "label": "CRANE CARRIER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3014", + "label": "FD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3015", + "label": "RB", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3016", + "label": "GENESIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3019", + "label": "BLUR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3020", + "label": "BUDDY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3021", + "label": "RATTLER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3022", + "label": "ROUGHHOUSE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3023", + "label": "STELLA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3024", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3025", + "label": "2WM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3026", + "label": "C116", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3027", + "label": "INCOMPLETE MOTORHOME CHASSIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3028", + "label": "SCHOOL BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3029", + "label": "SHUTTLE BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3030", + "label": "SUBURBAN BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3031", + "label": "TRANSIT BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3032", + "label": "E4 S", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3033", + "label": "E6 S", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3034", + "label": "EL XD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3035", + "label": "EM 1400/1400 LSV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3036", + "label": "4000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3037", + "label": "5000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3038", + "label": "5500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3039", + "label": "6000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3040", + "label": "7000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3041", + "label": "B7T042", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3042", + "label": "B-SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3043", + "label": "C4500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3044", + "label": "C5000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3045", + "label": "C5500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3046", + "label": "C6000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3047", + "label": "C6400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3048", + "label": "C6500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3049", + "label": "C7000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3050", + "label": "C7500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3051", + "label": "C8500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3052", + "label": "CUTAWAY VAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3053", + "label": "D9500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3054", + "label": "F9500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3055", + "label": "FORWARD CONTROL CHASSIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3056", + "label": "GLIDER KIT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3057", + "label": "GMT-400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3058", + "label": "G-P", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3059", + "label": "H7500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3060", + "label": "H9500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3061", + "label": "HI-CUBE VAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3062", + "label": "J7500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3063", + "label": "J9500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3064", + "label": "M9500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3065", + "label": "ME6000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3066", + "label": "ME6500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3067", + "label": "MOTOR HOME CHASSIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3068", + "label": "N9500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3069", + "label": "NEW SIERRA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3070", + "label": "P6S042", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3071", + "label": "PS4500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3072", + "label": "PS6500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3073", + "label": "R15 CONVENTIONAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3077", + "label": "R25 CONVENTIONAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3078", + "label": "S6000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3079", + "label": "SEO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3080", + "label": "SIERRA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3089", + "label": "T-SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3090", + "label": "W3500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3091", + "label": "W4500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3092", + "label": "WT5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3093", + "label": "YUKON XL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3094", + "label": "FLD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3095", + "label": "FLH80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3096", + "label": "FLHP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3097", + "label": "FLHPE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3098", + "label": "FLHPEI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3099", + "label": "FLHPI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3100", + "label": "FLHR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3101", + "label": "FLHR/I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3102", + "label": "FLHRC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3103", + "label": "FLHRCI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3104", + "label": "FLHRI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3105", + "label": "FLHRS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3106", + "label": "FLHRSE3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3107", + "label": "FLHRSE4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3108", + "label": "FLHRSEI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3109", + "label": "FLHRSEI1", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3110", + "label": "FLHRSI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3111", + "label": "FLHS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3112", + "label": "FLHT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3113", + "label": "FLHTC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3114", + "label": "FLHTC/I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3115", + "label": "FLHTCI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3116", + "label": "FLHTCSE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3117", + "label": "FLHTCSE2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3118", + "label": "FLHTCU", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3119", + "label": "FLHTCU/I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3120", + "label": "FLHTCUI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3121", + "label": "FLHTCUL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3122", + "label": "FLHTCUSE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3123", + "label": "FLHTCUSE3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3124", + "label": "FLHTCUSE4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3125", + "label": "FLHTCUSE5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3126", + "label": "FLHTCUSE6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3127", + "label": "FLHTCUSE7", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3128", + "label": "FLHTCUTG", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3129", + "label": "FLHTI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3130", + "label": "FLHTK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3131", + "label": "FLHTKL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3132", + "label": "FLHTKSE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3133", + "label": "FLHTNSE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3134", + "label": "FLHTP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3135", + "label": "FLHTPI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3136", + "label": "FLHX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3137", + "label": "FLHXI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3138", + "label": "FLHXS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3139", + "label": "FLHXSE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3140", + "label": "FLHXSE2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3141", + "label": "FLHXSE3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3142", + "label": "FLHXXX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3143", + "label": "FLRT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3144", + "label": "FLS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3145", + "label": "FLST", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3146", + "label": "FLSTC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3147", + "label": "FLSTCI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3148", + "label": "FLSTF", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3149", + "label": "FLSTFB", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3150", + "label": "FLSTFI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3151", + "label": "FLSTFSE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3152", + "label": "FLSTI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3153", + "label": "FLSTN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3154", + "label": "FLSTNI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3155", + "label": "FLSTS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3156", + "label": "FLSTSB", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3157", + "label": "FLSTSC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3158", + "label": "FLSTSE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3159", + "label": "FLSTSE2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3160", + "label": "FLSTSE3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3161", + "label": "FLSTSI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3162", + "label": "FLT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3163", + "label": "FLTC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3164", + "label": "FLTCUI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3165", + "label": "FLTR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3166", + "label": "FLTRI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3167", + "label": "FLTRSE3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3168", + "label": "FLTRSEI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3169", + "label": "FLTRSEI2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3170", + "label": "FLTRU", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3171", + "label": "FLTRUSE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3172", + "label": "FLTRX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3173", + "label": "FLTRXS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3174", + "label": "FLTRXSE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3175", + "label": "FXB", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3176", + "label": "FXCW", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3177", + "label": "FXCWC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3178", + "label": "FXD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3179", + "label": "FXDB", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3180", + "label": "FXDBI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3181", + "label": "FXDBP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3182", + "label": "FXDC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3183", + "label": "FXDCI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3184", + "label": "FXDF", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3185", + "label": "FXDF2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3186", + "label": "FXDFSE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3187", + "label": "FXDFSE-2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3188", + "label": "FXDG", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3189", + "label": "FXDI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3190", + "label": "FXDI35", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3191", + "label": "FXDL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3192", + "label": "FXDLI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3193", + "label": "FXDP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3194", + "label": "FXDS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3195", + "label": "FXDSE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3196", + "label": "FXDSE2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3197", + "label": "FXDWG", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3198", + "label": "FXDWG2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3199", + "label": "FXDWG3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3200", + "label": "FXDWGI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3201", + "label": "FXDX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3202", + "label": "FXDXI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3203", + "label": "FXDXT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3204", + "label": "FXE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3205", + "label": "FXEF", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3206", + "label": "FXLR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3207", + "label": "FXR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3208", + "label": "FXR2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3209", + "label": "FXR3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3210", + "label": "FXR4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3211", + "label": "FXRC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3212", + "label": "FXRD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3213", + "label": "FXRDG", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3214", + "label": "FXRP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3215", + "label": "FXRP-F", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3216", + "label": "FXRP-W", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3217", + "label": "FXRS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3218", + "label": "FXRT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3219", + "label": "FXS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3220", + "label": "FXSB", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3221", + "label": "FXSBSE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3222", + "label": "FXST", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3223", + "label": "FXSTB", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3224", + "label": "FXSTBI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3225", + "label": "FXSTC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3226", + "label": "FXSTD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3227", + "label": "FXSTDI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3228", + "label": "FXSTDSE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3229", + "label": "FXSTDSE2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3230", + "label": "FXSTI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3231", + "label": "FXSTS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3232", + "label": "FXSTSB", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3233", + "label": "FXSTSI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3234", + "label": "FXSTSSE2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3235", + "label": "FXSTSSE3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3236", + "label": "FXWG", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3237", + "label": "FXWG-CA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3238", + "label": "MT500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3239", + "label": "VRSCA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3240", + "label": "VRSCAW", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3241", + "label": "VRSCAWA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3242", + "label": "VRSCB", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3243", + "label": "VRSCD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3244", + "label": "VRSCDA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3245", + "label": "VRSCDX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3246", + "label": "VRSCDXA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3247", + "label": "VRSCF", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3248", + "label": "VRSCR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3249", + "label": "VRSCSE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3250", + "label": "VRSCX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3251", + "label": "VRSCXA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3252", + "label": "XG500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3253", + "label": "XG750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3254", + "label": "XL1200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3255", + "label": "XL883", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3256", + "label": "XLH", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3257", + "label": "XLH1100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3258", + "label": "XLH1200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3259", + "label": "XLH883", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3260", + "label": "XLS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3261", + "label": "XLX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3262", + "label": "XR100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3263", + "label": "XR1200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3264", + "label": "SF", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3265", + "label": "BULLET", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3266", + "label": "BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3267", + "label": "CRANE/DRILL RIG", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3268", + "label": "DOCKMASTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3269", + "label": "FIRETRUCK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3270", + "label": "GLIDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3271", + "label": "H", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3272", + "label": "TRUCK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3273", + "label": "VT-100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3274", + "label": "198/258/268", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3275", + "label": "238/258", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3276", + "label": "258/268", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3277", + "label": "308/338", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3278", + "label": "338/358", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3279", + "label": "FA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3280", + "label": "FB", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3281", + "label": "FD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3282", + "label": "FE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3283", + "label": "FF", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3284", + "label": "FG", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3285", + "label": "GC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3286", + "label": "HINO 145", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3287", + "label": "HINO 165", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3288", + "label": "HINO 185", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3289", + "label": "HINO 238", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3290", + "label": "HINO 268", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3291", + "label": "HINO 308", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3292", + "label": "HINO 338", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3293", + "label": "SG", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3294", + "label": "ACCORD CROSSTOUR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3295", + "label": "ATC110", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3296", + "label": "ATC125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3297", + "label": "ATC185", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3298", + "label": "ATC200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3299", + "label": "ATC250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3300", + "label": "ATC350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3301", + "label": "ATC70", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3302", + "label": "C70", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3303", + "label": "CB1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3304", + "label": "CB1100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3305", + "label": "CB125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3306", + "label": "CB250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3307", + "label": "CB300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3308", + "label": "CB400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3309", + "label": "CB450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3310", + "label": "CB500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3311", + "label": "CB550", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3312", + "label": "CB559", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3313", + "label": "CB600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3314", + "label": "CB650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3315", + "label": "CB700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3316", + "label": "CB750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3317", + "label": "CB900", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3318", + "label": "CBR1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3319", + "label": "CBR1100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3320", + "label": "CBR250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3321", + "label": "CBR300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3322", + "label": "CBR500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3323", + "label": "CBR600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3324", + "label": "CBR650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3325", + "label": "CBR900", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3326", + "label": "CBR929", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3327", + "label": "CBX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3328", + "label": "CBX250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3329", + "label": "CBX550", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3330", + "label": "CH125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3331", + "label": "CH150", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3332", + "label": "CH250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3333", + "label": "CH50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3334", + "label": "CH80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3335", + "label": "CHF50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3336", + "label": "CM200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3337", + "label": "CM250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3338", + "label": "CM400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3339", + "label": "CM450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3340", + "label": "CMX250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3341", + "label": "CMX450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3342", + "label": "CN250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3343", + "label": "CR125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3344", + "label": "CR250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3345", + "label": "CR450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3346", + "label": "CR480", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3347", + "label": "CR500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3348", + "label": "CR60", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3349", + "label": "CR80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3350", + "label": "CR85", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3351", + "label": "CRF100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3352", + "label": "CRF110", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3353", + "label": "CRF125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3354", + "label": "CRF150", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3355", + "label": "CRF230", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3356", + "label": "CRF250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3357", + "label": "CRF450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3358", + "label": "CRF50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3359", + "label": "CRF70", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3360", + "label": "CRF80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3361", + "label": "CT110", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3362", + "label": "CT1100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3363", + "label": "CT70", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3364", + "label": "CTX1300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3365", + "label": "CTX700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3366", + "label": "CX500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3367", + "label": "CX650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3368", + "label": "EZ90", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3369", + "label": "FCX CLARITY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3370", + "label": "FIT EV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3371", + "label": "FL250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3372", + "label": "FL350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3373", + "label": "FL400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3374", + "label": "FSC600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3375", + "label": "FT500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3376", + "label": "GB500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3377", + "label": "GL1100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3378", + "label": "GL12", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3379", + "label": "GL1200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3380", + "label": "GL1500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3381", + "label": "GL1800", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3382", + "label": "GL500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3383", + "label": "GL650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3384", + "label": "GROM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3385", + "label": "MB50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3386", + "label": "MRT260E", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3387", + "label": "MUV700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3388", + "label": "NA50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3389", + "label": "NB50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3390", + "label": "NC50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3391", + "label": "NC700JD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3392", + "label": "NC700X", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3393", + "label": "NC750SA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3394", + "label": "NCH50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3395", + "label": "NH125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3396", + "label": "NH80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3397", + "label": "NHX110", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3398", + "label": "NN50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3399", + "label": "NPS50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3400", + "label": "NQ50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3401", + "label": "NRX1800", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3402", + "label": "NS400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3403", + "label": "NS50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3404", + "label": "NSA700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3405", + "label": "NSF250R", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3406", + "label": "NSS250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3407", + "label": "NSS300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3408", + "label": "NT650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3409", + "label": "NT700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3410", + "label": "NU50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3411", + "label": "NX125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3412", + "label": "NX250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3413", + "label": "NX50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3414", + "label": "NX650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3415", + "label": "PA50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3416", + "label": "PC800", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3417", + "label": "PCX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3418", + "label": "PS250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3419", + "label": "QR50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3420", + "label": "RVF750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3421", + "label": "RVT1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3422", + "label": "SA50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3423", + "label": "SA50 - SB50P", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3424", + "label": "SB50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3425", + "label": "SE50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3426", + "label": "SH150", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3427", + "label": "ST1100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3428", + "label": "ST1300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3429", + "label": "SXS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3430", + "label": "TG50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3431", + "label": "TLR200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3432", + "label": "TR200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3433", + "label": "TRX 700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3434", + "label": "TRX125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3435", + "label": "TRX200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3436", + "label": "TRX250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3437", + "label": "TRX300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3438", + "label": "TRX350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3439", + "label": "TRX400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3440", + "label": "TRX420", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3441", + "label": "TRX450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3442", + "label": "TRX50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3443", + "label": "TRX500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3444", + "label": "TRX650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3445", + "label": "TRX680", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3446", + "label": "TRX70", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3447", + "label": "TRX90", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3448", + "label": "VF1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3449", + "label": "VF1100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3450", + "label": "VF500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3451", + "label": "VF700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3452", + "label": "VF750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3453", + "label": "VFR1200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3454", + "label": "VFR700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3455", + "label": "VFR750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3456", + "label": "VFR800", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3457", + "label": "VT1100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3458", + "label": "VT1300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3459", + "label": "VT500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3460", + "label": "VT600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3461", + "label": "VT700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3462", + "label": "VT750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3463", + "label": "VT800", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3464", + "label": "VTR1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3465", + "label": "VTR250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3466", + "label": "VTX1300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3467", + "label": "VTX1800", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3468", + "label": "WW150", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3469", + "label": "XL100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3470", + "label": "XL125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3471", + "label": "XL185", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3472", + "label": "XL200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3473", + "label": "XL250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3474", + "label": "XL350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3475", + "label": "XL500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3476", + "label": "XL600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3477", + "label": "XL80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3478", + "label": "XR100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3479", + "label": "XR200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3480", + "label": "XR250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3481", + "label": "XR350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3482", + "label": "XR400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3483", + "label": "XR50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3484", + "label": "XR500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3485", + "label": "XR600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3486", + "label": "XR650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3487", + "label": "XR70", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3488", + "label": "XR80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3489", + "label": "Z50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3490", + "label": "ZA50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3491", + "label": "ZB50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3492", + "label": "H1 ALPHA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3493", + "label": "H2 SUT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3494", + "label": "350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3495", + "label": "499", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3496", + "label": "501", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3497", + "label": "600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3498", + "label": "FC400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3499", + "label": "FC450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3500", + "label": "FC501", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3501", + "label": "FC600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3502", + "label": "FE250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3503", + "label": "FE350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3504", + "label": "FE390", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3505", + "label": "FE400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3506", + "label": "FE450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3507", + "label": "FE450 / FS450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3508", + "label": "FE450/FX450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3509", + "label": "FE501", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3510", + "label": "FE550", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3511", + "label": "FE570", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3512", + "label": "FE600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3513", + "label": "FE650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3514", + "label": "FS450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3515", + "label": "FS600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3516", + "label": "FS650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3517", + "label": "FX400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3518", + "label": "FX600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3519", + "label": "FX650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3520", + "label": "TE250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3521", + "label": "TE300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3522", + "label": "125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3523", + "label": "250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3524", + "label": "260", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3525", + "label": "350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3526", + "label": "360", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3527", + "label": "510", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3528", + "label": "610", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3529", + "label": "CR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3530", + "label": "FC250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3531", + "label": "FC450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3532", + "label": "FE250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3533", + "label": "FE350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3534", + "label": "FE501", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3535", + "label": "SM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3536", + "label": "SMR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3537", + "label": "SMS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3538", + "label": "TC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3539", + "label": "TC125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3540", + "label": "TC250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3541", + "label": "TC85", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3542", + "label": "TE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3543", + "label": "TE250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3544", + "label": "TE300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3545", + "label": "TR650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3546", + "label": "TXC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3547", + "label": "WR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3548", + "label": "GT250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3549", + "label": "GT650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3550", + "label": "GV250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3551", + "label": "GV650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3552", + "label": "MS3-250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3553", + "label": "SD50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3554", + "label": "SF50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3555", + "label": "ST7", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3556", + "label": "TE-450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3557", + "label": "150", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3558", + "label": "230", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3559", + "label": "260", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3560", + "label": "ELANTRA COUPE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3561", + "label": "ELANTRA GT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3562", + "label": "ELANTRA TOURING", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3563", + "label": "GENESIS COUPE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3564", + "label": "SANTA FE SPORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3565", + "label": "XG", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3568", + "label": "1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3569", + "label": "3000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3570", + "label": "CENTENNIAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3571", + "label": "CHIEF", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3572", + "label": "CHIEFTAIN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3573", + "label": "SCOUT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3574", + "label": "SPORT CHIEF", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3575", + "label": "GLIDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3576", + "label": "Q40", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3577", + "label": "Q70", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3578", + "label": "Q70L", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3579", + "label": "QX60", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3580", + "label": "QX80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3581", + "label": "700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3582", + "label": "900", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3583", + "label": "1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3584", + "label": "2000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3585", + "label": "3000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3586", + "label": "4000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3587", + "label": "5500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3588", + "label": "5600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3589", + "label": "5900", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3590", + "label": "7000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3591", + "label": "8000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3592", + "label": "8300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3593", + "label": "9000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3594", + "label": "9100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3595", + "label": "9200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3596", + "label": "9300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3597", + "label": "9370", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3598", + "label": "9400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3599", + "label": "9600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3600", + "label": "9670", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3601", + "label": "9900", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3602", + "label": "CARGOSTAR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3603", + "label": "CF", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3604", + "label": "CO 9600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3605", + "label": "CO 9670", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3606", + "label": "CO 9700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3607", + "label": "CO-LFE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3608", + "label": "CO-PAYSTAR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3609", + "label": "CO-TRANSTAR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3610", + "label": "LONESTAR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3611", + "label": "METRO II", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3612", + "label": "PAYSTAR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3613", + "label": "PROSTAR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3614", + "label": "PROSTAR LMTD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3615", + "label": "PROSTAR PREMIUM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3616", + "label": "S-SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3617", + "label": "S-SERIES RHD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3618", + "label": "TERRASTAR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3619", + "label": "K900", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3620", + "label": "TRANSTAR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3621", + "label": "X-CO MDLS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3622", + "label": "X-CON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3623", + "label": "XT SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3624", + "label": "FRR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3625", + "label": "FSR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3626", + "label": "FTR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3627", + "label": "FTR / FVR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3628", + "label": "FTR / FVR / EVR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3629", + "label": "FVR / EVR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3630", + "label": "HTR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3631", + "label": "HVR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3632", + "label": "HXR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3633", + "label": "I-290", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3634", + "label": "KS22", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3635", + "label": "LT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3636", + "label": "MR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3637", + "label": "NPR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3638", + "label": "NQR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3639", + "label": "NRR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3640", + "label": "T6F042-FTR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3641", + "label": "T7F042-FVR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3642", + "label": "T8F042-FXR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3643", + "label": "T8F064-FXR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3644", + "label": "EURO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3645", + "label": "Z100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3646", + "label": "Z110", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3647", + "label": "Z120", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3648", + "label": "Z220", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3649", + "label": "Z230", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3650", + "label": "Z340", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3651", + "label": "Z450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3652", + "label": "MAGIRUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3653", + "label": "JEEP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3654", + "label": "JEEP TRUCK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3659", + "label": "SCRAMBLER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3660", + "label": "WRANGLER / TJ", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3661", + "label": "WRANGLER / YJ", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3662", + "label": "WRANGLER UNLIMITED", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3663", + "label": "COMMERCIAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3664", + "label": "TYPE A", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3665", + "label": "CYT 30", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3666", + "label": "CYT 50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3667", + "label": "CYT 60T", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3668", + "label": "OTTAWA 4X2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3669", + "label": "OTTAWA 6X4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3670", + "label": "1600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3671", + "label": "AR50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3672", + "label": "AR80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3673", + "label": "BN125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3674", + "label": "EJ650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3675", + "label": "EL250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3676", + "label": "EL650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3677", + "label": "EN450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3678", + "label": "EN500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3679", + "label": "ER650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3680", + "label": "EX250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3681", + "label": "EX300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3682", + "label": "EX305", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3683", + "label": "EX500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3684", + "label": "EX650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3685", + "label": "KAF300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3686", + "label": "KAF400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3687", + "label": "KAF550", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3688", + "label": "KAF620", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3689", + "label": "KAF820", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3690", + "label": "KAF920", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3691", + "label": "KAF950", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3692", + "label": "KD80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3693", + "label": "KDX175", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3694", + "label": "KDX200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3695", + "label": "KDX220", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3696", + "label": "KDX250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3697", + "label": "KDX420", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3698", + "label": "KDX450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3699", + "label": "KDX50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3700", + "label": "KDX80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3701", + "label": "KE100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3702", + "label": "KE125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3703", + "label": "KE175", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3704", + "label": "KEF300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3705", + "label": "KL250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3706", + "label": "KL600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3707", + "label": "KL650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3708", + "label": "KLE650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3709", + "label": "KLF110", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3710", + "label": "KLF185", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3711", + "label": "KLF220", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3712", + "label": "KLF250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3713", + "label": "KLF300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3714", + "label": "KLF400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3715", + "label": "KLT110", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3716", + "label": "KLT160", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3717", + "label": "KLT185", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3718", + "label": "KLT200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3719", + "label": "KLT250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3720", + "label": "KLX110", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3721", + "label": "KLX125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3722", + "label": "KLX140", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3723", + "label": "KLX250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3724", + "label": "KLX300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3725", + "label": "KLX400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3726", + "label": "KLX450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3727", + "label": "KLX650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3728", + "label": "KM100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3729", + "label": "KRF-750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3730", + "label": "KRF800", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3731", + "label": "KRT750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3732", + "label": "KRT800", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3733", + "label": "KSF250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3734", + "label": "KSF400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3735", + "label": "KSF450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3736", + "label": "KSF50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3737", + "label": "KSF80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3738", + "label": "KSF90", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3739", + "label": "KSV700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3740", + "label": "KVF300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3741", + "label": "KVF360", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3742", + "label": "KVF400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3743", + "label": "KVF650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3744", + "label": "KVF700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3745", + "label": "KVF750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3746", + "label": "KVS700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3747", + "label": "KX100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3748", + "label": "KX125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3749", + "label": "KX250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3750", + "label": "KX420", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3751", + "label": "KX450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3752", + "label": "KX500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3753", + "label": "KX60", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3754", + "label": "KX65", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3755", + "label": "KX80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3756", + "label": "KX85", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3757", + "label": "KXF250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3758", + "label": "KXT250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3759", + "label": "KZ1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3760", + "label": "KZ1100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3761", + "label": "KZ1300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3762", + "label": "KZ250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3763", + "label": "KZ305", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3764", + "label": "KZ440", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3765", + "label": "KZ550", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3766", + "label": "KZ650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3767", + "label": "KZ700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3768", + "label": "KZ750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3769", + "label": "LE650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3770", + "label": "NINJA ZX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3771", + "label": "VF700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3772", + "label": "VN1500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3773", + "label": "VN1600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3774", + "label": "VN1700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3775", + "label": "VN2000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3776", + "label": "VN700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3777", + "label": "VN750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3778", + "label": "VN800", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3779", + "label": "VN900", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3780", + "label": "VULCAN 2000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3781", + "label": "ZG1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3782", + "label": "ZG1200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3783", + "label": "ZG1400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3784", + "label": "ZL1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3785", + "label": "ZL600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3786", + "label": "ZL900", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3787", + "label": "ZN1100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3788", + "label": "ZN1300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3789", + "label": "ZN700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3790", + "label": "ZN750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3791", + "label": "ZR1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3792", + "label": "ZR1100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3793", + "label": "ZR1200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3794", + "label": "ZR550", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3795", + "label": "ZR750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3796", + "label": "ZX1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3797", + "label": "ZX1100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3798", + "label": "ZX1200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3799", + "label": "ZX1400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3800", + "label": "ZX550", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3801", + "label": "ZX600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3802", + "label": "ZX636", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3803", + "label": "ZX750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3804", + "label": "ZX900", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3805", + "label": "COE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3806", + "label": "CONSTRUCTION", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3807", + "label": "EXPORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3808", + "label": "K260/K360", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3809", + "label": "K270/K370", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3810", + "label": "OFF HIGHWAY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3811", + "label": "NEW SPORTAGE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3812", + "label": "SOUL EV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3813", + "label": "50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3814", + "label": "85", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3815", + "label": "105", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3816", + "label": "125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3817", + "label": "150", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3818", + "label": "200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3819", + "label": "250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3820", + "label": "300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3821", + "label": "350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3822", + "label": "360", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3823", + "label": "380", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3824", + "label": "400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3825", + "label": "450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3826", + "label": "500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3827", + "label": "505", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3828", + "label": "520", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3829", + "label": "525", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3830", + "label": "530", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3831", + "label": "560", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3832", + "label": "620", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3833", + "label": "625", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3834", + "label": "640", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3835", + "label": "690", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3836", + "label": "950", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3837", + "label": "990", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3838", + "label": "1190", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3839", + "label": "1290", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3840", + "label": "125 / 200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3841", + "label": "125/150", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3842", + "label": "50 / 65", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3843", + "label": "65/85", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3844", + "label": "DESERT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3845", + "label": "ENDURO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3846", + "label": "MOTOCROSS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3847", + "label": "ROAD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3848", + "label": "TRIAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3849", + "label": "AGILITY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3850", + "label": "BET & WIN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3851", + "label": "COMPAGNO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3852", + "label": "DOWNTOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3853", + "label": "FLAT BED", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3854", + "label": "GRAND VISTA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3855", + "label": "KYMCO ATV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3856", + "label": "LIKE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3857", + "label": "MONGOOSE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3858", + "label": "MONGOOSE/MXU", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3859", + "label": "MOVIE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3860", + "label": "MXER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3861", + "label": "MXU", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3862", + "label": "PEOPLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3863", + "label": "QUANNON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3864", + "label": "RED STICKER ATV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3865", + "label": "SENTO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3866", + "label": "SPORTY ATV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3867", + "label": "SPORTY UTILITY ATV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3868", + "label": "STING 50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3869", + "label": "SUPER 8", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3870", + "label": "SUPER 9", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3871", + "label": "SUPER 9 50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3872", + "label": "UTILITY ATV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3873", + "label": "UXV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3874", + "label": "VENOX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3875", + "label": "VITALITY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3876", + "label": "XCITING", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3877", + "label": "YAGER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3878", + "label": "ZX50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3879", + "label": "HURACAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3880", + "label": "VENENO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3882", + "label": "RANGE ROVER EVOQUE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3883", + "label": "GS GENERATION 2006", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3884", + "label": "NX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3885", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3886", + "label": "MKC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3887", + "label": "BRUTALE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3888", + "label": "SM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3889", + "label": "TE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3890", + "label": "B3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3891", + "label": "B5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3892", + "label": "F3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3893", + "label": "F5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3894", + "label": "F6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3895", + "label": "S3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3896", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3897", + "label": "200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3898", + "label": "250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3899", + "label": "300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3900", + "label": "400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3901", + "label": "500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3902", + "label": "600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3903", + "label": "700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3904", + "label": "800", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3905", + "label": "SAVAGE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3906", + "label": "TR20", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3907", + "label": "TR40", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3908", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3909", + "label": "CAB OVER ENGINE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3910", + "label": "CCV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3911", + "label": "CONVENTIONAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3912", + "label": "CONVENTIONAL HEAVY DUTY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3913", + "label": "CONVENTIONAL LIGHTWEIGHT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3914", + "label": "GLIDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3915", + "label": "228", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3916", + "label": "COUPE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3917", + "label": "3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3921", + "label": "SPEED", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3928", + "label": "650S", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3929", + "label": "P1", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3930", + "label": "300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3933", + "label": "380", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3936", + "label": "B250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3937", + "label": "C GENERATION 2006", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3938", + "label": "CLK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3941", + "label": "E", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3946", + "label": "ML", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3950", + "label": "SL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3954", + "label": "SPRINTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3955", + "label": "HD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3956", + "label": "COOPER COUPE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3957", + "label": "COOPER ROADSTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3958", + "label": "MIGHTY MAX / S", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3959", + "label": "MPV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3960", + "label": "S", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3961", + "label": "SPX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3962", + "label": "FE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3964", + "label": "FG", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3966", + "label": "FH", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3968", + "label": "FK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3970", + "label": "FM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3972", + "label": "1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3973", + "label": "BREVA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3976", + "label": "CALIFORNIA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3980", + "label": "DAYTONA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3981", + "label": "GRISO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3982", + "label": "V11", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3983", + "label": "COUNTRY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3984", + "label": "SKORPION", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3985", + "label": "TOUR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3986", + "label": "NV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3987", + "label": "NV200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3988", + "label": "ROGUE SELECT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3989", + "label": "TRUCK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3996", + "label": "VERSA NOTE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3997", + "label": "CLA83", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3998", + "label": "CMA83", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "3999", + "label": "CPB12", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4000", + "label": "CPC12", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4001", + "label": "UD1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4002", + "label": "UD1200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4003", + "label": "UD1300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4004", + "label": "UD1400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4005", + "label": "UD1800", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4006", + "label": "UD2000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4007", + "label": "UD2300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4008", + "label": "UD2600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4009", + "label": "UD2800", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4010", + "label": "UD3000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4011", + "label": "UD3300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4012", + "label": "UD550", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4013", + "label": "UD600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4014", + "label": "ORION I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4015", + "label": "ORION II", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4016", + "label": "ORION V", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4017", + "label": "ORION II", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4018", + "label": "ORION V", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4019", + "label": "ORION VI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4020", + "label": "ORION VII", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4021", + "label": "CHASSIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4022", + "label": "CONVENTIONAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4023", + "label": "FORWARD MOUNTED", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4024", + "label": "JOHN DEERE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4025", + "label": "LOW TILT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4026", + "label": "S SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4027", + "label": "SHUTTLE BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4028", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4029", + "label": "RV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4030", + "label": "FIRE CAB CHASSIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4031", + "label": "ROGUE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4032", + "label": "YT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4033", + "label": "200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4034", + "label": "210", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4035", + "label": "220", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4036", + "label": "270", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4037", + "label": "310", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4038", + "label": "320", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4039", + "label": "325", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4040", + "label": "330", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4041", + "label": "335", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4042", + "label": "337", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4043", + "label": "340", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4044", + "label": "348", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4045", + "label": "349", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4046", + "label": "352", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4047", + "label": "353", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4048", + "label": "357", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4049", + "label": "359", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4050", + "label": "362", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4051", + "label": "365", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4052", + "label": "367", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4053", + "label": "372", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4054", + "label": "375", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4055", + "label": "376", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4056", + "label": "377", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4057", + "label": "378", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4058", + "label": "379", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4059", + "label": "382", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4060", + "label": "384", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4061", + "label": "385", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4062", + "label": "386", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4063", + "label": "387", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4064", + "label": "388", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4065", + "label": "389", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4066", + "label": "397", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4067", + "label": "567", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4068", + "label": "579", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4069", + "label": "587", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4070", + "label": "BV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4071", + "label": "FLY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4072", + "label": "LT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4073", + "label": "MP3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4074", + "label": "TYPHOON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4075", + "label": "X9 EVOLUTION", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4076", + "label": "BIG BOSS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4077", + "label": "BRUTUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4078", + "label": "DIESEL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4079", + "label": "GEN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4080", + "label": "HAWKEYE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4081", + "label": "MAGNUM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4082", + "label": "OUTLAW", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4083", + "label": "PHOENIX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4084", + "label": "PREDATOR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4085", + "label": "RANGER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4086", + "label": "SAWTOOTH", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4087", + "label": "SCRAMBLER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4088", + "label": "SPORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4089", + "label": "SPORTSMAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4090", + "label": "TRAIL BLAZER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4091", + "label": "TRAIL BOSS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4092", + "label": "X2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4093", + "label": "XPEDITION", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4094", + "label": "XPLORER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4095", + "label": "XPRESS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4096", + "label": "MONTANA / TRANS SPORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4097", + "label": "918", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4098", + "label": "911 NEW GENERATION", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4099", + "label": "MACAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4100", + "label": "1500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4101", + "label": "2500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4102", + "label": "3500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4103", + "label": "4500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4104", + "label": "5500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4105", + "label": "PROMASTER 1500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4106", + "label": "PROMASTER 2500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4107", + "label": "PROMASTER 3500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4108", + "label": "TRADESMAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4109", + "label": "AE-STACKED RAIL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4110", + "label": "DYANASTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4111", + "label": "EXECUTIVE SIGNATURE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4112", + "label": "LF4F", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4113", + "label": "MAGNUM B-SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4114", + "label": "MAGNUM C-SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4115", + "label": "MAGNUM M-SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4116", + "label": "MAGNUM S-SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4117", + "label": "MONOCOQUE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4118", + "label": "MOTORHOME CHASSIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4119", + "label": "M-SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4120", + "label": "RAISED RAIL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4121", + "label": "STRAIGHT RAIL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4122", + "label": "SILVER DAWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4123", + "label": "SILVER SERAPH", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4124", + "label": "SILVER SPIRIT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4125", + "label": "SILVER SPUR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4126", + "label": "WRAITH", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4127", + "label": "CONCRETE VEHICLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4128", + "label": "COE HIGH", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4129", + "label": "COE LOW", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4130", + "label": "CONVENTIONAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4131", + "label": "SEAGRAVE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4132", + "label": "D100 SC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4133", + "label": "D120 SC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4134", + "label": "D75 SC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4135", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4136", + "label": "DIAMOND", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4137", + "label": "FURION", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4138", + "label": "SCHOOL BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4139", + "label": "SHUTTLE BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4140", + "label": "2500 SPRINTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4141", + "label": "3500 SPRINTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4142", + "label": "A", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4143", + "label": "ACTERRA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4144", + "label": "AT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4145", + "label": "BULLET", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4146", + "label": "CONDOR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4147", + "label": "L", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4148", + "label": "LC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4149", + "label": "LT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4150", + "label": "M", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4151", + "label": "MITSUBISHI CHASSIS COE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4152", + "label": "SC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4153", + "label": "SPORT CHASSIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4154", + "label": "ST", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4155", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4156", + "label": "WRX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4157", + "label": "XT6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4158", + "label": "ALT125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4159", + "label": "ALT185", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4160", + "label": "ALT50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4161", + "label": "AN400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4162", + "label": "AN650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4163", + "label": "C50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4164", + "label": "C90", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4165", + "label": "DL100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4166", + "label": "DL1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4167", + "label": "DL650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4168", + "label": "DR100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4169", + "label": "DR125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4170", + "label": "DR200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4171", + "label": "DR250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4172", + "label": "DR350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4173", + "label": "DR500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4174", + "label": "DR600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4175", + "label": "DR650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4176", + "label": "DR750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4177", + "label": "DR-Z110", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4178", + "label": "DR-Z125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4179", + "label": "DR-Z250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4180", + "label": "DR-Z400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4181", + "label": "DR-Z70", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4182", + "label": "DS100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4183", + "label": "DS125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4184", + "label": "DS185", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4185", + "label": "DS250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4186", + "label": "DS50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4187", + "label": "DS80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4188", + "label": "FA50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4189", + "label": "FS50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4190", + "label": "FZ50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4191", + "label": "GN125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4192", + "label": "GN250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4193", + "label": "GN400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4194", + "label": "GR650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4195", + "label": "GS1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4196", + "label": "GS1100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4197", + "label": "GS1150", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4198", + "label": "GS250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4199", + "label": "GS300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4200", + "label": "GS400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4201", + "label": "GS450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4202", + "label": "GS500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4203", + "label": "GS550", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4204", + "label": "GS650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4205", + "label": "GS700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4206", + "label": "GS750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4207", + "label": "GS850", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4208", + "label": "GSF1200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4209", + "label": "GSF1250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4210", + "label": "GSF400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4211", + "label": "GSF600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4212", + "label": "GSF650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4213", + "label": "GSX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4214", + "label": "GSX1100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4215", + "label": "GSX1250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4216", + "label": "GSX1300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4217", + "label": "GSX600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4218", + "label": "GSX650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4219", + "label": "GSX750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4220", + "label": "GSX-R1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4221", + "label": "GSX-R1100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4222", + "label": "GSX-R600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4223", + "label": "GSX-R750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4224", + "label": "GV1200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4225", + "label": "GV1400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4226", + "label": "GV700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4227", + "label": "GW250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4228", + "label": "GZ250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4229", + "label": "JR50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4230", + "label": "JR80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4231", + "label": "LS650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4232", + "label": "LT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4233", + "label": "LT125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4234", + "label": "LT160", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4235", + "label": "LT185", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4236", + "label": "LT230", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4237", + "label": "LT250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4238", + "label": "LT300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4239", + "label": "LT50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4240", + "label": "LT500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4241", + "label": "LT80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4242", + "label": "LT-A400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4243", + "label": "LT-A450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4244", + "label": "LT-A50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4245", + "label": "LT-A500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4246", + "label": "LT-A700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4247", + "label": "LT-A750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4248", + "label": "LTF", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4249", + "label": "LT-F160", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4250", + "label": "LTF230", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4251", + "label": "LTF250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4252", + "label": "LTF300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4253", + "label": "LTF4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4254", + "label": "LTF400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4255", + "label": "LTF500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4256", + "label": "LT-R450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4257", + "label": "LT-V700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4258", + "label": "LT-Z250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4259", + "label": "LT-Z400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4260", + "label": "LT-Z50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4261", + "label": "LT-Z90", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4262", + "label": "M109R / VZR1800", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4263", + "label": "M50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4264", + "label": "PE175", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4265", + "label": "PE250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4266", + "label": "PE400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4267", + "label": "QUV620", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4268", + "label": "RB50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4269", + "label": "RF600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4270", + "label": "RFR900", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4271", + "label": "RG250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4272", + "label": "RG500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4273", + "label": "RM100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4274", + "label": "RM125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4275", + "label": "RM2450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4276", + "label": "RM250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4277", + "label": "RM465", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4278", + "label": "RM500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4279", + "label": "RM60", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4280", + "label": "RM65", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4281", + "label": "RM80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4282", + "label": "RM85", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4283", + "label": "RMX250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4284", + "label": "RMX450Z", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4285", + "label": "RM-Z250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4286", + "label": "RM-Z450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4287", + "label": "RS175", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4288", + "label": "RS250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4289", + "label": "SFV650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4290", + "label": "SP100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4291", + "label": "SP125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4292", + "label": "SP200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4293", + "label": "SP250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4294", + "label": "SP500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4295", + "label": "SP600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4296", + "label": "SV1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4297", + "label": "SV650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4298", + "label": "TL1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4299", + "label": "TS100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4300", + "label": "TS125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4301", + "label": "TS185", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4302", + "label": "TS250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4303", + "label": "TU250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4304", + "label": "UH200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4305", + "label": "VL1500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4306", + "label": "VL800", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4307", + "label": "VLR1800", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4308", + "label": "VS1400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4309", + "label": "VS700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4310", + "label": "VS750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4311", + "label": "VS800", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4312", + "label": "VX800", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4313", + "label": "VZ1500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4314", + "label": "VZ1600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4315", + "label": "VZ800", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4316", + "label": "VZR1800", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4317", + "label": "XN85", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4318", + "label": "CITYCOM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4319", + "label": "FIDDLE II", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4320", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4321", + "label": "WOLF", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4322", + "label": "SCHOOL BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4323", + "label": "TRANSIT BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4324", + "label": "CAMRY NEW GENERATION", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4325", + "label": "PICKUP / CAB CHASSIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4326", + "label": "PICKUP COMMERCIAL / CAMPER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4327", + "label": "PRIUS C", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4328", + "label": "PRIUS PLUG-IN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4329", + "label": "PRIUS V", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4330", + "label": "RAV4 EV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4331", + "label": "SCION", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4332", + "label": "9623", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4333", + "label": "102A3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4334", + "label": "102C3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4335", + "label": "96A3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4336", + "label": "MC-9", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4337", + "label": "T-30", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4338", + "label": "T70206", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4339", + "label": "T706", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4340", + "label": "T70608", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4341", + "label": "T802", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4342", + "label": "T806", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4343", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4344", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4345", + "label": "SPITFIRE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4346", + "label": "TR6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4347", + "label": "ADVENTURER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4348", + "label": "AMERICA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4349", + "label": "BONNEVILLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4350", + "label": "DAYTONA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4351", + "label": "LEGEND TT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4352", + "label": "ROCKET III", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4353", + "label": "SCRAMBLER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4354", + "label": "SPEED", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4355", + "label": "SPEED TRIPLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4356", + "label": "SPEEDMASTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4357", + "label": "SPRINT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4358", + "label": "STREET TRIPLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4359", + "label": "SUPER III", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4360", + "label": "T100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4361", + "label": "T509", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4362", + "label": "T595", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4363", + "label": "THRUXTON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4364", + "label": "THUNDERBIRD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4365", + "label": "TIGER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4366", + "label": "TRIDENT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4367", + "label": "TROPHY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4368", + "label": "TT600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4369", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4370", + "label": "3350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4371", + "label": "3900", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4372", + "label": "STEP VAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4373", + "label": "C2045", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4374", + "label": "T2100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4375", + "label": "T800", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4376", + "label": "T809", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4377", + "label": "T815", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4378", + "label": "T900", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4379", + "label": "TD925", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4380", + "label": "TOURIST COACH TX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4381", + "label": "TRANSIT BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4382", + "label": "C161C", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4383", + "label": "GRANTURISMO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4384", + "label": "GTS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4385", + "label": "LX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4386", + "label": "M198F", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4387", + "label": "PX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4388", + "label": "ANESS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4389", + "label": "BOARDWALK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4390", + "label": "CNESS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4391", + "label": "CROSS COUNTRY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4392", + "label": "CROSS ROADS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4393", + "label": "DELUXE TOURING", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4394", + "label": "GUNNER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4395", + "label": "HAMMER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4396", + "label": "HARD-BALL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4397", + "label": "HIGH-BALL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4398", + "label": "JACKPOT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4399", + "label": "JUDGE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4400", + "label": "KINGPIN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4401", + "label": "NESS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4402", + "label": "TOURING", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4403", + "label": "V92", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4404", + "label": "VEGAS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4405", + "label": "VISION", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4406", + "label": "VX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4407", + "label": "ZNESS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4408", + "label": "GOLF R", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4409", + "label": "TOUAREG 2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4410", + "label": "9700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4411", + "label": "740 / 760", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4412", + "label": "745 / 765", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4413", + "label": "ACL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4414", + "label": "AERO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4415", + "label": "CONVENTIONAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4416", + "label": "F600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4417", + "label": "F700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4418", + "label": "FE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4419", + "label": "FE6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4420", + "label": "FE7", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4421", + "label": "HIGH COE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4422", + "label": "N10", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4423", + "label": "N12", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4424", + "label": "V60", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4425", + "label": "VA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4426", + "label": "VHD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4427", + "label": "VN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4428", + "label": "VT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4429", + "label": "XPEDITOR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4430", + "label": "ALPINE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4431", + "label": "CONVENTIONAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4432", + "label": "HIGH COE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4433", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4434", + "label": "AERO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4435", + "label": "CONVENTIONAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4436", + "label": "HIGH COE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4437", + "label": "INTEGRAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4438", + "label": "LOW COE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4439", + "label": "ROAD BOSS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4440", + "label": "ROAD COMMANDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4441", + "label": "ROAD XPEDITOR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4442", + "label": "XPEDITOR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4443", + "label": "ACL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4444", + "label": "ACM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4445", + "label": "AERO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4446", + "label": "BRIGADIER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4447", + "label": "CONVENTIONAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4448", + "label": "HIGH COE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4449", + "label": "INTEGRAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4450", + "label": "LOW COE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4451", + "label": "XPEDITOR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4452", + "label": "CLASS A", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4453", + "label": "LE SHARO/PHASAR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4454", + "label": "RIALTA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4455", + "label": "WALK-IN VAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4456", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4457", + "label": "BUS CHASSIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4458", + "label": "COMMERCIAL CHASSIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4459", + "label": "FORWARD CONTROL CHASSIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4460", + "label": "MOTORHOME CHASSIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4461", + "label": "R26 - UFO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4462", + "label": "STEP VAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4463", + "label": "BW200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4464", + "label": "BW350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4465", + "label": "BW80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4466", + "label": "CA50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4467", + "label": "CE11", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4468", + "label": "CE12", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4469", + "label": "CE14", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4470", + "label": "CE50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4471", + "label": "CG19", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4472", + "label": "CG50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4473", + "label": "CP250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4474", + "label": "CV50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4475", + "label": "CV80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4476", + "label": "CW50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4477", + "label": "CX50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4478", + "label": "CY50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4479", + "label": "DT100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4480", + "label": "DT125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4481", + "label": "DT175", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4482", + "label": "DT200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4483", + "label": "DT50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4484", + "label": "DT80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4485", + "label": "FJ1100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4486", + "label": "FJ1200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4487", + "label": "FJ600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4488", + "label": "FJR1300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4489", + "label": "FZ07", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4490", + "label": "FZ09", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4491", + "label": "FZ1", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4492", + "label": "FZ6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4493", + "label": "FZ600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4494", + "label": "FZ700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4495", + "label": "FZ750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4496", + "label": "FZ8", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4497", + "label": "FZR1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4498", + "label": "FZR400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4499", + "label": "FZR600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4500", + "label": "FZR750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4501", + "label": "FZS10", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4502", + "label": "FZX700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4503", + "label": "FZX750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4504", + "label": "GTS1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4505", + "label": "IT200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4506", + "label": "IT250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4507", + "label": "IT490", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4508", + "label": "LB50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4509", + "label": "LC50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4510", + "label": "MJ50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4511", + "label": "MT-01", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4512", + "label": "PRO HAULER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4513", + "label": "PW50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4514", + "label": "PW501", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4515", + "label": "PW80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4516", + "label": "PW801", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4517", + "label": "QT50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4518", + "label": "RT100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4519", + "label": "RT180", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4520", + "label": "RX50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4521", + "label": "RZ350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4522", + "label": "RZ500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4523", + "label": "SH50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4524", + "label": "SR185", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4525", + "label": "SR250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4526", + "label": "SR400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4527", + "label": "SR400C", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4528", + "label": "SR500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4529", + "label": "SRX250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4530", + "label": "SRX600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4531", + "label": "TDM850", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4532", + "label": "TT225", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4533", + "label": "TT250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4534", + "label": "TT350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4535", + "label": "TT600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4536", + "label": "TT-R110E", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4537", + "label": "TTR125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4538", + "label": "TTR225", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4539", + "label": "TTR230", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4540", + "label": "TT-R230", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4541", + "label": "TTR50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4542", + "label": "TTR90", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4543", + "label": "TW200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4544", + "label": "TY350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4545", + "label": "TZ250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4546", + "label": "TZR250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4547", + "label": "VMX12", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4548", + "label": "VMX17", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4549", + "label": "VP11", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4550", + "label": "WR200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4551", + "label": "WR250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4552", + "label": "WR400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4553", + "label": "WR426", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4554", + "label": "WR450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4555", + "label": "WR500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4556", + "label": "XC125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4557", + "label": "XC180", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4558", + "label": "XC200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4559", + "label": "XC50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4560", + "label": "XF50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4561", + "label": "XJ1100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4562", + "label": "XJ550", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4563", + "label": "XJ600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4564", + "label": "XJ650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4565", + "label": "XJ700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4566", + "label": "XJ750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4567", + "label": "XJ900", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4568", + "label": "XP500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4569", + "label": "XS1100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4570", + "label": "XS400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4571", + "label": "XS650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4572", + "label": "XS850", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4573", + "label": "XT1200Z", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4574", + "label": "XT1200ZC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4575", + "label": "XT125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4576", + "label": "XT200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4577", + "label": "XT225", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4578", + "label": "XT250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4579", + "label": "XT350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4580", + "label": "XT500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4581", + "label": "XT550", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4582", + "label": "XT600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4583", + "label": "XV1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4584", + "label": "XV1100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4585", + "label": "XV16", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4586", + "label": "XV1600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4587", + "label": "XV1700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4588", + "label": "XV1900", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4589", + "label": "XV250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4590", + "label": "XV500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4591", + "label": "XV535", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4592", + "label": "XV700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4593", + "label": "XV750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4594", + "label": "XV7501", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4595", + "label": "XV920", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4596", + "label": "XVS1100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4597", + "label": "XVS1300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4598", + "label": "XVS65", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4599", + "label": "XVS650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4600", + "label": "XVS950", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4601", + "label": "XVZ12", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4602", + "label": "XVZ13", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4603", + "label": "XZ550", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4604", + "label": "YF60", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4605", + "label": "YFA1", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4606", + "label": "YFB250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4607", + "label": "YFM100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4608", + "label": "YFM125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4609", + "label": "YFM200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4610", + "label": "YFM225", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4611", + "label": "YFM25", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4612", + "label": "YFM250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4613", + "label": "YFM300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4614", + "label": "YFM350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4615", + "label": "YFM4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4616", + "label": "YFM40", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4617", + "label": "YFM400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4618", + "label": "YFM45", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4619", + "label": "YFM450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4620", + "label": "YFM50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4621", + "label": "YFM550", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4622", + "label": "YFM660", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4623", + "label": "YFM700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4624", + "label": "YFM80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4625", + "label": "YFM90", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4626", + "label": "YFP350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4627", + "label": "YFS200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4628", + "label": "YFU1", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4629", + "label": "YFZ350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4630", + "label": "YFZ450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4631", + "label": "YJ125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4632", + "label": "YJ50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4633", + "label": "YP400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4634", + "label": "YSR50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4635", + "label": "YT125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4636", + "label": "YT60", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4637", + "label": "YTM200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4638", + "label": "YTM225", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4639", + "label": "YTZ250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4640", + "label": "YW125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4641", + "label": "YW50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4642", + "label": "YX600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4643", + "label": "YXM700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4644", + "label": "YXR450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4645", + "label": "YXR660", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4646", + "label": "YXR700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4647", + "label": "YZ100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4648", + "label": "YZ125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4649", + "label": "YZ1251", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4650", + "label": "YZ250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4651", + "label": "YZ2501", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4652", + "label": "YZ400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4653", + "label": "YZ426", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4654", + "label": "YZ450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4655", + "label": "YZ490", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4656", + "label": "YZ80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4657", + "label": "YZ801", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4658", + "label": "YZ85", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4659", + "label": "YZF1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4660", + "label": "YZF600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4661", + "label": "YZF750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4662", + "label": "YZFR1", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4663", + "label": "YZFR6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4664", + "label": "MD150T", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4665", + "label": "MD250T", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4666", + "label": "MD50QT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4667", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4668", + "label": "DIRT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4669", + "label": "DS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4670", + "label": "FX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4671", + "label": "MXD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4672", + "label": "S", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4673", + "label": "SR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4674", + "label": "STREET", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4675", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4676", + "label": "X", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4677", + "label": "XD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4678", + "label": "XU", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4679", + "label": "ZS125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4680", + "label": "ZS125ST", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4681", + "label": "ZS150", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4682", + "label": "ZS200GY-A", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4683", + "label": "ZS250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4684", + "label": "ZS250-5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4685", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4686", + "label": "RENEGADE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4687", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4688", + "label": "8C COMPETIZIONE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4689", + "label": "GIULIA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4690", + "label": "STELVIO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4691", + "label": "DB11", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4692", + "label": "ASUNA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4693", + "label": "SUNRUNNER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4694", + "label": "S3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4695", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4696", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4697", + "label": "BENTAYGA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4698", + "label": "340", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4699", + "label": "230I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4700", + "label": "230XI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4701", + "label": "330E", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4702", + "label": "430I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4703", + "label": "430XI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4704", + "label": "440I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4705", + "label": "440XI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4706", + "label": "530E", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4707", + "label": "530XE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4708", + "label": "ALPINA B6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4709", + "label": "C EVOLUTION", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4710", + "label": "G310", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4711", + "label": "M2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4712", + "label": "M240I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4713", + "label": "M240XI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4714", + "label": "M550XI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4715", + "label": "M760", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4716", + "label": "CASCADA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4717", + "label": "ENVISION", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4718", + "label": "REGAL TOURX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4719", + "label": "ATS-V", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4720", + "label": "CT6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4721", + "label": "XT5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4722", + "label": "GRAN CANYON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4723", + "label": "DEFENDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4724", + "label": "DEFENDER MAX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4725", + "label": "DEFENDER XT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4726", + "label": "MAVERICK X3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4727", + "label": "MAVERICK X3 MAX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4728", + "label": "OUTLANDER 6X6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4729", + "label": "OUTLANDER L", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4730", + "label": "OUTLANDER L MAX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4731", + "label": "CT680", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4732", + "label": "CT681", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4733", + "label": "3500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4734", + "label": "4500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4735", + "label": "3500HD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4736", + "label": "4500HD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4737", + "label": "4500XD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4738", + "label": "5500HD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4739", + "label": "5500XD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4740", + "label": "6500XD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4741", + "label": "BOLT EV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4742", + "label": "CRUZE LIMITED", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4743", + "label": "EQUINOX LIMITED", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4744", + "label": "MALIBU LIMITED", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4745", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4746", + "label": "COE2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4747", + "label": "LDT2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4748", + "label": "LET2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4749", + "label": "LET2 CC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4750", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4751", + "label": "SCRAMBLER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4752", + "label": "SUPERLEGGERA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4753", + "label": "XDIAVEL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4754", + "label": "407", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4755", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4756", + "label": "CINDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4757", + "label": "COMM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4758", + "label": "CUSTOM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4759", + "label": "EMBER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4760", + "label": "IGNITER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4761", + "label": "INFERNO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4762", + "label": "INTRUDER 2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4763", + "label": "MVP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4764", + "label": "ULTRA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4765", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4766", + "label": "488 GTB", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4767", + "label": "488 SPIDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4768", + "label": "812 SUPERFAST", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4769", + "label": "CALIFORNIA T", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4770", + "label": "F12 BERLINETTA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4771", + "label": "F12TDF", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4772", + "label": "F60 AMERICA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4773", + "label": "GTC4 LUSSO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4774", + "label": "124 SPIDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4775", + "label": "500X", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4776", + "label": "CASCADIA 116", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4777", + "label": "CASCADIA 126", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4778", + "label": "G80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4779", + "label": "G90", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4780", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4781", + "label": "HOOLIGAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4782", + "label": "ACADIA LIMITED", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4783", + "label": "FLDE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4784", + "label": "FLFB", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4785", + "label": "FLFBS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4786", + "label": "FLHC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4787", + "label": "FLHCS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4788", + "label": "FLHRXS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4789", + "label": "FLSB", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4790", + "label": "FLSL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4791", + "label": "FLSS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4792", + "label": "FLSTFBS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4793", + "label": "FXBB", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4794", + "label": "FXBR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4795", + "label": "FXBRS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4796", + "label": "FXDLS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4797", + "label": "FXFB", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4798", + "label": "FXFBS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4799", + "label": "FXSE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4800", + "label": "XG750A", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4801", + "label": "CLARITY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4802", + "label": "CMX300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4803", + "label": "CMX500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4804", + "label": "COTA 300RR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4805", + "label": "COTA 4RT260", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4806", + "label": "CRF1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4807", + "label": "HR-V", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4808", + "label": "MRT260", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4809", + "label": "NC700XD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4810", + "label": "NC750JD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4811", + "label": "NC750X", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4812", + "label": "NCW50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4813", + "label": "RC1000VS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4814", + "label": "SXS1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4815", + "label": "SXS500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4816", + "label": "SXS700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4817", + "label": "701ENDURO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4818", + "label": "FC350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4819", + "label": "FE450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4820", + "label": "FX350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4821", + "label": "FX450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4822", + "label": "SUPERMOTO701", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4823", + "label": "TC50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4824", + "label": "TE125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4825", + "label": "TE150", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4826", + "label": "TX300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4827", + "label": "GD250R", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4828", + "label": "IONIQ", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4829", + "label": "ROADMASTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4830", + "label": "SPIRIT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4831", + "label": "SPRINGFIELD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4832", + "label": "QX30", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4833", + "label": "HX515", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4834", + "label": "HX520", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4835", + "label": "HX615", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4836", + "label": "HX620", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4837", + "label": "LT625", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4838", + "label": "RH613", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4839", + "label": "NPR HD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4840", + "label": "NPR XD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4841", + "label": "F-PACE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4842", + "label": "XE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4843", + "label": "XJRL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4844", + "label": "XJSC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4845", + "label": "HEALEY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4846", + "label": "INTERCEPTOR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4847", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4848", + "label": "OTTAWA T2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4849", + "label": "BR125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4850", + "label": "EN650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4851", + "label": "KAF1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4852", + "label": "KLE300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4853", + "label": "KLZ1000A", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4854", + "label": "KX252", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4855", + "label": "LE300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4856", + "label": "LZ1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4857", + "label": "ZR800", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4858", + "label": "ZR900", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4859", + "label": "T880", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4860", + "label": "NIRO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4861", + "label": "KF3200C", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4862", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4863", + "label": "390", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4864", + "label": "1090", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4865", + "label": "FREERIDE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4866", + "label": "RC 390", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4867", + "label": "RC 390 CUP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4868", + "label": "K-PIPE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4869", + "label": "MYROAD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4870", + "label": "DISCOVERY SPORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4871", + "label": "RANGE ROVER VELAR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4872", + "label": "GS-F", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4873", + "label": "LC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4874", + "label": "LFA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4875", + "label": "RC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4876", + "label": "RC-F", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4877", + "label": "F4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4878", + "label": "T3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4879", + "label": "ANTHEM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4880", + "label": "LEVANTE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4881", + "label": "CX-3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4882", + "label": "570GT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4883", + "label": "570S", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4884", + "label": "675LT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4885", + "label": "720S", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4886", + "label": "AMG GT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4887", + "label": "GLC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4888", + "label": "GLC COUPE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4889", + "label": "GLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4890", + "label": "GLE COUPE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4891", + "label": "GLS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4892", + "label": "METRIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4893", + "label": "SLC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4894", + "label": "RVR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4895", + "label": "AUDACE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4896", + "label": "ELDORADO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4897", + "label": "MGX 21", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4898", + "label": "NEVADA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4899", + "label": "V7", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4900", + "label": "V7 III", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4901", + "label": "V7 LL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4902", + "label": "V9", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4903", + "label": "ADVANCED", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4904", + "label": "JETLINER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4905", + "label": "SKYLINER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4906", + "label": "SPACELINER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4907", + "label": "MIDI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4908", + "label": "XCELSIOR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4909", + "label": "ROGUE SPORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4910", + "label": "TITAN XD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4911", + "label": "520", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4912", + "label": "ACE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4913", + "label": "GENERAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4914", + "label": "RZR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4915", + "label": "SLINGSHOT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4916", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4917", + "label": "PROMASTER CITY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4918", + "label": "LECAR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4919", + "label": "DAWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4920", + "label": "BULLET", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4921", + "label": "CONTINENTAL GT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4922", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4923", + "label": "CITIGO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4924", + "label": "FABIA III", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4925", + "label": "KODIAQ", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4926", + "label": "OCTAVIA III", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4927", + "label": "PRAKTIK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4928", + "label": "RAPID", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4929", + "label": "ROOMSTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4930", + "label": "SUPERB III", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4931", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4932", + "label": "YETI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4933", + "label": "CROSSTREK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4934", + "label": "GSF1250SA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4935", + "label": "GSX250R", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4936", + "label": "GSX-S1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4937", + "label": "GSX-S1000A", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4938", + "label": "GSX-S1000F", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4939", + "label": "GSX-S750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4940", + "label": "RV200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4941", + "label": "FIDDLE III", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4942", + "label": "SCOOTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4943", + "label": "TS30", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4944", + "label": "TS35", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4945", + "label": "TS45", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4946", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4947", + "label": "MODEL 3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4948", + "label": "MODEL X", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4949", + "label": "86", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4950", + "label": "C-HR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4951", + "label": "COROLLA IM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4952", + "label": "MIRAI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4953", + "label": "PRIUS PRIME", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4954", + "label": "RAV4 HV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4955", + "label": "SCION FR-S", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4956", + "label": "SCION IA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4957", + "label": "SCION IM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4958", + "label": "YARIS IA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4959", + "label": "DAYTONA 675R", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4960", + "label": "EXPLORER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4961", + "label": "STREET CUP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4962", + "label": "STREET SCRAMBLER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4963", + "label": "STREET TWIN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4964", + "label": "COMMUTER COACH CX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4965", + "label": "TDX DOUBLE DECK COACH", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4966", + "label": "946", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4967", + "label": "PRIMAVERA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4968", + "label": "SPRINT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4969", + "label": "EMPULSE TT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4970", + "label": "MAGNUM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4971", + "label": "NESS MAGNUM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4972", + "label": "OCTANE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4973", + "label": "ATLAS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4974", + "label": "E-GOLF", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4975", + "label": "GOLF ALLTRACK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4976", + "label": "GOLF SPORTWAGEN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4977", + "label": "S60 CROSS COUNTRY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4978", + "label": "V60 CROSS COUNTRY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4979", + "label": "V90 CROSS COUNTRY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4980", + "label": "VNR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4981", + "label": "5700 XE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4982", + "label": "FJ09", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4983", + "label": "FZ07A", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4984", + "label": "FZ10", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4985", + "label": "SCR950", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4986", + "label": "XC155", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4987", + "label": "XSR900", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4988", + "label": "XT1200ZE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4989", + "label": "YFZ50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4990", + "label": "YXC700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4991", + "label": "YXE700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4992", + "label": "YXZ1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4993", + "label": "YZFR1S", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4994", + "label": "YZFR3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4995", + "label": "SCOOTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4996", + "label": "DSR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4997", + "label": "FXP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4998", + "label": "FXS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "4999", + "label": "MX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5000", + "label": "X2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5001", + "label": "CHIRON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5002", + "label": "MAVERICK TRAIL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5003", + "label": "PANIGALE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5004", + "label": "GTC4 LUSSO T", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5005", + "label": "KONA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5006", + "label": "E-PACE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5007", + "label": "REVERO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5008", + "label": "STINGER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5009", + "label": "SPADE 150", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5010", + "label": "B1", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5011", + "label": "CZD300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5012", + "label": "XSR700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5013", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5014", + "label": "YXF850", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5015", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5016", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5017", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5018", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5019", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5021", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5022", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5023", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5024", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5025", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5026", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5027", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5028", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5029", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5030", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5031", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5032", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5033", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5034", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5035", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5036", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5037", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5038", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5039", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5040", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5041", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5042", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5043", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5044", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5045", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5046", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5047", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5048", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5049", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5050", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5051", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5052", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5053", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5054", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5055", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5056", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5057", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5058", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5059", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5060", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5061", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5062", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5063", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5064", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5065", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5066", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5067", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5068", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5069", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5070", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5071", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5072", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5073", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5074", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5075", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5076", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5077", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5078", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5079", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5080", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5081", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5082", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5083", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5084", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5085", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5086", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5087", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5088", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5089", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5090", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5091", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5092", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5093", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5094", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5095", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5096", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5097", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5098", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5099", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5100", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5101", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5102", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5103", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5104", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5105", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5106", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5107", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5108", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5109", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5110", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5111", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5112", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5113", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5114", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5115", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5116", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5117", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5118", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5119", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5120", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5121", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5122", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5123", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5124", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5125", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5126", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5127", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5128", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5129", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5130", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5131", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5132", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5133", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5134", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5135", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5136", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5137", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5138", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5139", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5140", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5141", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5142", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5143", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5144", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5145", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5146", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5147", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5148", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5149", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5150", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5151", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5152", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5153", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5154", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5155", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5156", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5157", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5158", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5159", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5160", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5161", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5162", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5163", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5164", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5165", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5166", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5167", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5168", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5169", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5170", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5171", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5172", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5173", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5174", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5175", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5176", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5177", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5178", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5179", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5180", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5181", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5182", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5183", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5184", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5185", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5186", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5187", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5188", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5189", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5190", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5191", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5192", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5193", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5194", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5195", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5196", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5197", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5198", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5199", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5200", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5201", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5202", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5203", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5204", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5205", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5206", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5207", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5208", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5209", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5210", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5211", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5212", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5213", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5214", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5215", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5216", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5217", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5218", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5219", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5220", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5221", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5222", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5223", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5224", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5225", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5226", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5227", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5228", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5229", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5230", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5231", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5232", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5233", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5234", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5235", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5236", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5237", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5238", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5239", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5240", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5241", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5242", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5243", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5244", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5245", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5246", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5247", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5248", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5249", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5250", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5251", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5252", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5253", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5254", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5255", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5256", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5257", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5258", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5259", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5260", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5261", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5262", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5263", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5264", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5265", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5266", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5267", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5268", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5269", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5270", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5271", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5272", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5273", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5274", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5275", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5276", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5277", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5278", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5279", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5280", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5281", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5282", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5283", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5284", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5285", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5286", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5287", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5288", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5289", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5290", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5291", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5292", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5293", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5294", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5295", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5296", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5297", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5298", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5299", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5300", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5301", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5302", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5303", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5304", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5305", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5306", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5307", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5308", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5309", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5310", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5311", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5312", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5313", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5314", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5315", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5316", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5317", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5318", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5319", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5320", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5321", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5322", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5323", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5324", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5325", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5326", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5327", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5328", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5329", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5330", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5331", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5332", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5333", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5334", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5335", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5336", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5337", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5338", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5339", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5340", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5341", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5342", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5343", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5344", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5345", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5346", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5347", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5348", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5349", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5350", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5351", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5352", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5353", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5354", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5355", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5356", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5357", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5358", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5359", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5360", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5361", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5362", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5363", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5364", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5365", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5366", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5367", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5368", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5369", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5370", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5371", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5372", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5373", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5374", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5375", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5376", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5377", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5378", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5379", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5380", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5381", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5382", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5383", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5384", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5385", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5386", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5387", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5388", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5389", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5390", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5391", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5392", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5393", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5394", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5395", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5396", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5397", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5398", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5399", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5400", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5401", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5402", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5403", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5404", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5405", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5406", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5407", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5408", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5409", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5410", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5411", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5412", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5413", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5414", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5415", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5416", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5417", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5418", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5419", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5420", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5421", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5422", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5423", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5424", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5425", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5426", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5427", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5428", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5429", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5430", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5431", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5432", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5433", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5434", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5435", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5436", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5437", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5438", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5439", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5440", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5441", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5442", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5443", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5444", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5445", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5446", + "label": "RS3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5447", + "label": "540XD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5448", + "label": "ACTIVEHYBRID 7", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5449", + "label": "TRANSIT BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5450", + "label": "TRANSIT BUS 30FT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5451", + "label": "TRANSIT BUS 35FT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5452", + "label": "TRANSIT BUS 40FT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5453", + "label": "TRANSIT BUS 60FT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5454", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5455", + "label": "XT4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5456", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5457", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5458", + "label": "SILVERADO LD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5459", + "label": "TC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5460", + "label": "C3100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5461", + "label": "G70", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5462", + "label": "SIERRA LIMITED", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5463", + "label": "CBF300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5464", + "label": "NC750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5465", + "label": "SVARTPILEN 401", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5466", + "label": "SANTA FE XL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5467", + "label": "MV607", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5468", + "label": "I-PACE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5469", + "label": "EX400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5470", + "label": "ZX1002", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5471", + "label": "URUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5472", + "label": "GRANITE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5473", + "label": "LR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5474", + "label": "PINNACLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5475", + "label": "TERRAPRO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5476", + "label": "ECLIPSE CROSS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5477", + "label": "KICKS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5478", + "label": "TRANSIT BUS 35FT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5479", + "label": "TRANSIT BUS 40FT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5480", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5481", + "label": "CLASSIC CRUISER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5482", + "label": "TIGUAN LIMITED", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5483", + "label": "VAH", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5484", + "label": "XC40", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5485", + "label": "MT07", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5486", + "label": "MT09", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5487", + "label": "MT10", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5488", + "label": "MTT09", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5489", + "label": "YZ65", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5490", + "label": "YZFR1M", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5491", + "label": "VANTAGE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5492", + "label": "M850XI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5493", + "label": "T-REX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5494", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5495", + "label": "E6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5496", + "label": "EBUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5497", + "label": "ELECTRIC TRUCK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5498", + "label": "MAVERICK SPORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5499", + "label": "GTC 4 LUSSO T", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5500", + "label": "PORTOFINO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5501", + "label": "C-MAX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5502", + "label": "FIGO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5503", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5504", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5505", + "label": "TRANSIT BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5506", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5507", + "label": "FXDRS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5508", + "label": "C125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5509", + "label": "Z125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5510", + "label": "NEXO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5511", + "label": "VELOSTER N", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5512", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5513", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5514", + "label": "HV507", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5515", + "label": "HV513", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5516", + "label": "HV607", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5517", + "label": "HV613", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5518", + "label": "KAF700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5519", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5520", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5521", + "label": "T680", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5522", + "label": "NIRO EV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5523", + "label": "X-TOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5524", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5525", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5526", + "label": "UX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5527", + "label": "NAUTILUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5528", + "label": "STRADALE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5529", + "label": "TURISMO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5530", + "label": "E350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5531", + "label": "A", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5532", + "label": "ECANTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5533", + "label": "1500 CLASSIC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5534", + "label": "HIMALAYAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5535", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5536", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5537", + "label": "ASCENT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5538", + "label": "DR-Z50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5539", + "label": "CHAMP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5540", + "label": "STAR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5541", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5543", + "label": "MXT9", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5544", + "label": "YXE850", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5545", + "label": "DBX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5546", + "label": "A6 ALLROAD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5547", + "label": "E-TRON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5548", + "label": "Q5 E", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5549", + "label": "Q8", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5550", + "label": "RS Q8", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5551", + "label": "SQ7", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5552", + "label": "SQ8", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5553", + "label": "DC-64", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5554", + "label": "228XI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5555", + "label": "330I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5556", + "label": "330XE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5557", + "label": "330XI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5558", + "label": "340XI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5559", + "label": "745XE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5560", + "label": "840I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5561", + "label": "840XI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5562", + "label": "C400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5563", + "label": "F750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5564", + "label": "F850", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5565", + "label": "M340I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5566", + "label": "M340XI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5567", + "label": "M8", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5568", + "label": "R1250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5569", + "label": "X7", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5570", + "label": "ENCORE GX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5571", + "label": "CT4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5572", + "label": "CT4-V", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5573", + "label": "CT5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5574", + "label": "CT5-V", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5575", + "label": "CT6-V", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5576", + "label": "XT6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5577", + "label": "MAVERICK SPORT MAX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5578", + "label": "RYKER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5579", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5580", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5581", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5582", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5583", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5584", + "label": "V8100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5585", + "label": "SILVERADO MEDIUM DUTY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5586", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5587", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5588", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5589", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5590", + "label": "488 PISTA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5591", + "label": "488 PISTA SPIDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5592", + "label": "F8 TRIBUTO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5593", + "label": "E250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5594", + "label": "122SD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5595", + "label": "CORONADO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5596", + "label": "ECONIC SD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5597", + "label": "GV80", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5598", + "label": "VENTURE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5599", + "label": "ELW", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5600", + "label": "FLFBSANV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5601", + "label": "FLHTCUTGSE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5602", + "label": "FLTRK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5603", + "label": "FXLRS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5604", + "label": "HINO 258", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5605", + "label": "ADV150", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5606", + "label": "CRF1100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5607", + "label": "MRT300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5608", + "label": "TRX520", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5609", + "label": "SVARTPILEN 701", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5610", + "label": "TE150I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5611", + "label": "TE300I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5612", + "label": "TX300I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5613", + "label": "VITPILEN 401", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5614", + "label": "VITPILEN 701", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5615", + "label": "PALISADE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5616", + "label": "VENUE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5617", + "label": "TC COMMERCIAL BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5618", + "label": "CHALLENGER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5619", + "label": "FTR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5620", + "label": "CV515", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5621", + "label": "LF687", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5622", + "label": "PB105", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5623", + "label": "GLADIATOR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5624", + "label": "T2E", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5625", + "label": "EJ800", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5626", + "label": "ER400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5627", + "label": "KLX230", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5628", + "label": "KLZ1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5629", + "label": "KRF1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5630", + "label": "SELTOS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5631", + "label": "TELLURIDE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5632", + "label": "THOR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5633", + "label": "790", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5634", + "label": "CORSAIR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5635", + "label": "LION C V1", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5636", + "label": "LION C V2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5637", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5638", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5639", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5640", + "label": "CX-30", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5641", + "label": "540C", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5642", + "label": "600LT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5643", + "label": "GT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5644", + "label": "SENNA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5645", + "label": "SENNA GTR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5646", + "label": "GLB 250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5647", + "label": "M", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5648", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5649", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5650", + "label": "PRO XD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5651", + "label": "1", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5652", + "label": "2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5653", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5654", + "label": "TAYCAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5655", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5656", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5657", + "label": "CULLINAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5658", + "label": "GLIDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5659", + "label": "MUNICIPAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5660", + "label": "RIV FIRE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5661", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5662", + "label": "INT 650", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5663", + "label": "DL1050", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5664", + "label": "GSX-S 1000SM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5665", + "label": "MODEL Y", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5666", + "label": "CLASS A", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5667", + "label": "CLASS B", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5668", + "label": "CLASS C", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5669", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5670", + "label": "RAV4 PRIME", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5671", + "label": "ROCKET 3", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5672", + "label": "SPEED TWIN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5673", + "label": "ARTEON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5674", + "label": "ATLAS CROSS SPORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5675", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5676", + "label": "VNL300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5677", + "label": "VNL400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5678", + "label": "VNL740", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5679", + "label": "VNL760", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5680", + "label": "VNL860", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5681", + "label": "SV01", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5682", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5683", + "label": "SR/F", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5684", + "label": "SR/S", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5685", + "label": "F900", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5686", + "label": "M440XI", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5687", + "label": "R18", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5688", + "label": "812 GTS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5689", + "label": "F164 BCB", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5690", + "label": "F8 SPIDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5691", + "label": "ROMA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5692", + "label": "SF 90 STRADALE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5693", + "label": "MUSTANG MACH-E", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5694", + "label": "CT125", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5695", + "label": "EE5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5696", + "label": "FS450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5697", + "label": "K5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5698", + "label": "890", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5699", + "label": "SX-E 5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5700", + "label": "620R", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5701", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5702", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5703", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5704", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5705", + "label": "ALLEGRO BAY", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5706", + "label": "ALLEGRO BUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5707", + "label": "BREEZE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5708", + "label": "PHAETON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5709", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5710", + "label": "WAYFARER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5711", + "label": "ZEPHYR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5712", + "label": "MT03", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5713", + "label": "XTZ700", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5714", + "label": "USPS MAIL TRUCK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5715", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5716", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5717", + "label": "E-TRON GT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5718", + "label": "RS E-TRON GT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5719", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5720", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5721", + "label": "ALPINA B8", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5722", + "label": "M 1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5723", + "label": "M440I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5724", + "label": "BOLT EUV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5725", + "label": "GRAND CARAVAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5726", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5727", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5728", + "label": "BRONCO SPORT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5729", + "label": "GV70", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5730", + "label": "BRIO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5731", + "label": "URBANO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5732", + "label": "ELECTRIC", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5733", + "label": "HIGH SIDE DUMP", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5734", + "label": "HYBRID", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5735", + "label": "MECHANICAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5736", + "label": "RUNWAY SUCTION", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5737", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5738", + "label": "FLH", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5739", + "label": "FXBBS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5740", + "label": "LW1", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5741", + "label": "RA1250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5742", + "label": "RH1250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5743", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5744", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5745", + "label": "CMX1100", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5746", + "label": "CRF300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5747", + "label": "SXS520", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5748", + "label": "IONIQ 5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5749", + "label": "SANTA CRUZ", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5750", + "label": "SUPER CHIEF", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5751", + "label": "QX55", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5752", + "label": "GS-6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5753", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5754", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5755", + "label": "KAT620", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5756", + "label": "KAT820", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5757", + "label": "KDF1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5758", + "label": "KDT1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5759", + "label": "CARNIVAL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5760", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5761", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5762", + "label": "AK", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5763", + "label": "NOT APPLICABLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5764", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5765", + "label": "AIR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5766", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5767", + "label": "RIVALE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5768", + "label": "MD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5769", + "label": "MC20", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5770", + "label": "MX-30", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5771", + "label": "SPEEDTAIL", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5772", + "label": "GLB", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5773", + "label": "D4000/D4500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5774", + "label": "R1T", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5775", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5776", + "label": "BULLET 350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5777", + "label": "CLASSIC 350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5778", + "label": "METEOR 350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5779", + "label": "TRIDENT 600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5780", + "label": "TRIDENT 660", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5781", + "label": "ID.4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5782", + "label": "TAOS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5783", + "label": "NEW 4900 CHASSIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5784", + "label": "MXT850", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5785", + "label": "YXE1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5786", + "label": "YZFR7", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5787", + "label": "10 SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5788", + "label": "12 SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5789", + "label": "14 SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5790", + "label": "15 SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5791", + "label": "2 SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5792", + "label": "3 SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5793", + "label": "5 SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5794", + "label": "6 SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5795", + "label": "ENVIRO 200", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5796", + "label": "ENVIRO 400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5797", + "label": "ENVIRO 500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5798", + "label": "ENVIRO 500 SUPERFLO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5799", + "label": "ENVIRO 500EV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5800", + "label": "TONALE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5801", + "label": "TUAREG", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5802", + "label": "TUONO V4", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5803", + "label": "ALTERRA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5804", + "label": "PROWLER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5805", + "label": "PROWLER PRO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5806", + "label": "WILDCAT XX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5807", + "label": "E-TRON S", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5808", + "label": "Q4 E-TRON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5809", + "label": "Q8 E-TRON", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5810", + "label": "BATTISTA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5811", + "label": "CE 04", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5812", + "label": "F 750", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5813", + "label": "F 850", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5814", + "label": "F 900", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5815", + "label": "I4 EDRIVE35", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5816", + "label": "I4 EDRIVE40", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5817", + "label": "I4 M50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5818", + "label": "I7", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5819", + "label": "IX", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5820", + "label": "R 1250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5821", + "label": "XM", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5822", + "label": "EV600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5823", + "label": "ZEVO 600", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5824", + "label": "ESCALADE V", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5825", + "label": "LYRIQ", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5826", + "label": "P", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5827", + "label": "7500XD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5828", + "label": "SILVERADO LTD", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5829", + "label": "AG", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5830", + "label": "CRUISE AV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5831", + "label": "ELITE NAS1", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5832", + "label": "HORNET", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5833", + "label": "DESERT X", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5836", + "label": "SOLO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5837", + "label": "EGO", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5838", + "label": "EVA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5839", + "label": "EVA ESSEESSE9", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5840", + "label": "EVA RIBELLE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5841", + "label": "EXPERIA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5842", + "label": "FIRE APPARATUS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5843", + "label": "296GTB", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5844", + "label": "812 COMPETIZIONE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5845", + "label": "PORTOFINO M", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5846", + "label": "SF 90 SPIDER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5847", + "label": "OCEAN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5849", + "label": "ECASCADIA 116", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5850", + "label": "GV60", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5851", + "label": "HUMMER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5852", + "label": "EV250", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5853", + "label": "EV350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5854", + "label": "EVC210", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5855", + "label": "EVS300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5857", + "label": "FLHCSANV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5859", + "label": "FLHTCUTGANV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5860", + "label": "FLHTKANV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5861", + "label": "FLHXSANV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5862", + "label": "FLHXST", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5863", + "label": "FLTRKSE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5864", + "label": "FLTRT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5865", + "label": "FLTRXSANV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5866", + "label": "FLTRXSEANV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5867", + "label": "FLTRXST", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5868", + "label": "FLXRS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5869", + "label": "FLXRST", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5870", + "label": "FXRST", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5871", + "label": "RH975", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5872", + "label": "S41/S42", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5873", + "label": "NVA110", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5878", + "label": "XR150L", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5879", + "label": "EE 5", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5880", + "label": "FC 350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5881", + "label": "FS 450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5882", + "label": "FX 350", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5883", + "label": "FX 450", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5884", + "label": "NORDEN 901", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5885", + "label": "SUPERMOTO 701", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5886", + "label": "TC 50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5887", + "label": "TE 150I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5888", + "label": "TE 300I", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5889", + "label": "TX 300", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5890", + "label": "VITPILEN 401/SVARTPILEN 401", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5891", + "label": "KONA N", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5892", + "label": "PURSUIT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5894", + "label": "MV60E", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5895", + "label": "GAMA I6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5896", + "label": "KRF 1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5897", + "label": "KRT1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5898", + "label": "KX112", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5900", + "label": "ZX400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5901", + "label": "EV6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5903", + "label": "144", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5905", + "label": "LION 8", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5906", + "label": "LION C V1", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5907", + "label": "LION C V2", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5908", + "label": "LION M", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5909", + "label": "LION6", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5910", + "label": "LW1", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5911", + "label": "ENDURANCE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5912", + "label": "DRAGSTER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5913", + "label": "SUPERVELOCE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5914", + "label": "GRECALE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5915", + "label": "CX-50", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5916", + "label": "CX-90", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5917", + "label": "765LT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5918", + "label": "ARTURA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5919", + "label": "ELVA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5920", + "label": "EQB", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5921", + "label": "EQE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5922", + "label": "EQS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5923", + "label": "V85 TT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5924", + "label": "D4020/D4520", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5925", + "label": "D40CRT/D45CRT", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5926", + "label": "J3500/J4500", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5927", + "label": "ARIYA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5929", + "label": "Z", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5930", + "label": "TERMINAL TRACTOR", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5931", + "label": "536", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5932", + "label": "537", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5933", + "label": "548", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5934", + "label": "EDV", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5935", + "label": "R1S", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5936", + "label": "TRAIL-BREAKER", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5939", + "label": "SOLTERRA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5940", + "label": "DL800DE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5941", + "label": "GSX1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5942", + "label": "GSX800", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5943", + "label": "LT-F400", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5944", + "label": "D", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5945", + "label": "BZ4X", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5946", + "label": "COROLLA CROSS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5947", + "label": "GR 86", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5948", + "label": "GR COROLLA", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5949", + "label": "VF 8", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5950", + "label": "VF 9", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5952", + "label": "C40", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5954", + "label": "47X CHASSIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5955", + "label": "49X CHASSIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5956", + "label": "57X CHASSIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5957", + "label": "NEW 4700 CHASSIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5958", + "label": "NEW 57X CHASSIS", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5959", + "label": "SA01", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5960", + "label": "MT-03", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5961", + "label": "MTM690", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5962", + "label": "MTM890", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5963", + "label": "MTN1000", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5964", + "label": "XTZ690", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5965", + "label": "13 SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5966", + "label": "7 SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5967", + "label": "8 SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5968", + "label": "9 SERIES", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "5969", + "label": "FXE", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "9995", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "9996", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "9997", + "label": "UNKNOWN", + "source": "cris", + "table_name": "veh_mod_lkp" + }, + { + "id": "9998", + "label": "OTHER (EXPLAIN IN NARRATIVE)", + "source": "cris", + "table_name": "veh_mod_lkp" + } +] \ No newline at end of file diff --git a/atd-toolbox/data_model/python/populate_edits_sql/crashes.sql b/atd-toolbox/data_model/python/populate_edits_sql/crashes.sql new file mode 100644 index 000000000..0f8835676 --- /dev/null +++ b/atd-toolbox/data_model/python/populate_edits_sql/crashes.sql @@ -0,0 +1,127 @@ +set client_min_messages to warning; + +create materialized view crash_diffs as with joined_crashes as ( + select + crash_edit.crash_id, + crash_edit.longitude_primary ::decimal as longitude_edit, + crash_edit.latitude_primary ::decimal as latitude_edit, + crash_edit.city_id as rpt_city_id_edit, + crash_edit.crash_speed_limit as crash_speed_limit_edit, + crash_edit.traffic_cntl_id as traffic_cntl_id_edit, + crash_edit.private_dr_fl ::bool as private_dr_fl_edit, + crash_edit.road_constr_zone_fl ::bool as road_constr_zone_fl_edit, + crash_edit.case_id as case_id_edit, + crash_edit.intrsct_relat_id as intrsct_relat_id_edit, + crash_edit.law_enforcement_num as law_enforcement_ytd_fatality_num_edit, + crash_unified.longitude as longitude_unified, + crash_unified.latitude as latitude_unified, + crash_unified.rpt_city_id as rpt_city_id_unified, + crash_unified.crash_speed_limit as crash_speed_limit_unified, + crash_unified.traffic_cntl_id as traffic_cntl_id_unified, + crash_unified.private_dr_fl as private_dr_fl_unified, + crash_unified.road_constr_zone_fl as road_constr_zone_fl_unified, + crash_unified.case_id as case_id_unified, + crash_unified.intrsct_relat_id as intrsct_relat_id_unified, + crash_unified.law_enforcement_ytd_fatality_num as law_enforcement_ytd_fatality_num_unified, + crash_unified.id + from + crashes as crash_unified + left join atd_txdot_crashes as crash_edit on crash_unified.cris_crash_id = crash_edit.crash_id +), +computed_diffs as ( + select + crash.id, + crash.crash_id, + case when crash.longitude_edit is distinct from crash.longitude_unified + and longitude_edit is not null then + crash.longitude_edit + end as longitude, + case when crash.latitude_edit is distinct from crash.latitude_unified + and latitude_edit is not null then + crash.latitude_edit + end as latitude, + case when crash.rpt_city_id_edit is distinct from crash.rpt_city_id_unified + and rpt_city_id_edit is not null then + crash.rpt_city_id_edit + end as rpt_city_id, + case when crash.crash_speed_limit_edit is distinct from crash.crash_speed_limit_unified + and crash_speed_limit_edit is not null then + crash.crash_speed_limit_edit + end as crash_speed_limit, + case when crash.traffic_cntl_id_edit is distinct from crash.traffic_cntl_id_unified + and traffic_cntl_id_edit is not null then + crash.traffic_cntl_id_edit + end as traffic_cntl_id, + case when crash.private_dr_fl_edit is distinct from crash.private_dr_fl_unified + and private_dr_fl_edit is not null then + crash.private_dr_fl_edit + end as private_dr_fl, + case when crash.road_constr_zone_fl_edit is distinct from crash.road_constr_zone_fl_unified + and road_constr_zone_fl_edit is not null then + crash.road_constr_zone_fl_edit + end as road_constr_zone_fl, + case when crash.case_id_edit is distinct from crash.case_id_unified + and case_id_edit is not null then + crash.case_id_edit + end as case_id, + case when crash.intrsct_relat_id_edit is distinct from crash.intrsct_relat_id_unified + and intrsct_relat_id_edit is not null then + crash.intrsct_relat_id_edit + end as intrsct_relat_id, + case when crash.law_enforcement_ytd_fatality_num_edit is distinct from crash.law_enforcement_ytd_fatality_num_unified + and law_enforcement_ytd_fatality_num_edit is not null then + crash.law_enforcement_ytd_fatality_num_edit + end as law_enforcement_ytd_fatality_num + from + joined_crashes as crash +) +select + * +from + computed_diffs +where + longitude is not null + or latitude is not null + or rpt_city_id is not null + or crash_speed_limit is not null + or traffic_cntl_id is not null + or private_dr_fl is not null + or road_constr_zone_fl is not null + or case_id is not null + or intrsct_relat_id is not null + or law_enforcement_ytd_fatality_num is not null +order by + id asc; + +update + crashes_edits +set + longitude = crash_updates.longitude, + latitude = crash_updates.latitude, + rpt_city_id = crash_updates.rpt_city_id, + crash_speed_limit = crash_updates.crash_speed_limit, + traffic_cntl_id = crash_updates.traffic_cntl_id, + private_dr_fl = crash_updates.private_dr_fl, + road_constr_zone_fl = crash_updates.road_constr_zone_fl, + case_id = crash_updates.case_id, + intrsct_relat_id = crash_updates.intrsct_relat_id, + law_enforcement_ytd_fatality_num = crash_updates.law_enforcement_ytd_fatality_num, + updated_by = 'legacy-vz-user' +from ( + select + * + from + crash_diffs) crash_updates +where + crashes_edits.id = crash_updates.id; + +-- validate differences have been resolved +refresh materialized view crash_diffs; + +select + count(*) +from + crash_diffs; + +-- tear down +drop materialized view crash_diffs; diff --git a/atd-toolbox/data_model/python/populate_edits_sql/people.sql b/atd-toolbox/data_model/python/populate_edits_sql/people.sql new file mode 100644 index 000000000..41bfcc63a --- /dev/null +++ b/atd-toolbox/data_model/python/populate_edits_sql/people.sql @@ -0,0 +1,193 @@ +set client_min_messages to warning; + +-- remove all names from old people tables for non-fatalities +-- this can take more than a minute per table +update atd_txdot_person set prsn_last_name = null, prsn_first_name = null, prsn_mid_name = null +where prsn_injry_sev_id != 4; +update atd_txdot_primaryperson set prsn_last_name = null, prsn_first_name = null, prsn_mid_name = null +where prsn_injry_sev_id != 4; + +-- double check if cris has the right data for this person records +update atd_txdot_primaryperson set prsn_injry_sev_id = 0 where prsn_injry_sev_id = 94; +update atd_txdot_person set prsn_injry_sev_id = 0 where prsn_injry_sev_id = 94; +update atd_txdot_primaryperson set prsn_ethnicity_id = 0 where prsn_ethnicity_id = 94; +update atd_txdot_person set prsn_ethnicity_id = 0 where prsn_ethnicity_id = 94; + + +-- create view of all people records which have been edited +create materialized view people_diffs as with unioned_people_edits as ( + select + crash_id as cris_crash_id, + unit_nbr, + prsn_nbr, + prsn_type_id, + prsn_occpnt_pos_id, + prsn_injry_sev_id, + prsn_age, + prsn_last_name, + prsn_first_name, + prsn_mid_name, + prsn_gndr_id, + prsn_ethnicity_id, + peh_fl as prsn_exp_homelessness + from + atd_txdot_primaryperson + union all + select + crash_id as cris_crash_id, + unit_nbr, + prsn_nbr, + prsn_type_id, + prsn_occpnt_pos_id, + prsn_injry_sev_id, + prsn_age, + prsn_last_name, + prsn_first_name, + prsn_mid_name, + prsn_gndr_id, + prsn_ethnicity_id, + peh_fl as prsn_exp_homelessness + from + atd_txdot_person +), +-- +-- join "old" people records to new records from cris, where each record is one row with a column for the old value and cris value +-- +joined_people as ( + select + people_unified.id, + people_edit.cris_crash_id, + units.unit_nbr, + people_unified.prsn_nbr, + people_edit.prsn_type_id as prsn_type_id_edit, + people_edit.prsn_occpnt_pos_id as prsn_occpnt_pos_id_edit, + people_edit.prsn_injry_sev_id as prsn_injry_sev_id_edit, + people_edit.prsn_age as prsn_age_edit, + people_edit.prsn_last_name as prsn_last_name_edit, + people_edit.prsn_first_name as prsn_first_name_edit, + people_edit.prsn_mid_name as prsn_mid_name_edit, + people_edit.prsn_gndr_id as prsn_gndr_id_edit, + people_edit.prsn_ethnicity_id as prsn_ethnicity_id_edit, + people_edit.prsn_exp_homelessness as prsn_exp_homelessness_edit, + people_unified.prsn_type_id as prsn_type_id_unified, + people_unified.prsn_occpnt_pos_id as prsn_occpnt_pos_id_unified, + people_unified.prsn_injry_sev_id as prsn_injry_sev_id_unified, + people_unified.prsn_age as prsn_age_unified, + people_unified.prsn_last_name as prsn_last_name_unified, + people_unified.prsn_first_name as prsn_first_name_unified, + people_unified.prsn_mid_name as prsn_mid_name_unified, + people_unified.prsn_gndr_id as prsn_gndr_id_unified, + people_unified.prsn_ethnicity_id as prsn_ethnicity_id_unified, + people_unified.prsn_exp_homelessness as prsn_exp_homelessness_unified + from + people as people_unified + left join units on people_unified.unit_id = units.id + left join crashes on crashes.id = units.crash_pk + left join unioned_people_edits as people_edit on crashes.cris_crash_id = people_edit.cris_crash_id + and units.unit_nbr = people_edit.unit_nbr + and people_unified.prsn_nbr = people_edit.prsn_nbr +), +-- +-- construct a table that looks a lot like people_edits, +-- where there is a value in each column if it's different from the cris value +-- +computed_diffs as ( + select + id, + cris_crash_id, + unit_nbr, + prsn_nbr, + case when prsn_type_id_edit is not null + and prsn_type_id_edit is distinct from prsn_type_id_unified then + prsn_type_id_edit + end as prsn_type_id, + case when prsn_occpnt_pos_id_edit is not null + and prsn_occpnt_pos_id_edit is distinct from prsn_occpnt_pos_id_unified then + prsn_occpnt_pos_id_edit + end as prsn_occpnt_pos_id, + case when prsn_injry_sev_id_edit is not null + and prsn_injry_sev_id_edit is distinct from prsn_injry_sev_id_unified then + prsn_injry_sev_id_edit + end as prsn_injry_sev_id, + case when prsn_age_edit is not null + and prsn_age_edit is distinct from prsn_age_unified then + prsn_age_edit + end as prsn_age, + case when prsn_last_name_edit is not null + and prsn_last_name_edit is distinct from prsn_last_name_unified then + prsn_last_name_edit + end as prsn_last_name, + case when prsn_first_name_edit is not null + and prsn_first_name_edit is distinct from prsn_first_name_unified then + prsn_first_name_edit + end as prsn_first_name, + case when prsn_mid_name_edit is not null + and prsn_mid_name_edit is distinct from prsn_mid_name_unified then + prsn_mid_name_edit + end as prsn_mid_name, + case when prsn_gndr_id_edit is not null + and prsn_gndr_id_edit is distinct from prsn_gndr_id_unified then + prsn_gndr_id_edit + end as prsn_gndr_id, + case when prsn_ethnicity_id_edit is not null + and prsn_ethnicity_id_edit is distinct from prsn_ethnicity_id_unified then + prsn_ethnicity_id_edit + end as prsn_ethnicity_id, + case when prsn_exp_homelessness_edit is not null + and prsn_exp_homelessness_edit is distinct from prsn_exp_homelessness_unified then + prsn_exp_homelessness_edit + end as prsn_exp_homelessness + from + joined_people +) +select + * +from + computed_diffs +where + prsn_type_id is not null + or prsn_occpnt_pos_id is not null + or prsn_injry_sev_id is not null + or prsn_age is not null + or prsn_last_name is not null + or prsn_first_name is not null + or prsn_mid_name is not null + or prsn_gndr_id is not null + or prsn_ethnicity_id is not null + or prsn_exp_homelessness is not null +order by + id asc; + +-- update records +update + people_edits pe +set + prsn_type_id = pd.prsn_type_id, + prsn_occpnt_pos_id = pd.prsn_occpnt_pos_id, + prsn_injry_sev_id = pd.prsn_injry_sev_id, + prsn_age = pd.prsn_age, + prsn_last_name = pd.prsn_last_name, + prsn_first_name = pd.prsn_first_name, + prsn_mid_name = pd.prsn_mid_name, + prsn_gndr_id = pd.prsn_gndr_id, + prsn_ethnicity_id = pd.prsn_ethnicity_id, + prsn_exp_homelessness = pd.prsn_exp_homelessness, + updated_by = 'legacy-vz-user' +from ( + select + * + from + people_diffs) as pd +where + pe.id = pd.id; + + +-- refresh da view +refresh materialized view people_diffs; + +-- see if there are remaining diffs, which is the result of dupe person records :/ +-- and there's nothing to be done about this :/ +select * from people_diffs; + +-- tear down +drop materialized view people_diffs; diff --git a/atd-toolbox/data_model/python/populate_edits_sql/units.sql b/atd-toolbox/data_model/python/populate_edits_sql/units.sql new file mode 100644 index 000000000..2b277f01f --- /dev/null +++ b/atd-toolbox/data_model/python/populate_edits_sql/units.sql @@ -0,0 +1,106 @@ +set client_min_messages to warning; + + +-- todo: double check if CRIS actually has the right data for this unit +update atd_txdot_units set unit_desc_id = 8 where unit_desc_id = 94; + +create materialized view unit_diffs as with joined_units as ( + select + unit_unified.id, + unit_unified.unit_nbr as unit_nbr, + unit_unified.crash_pk as crash_pk, + unit_unified.cris_crash_id as cris_crash_id, + unit_edit.travel_direction as veh_trvl_dir_id_edit, + unit_edit.movement_id as movement_id_edit, + unit_edit.unit_desc_id as unit_desc_id_edit, + unit_edit.veh_body_styl_id as veh_body_styl_id_edit, + unit_unified.veh_trvl_dir_id as veh_trvl_dir_id_unified, + unit_unified.movement_id as movement_id_unified, + unit_unified.unit_desc_id as unit_desc_id_unified, + unit_unified.veh_body_styl_id as veh_body_styl_id_unified + from + units as unit_unified + left join atd_txdot_units as unit_edit on + unit_unified.cris_crash_id = unit_edit.crash_id + and unit_unified.unit_nbr = unit_edit.unit_nbr +), + +computed_diffs as ( + select + id, + unit_nbr, + cris_crash_id, + crash_pk, + case + when + veh_trvl_dir_id_edit is distinct from veh_trvl_dir_id_unified + and veh_trvl_dir_id_edit is not null + then + veh_trvl_dir_id_edit + end as veh_trvl_dir_id, + case + when + movement_id_edit is distinct from movement_id_unified + and movement_id_edit is not null + -- importantly, this ignores where movement_id = 0 (UNKNOWN) in the old schema + -- since it's a default value we don't intend to carry forward + and movement_id_edit != 0 + then + movement_id_edit + end as movement_id, + case + when + unit_desc_id_edit is distinct from unit_desc_id_unified + and unit_desc_id_edit is not null + then + unit_desc_id_edit + end as unit_desc_id, + case + when + veh_body_styl_id_edit is distinct from veh_body_styl_id_unified + and veh_body_styl_id_edit is not null + then + veh_body_styl_id_edit + end as veh_body_styl_id + from + joined_units +) + +select * +from + computed_diffs +where + veh_trvl_dir_id is not null + or movement_id is not null + or unit_desc_id is not null + or veh_body_styl_id is not null +order by + id asc; + + + +update +units_edits +set + veh_trvl_dir_id = unit_updates.veh_trvl_dir_id, + movement_id = unit_updates.movement_id, + unit_desc_id = unit_updates.unit_desc_id, + veh_body_styl_id = unit_updates.veh_body_styl_id, + updated_by = 'legacy-vz-user' +from ( + select * + from + unit_diffs +) as unit_updates +where + units_edits.id = unit_updates.id; + +-- validate differences have been resolved +refresh materialized view unit_diffs; + +select count(*) +from + unit_diffs; + +-- tear down +drop materialized view unit_diffs; diff --git a/atd-toolbox/data_model/python/post_migration_scripts/notes_recs_crash_pk_backfill.sql b/atd-toolbox/data_model/python/post_migration_scripts/notes_recs_crash_pk_backfill.sql new file mode 100644 index 000000000..9c357b883 --- /dev/null +++ b/atd-toolbox/data_model/python/post_migration_scripts/notes_recs_crash_pk_backfill.sql @@ -0,0 +1,34 @@ +-- Backfill crash notes with the crash_pk +UPDATE + crash_notes +SET + crash_pk=crashes.id +FROM + crashes +WHERE + crash_notes.atd_txdot_crashes_crash_id=crashes.cris_crash_id; + +-- Backfill crash recommendations with the crash_pk +UPDATE + recommendations +SET + crash_pk=crashes.id +FROM + crashes +WHERE + recommendations.atd_txdot_crashes_crash_id=crashes.cris_crash_id; + +-- This is a crufty crash that CRIS has since deleted, it is a dupe of cris crash id 19854368 +DELETE FROM recommendations WHERE atd_txdot_crashes_crash_id = 19724784; + +DELETE FROM crash_notes WHERE atd_txdot_crashes_crash_id = 19724784; + +-- Each record must always have an associated crash_pk +ALTER TABLE recommendations ALTER COLUMN crash_pk SET NOT NULL; + +ALTER TABLE crash_notes ALTER COLUMN crash_pk SET NOT NULL; + +-- Drop old columns +ALTER TABLE recommendations DROP COLUMN atd_txdot_crashes_crash_id; + +ALTER TABLE crash_notes DROP COLUMN atd_txdot_crashes_crash_id; diff --git a/atd-toolbox/data_model/python/requirements.txt b/atd-toolbox/data_model/python/requirements.txt new file mode 100644 index 000000000..f2293605c --- /dev/null +++ b/atd-toolbox/data_model/python/requirements.txt @@ -0,0 +1 @@ +requests diff --git a/atd-toolbox/data_model/python/settings.py b/atd-toolbox/data_model/python/settings.py new file mode 100755 index 000000000..7e5bde653 --- /dev/null +++ b/atd-toolbox/data_model/python/settings.py @@ -0,0 +1,4 @@ +SCHEMA_NAME = "public" +BASE_MIGRATION_ID = 1715960000005 # increment this to be higher than any migrations on the destination branch +# relative to ./atd-toolbox/data_model/python ;) +MIGRATIONS_PATH = "../../../atd-vzd/migrations/default" diff --git a/atd-toolbox/data_model/python/sql_templates/audit_fields.sql b/atd-toolbox/data_model/python/sql_templates/audit_fields.sql new file mode 100644 index 000000000..40a4983cd --- /dev/null +++ b/atd-toolbox/data_model/python/sql_templates/audit_fields.sql @@ -0,0 +1,62 @@ +create or replace function public.set_updated_at_timestamp() +returns trigger +language plpgsql +as $function$ +begin + new.updated_at := now(); + return new; +end; +$function$; + +create trigger set_updated_at_timestamp_crashes_cris +before update on public.crashes_cris +for each row +execute procedure public.set_updated_at_timestamp(); + + +create trigger set_updated_at_timestamp_crashes_edits +before update on public.crashes_edits +for each row +execute procedure public.set_updated_at_timestamp(); + + +create trigger set_updated_at_timestamp_crashes +before update on public.crashes +for each row +execute procedure public.set_updated_at_timestamp(); + + +create trigger set_updated_at_timestamp_units_cris +before update on public.units_cris +for each row +execute procedure public.set_updated_at_timestamp(); + + +create trigger set_updated_at_timestamp_units_edits +before update on public.units_edits +for each row +execute procedure public.set_updated_at_timestamp(); + + +create trigger set_updated_at_timestamp_units +before update on public.units +for each row +execute procedure public.set_updated_at_timestamp(); + + +create trigger set_updated_at_timestamp_people_cris +before update on public.people_cris +for each row +execute procedure public.set_updated_at_timestamp(); + + +create trigger set_updated_at_timestamp_people_edits +before update on public.people_edits +for each row +execute procedure public.set_updated_at_timestamp(); + + +create trigger set_updated_at_timestamp_people +before update on public.people +for each row +execute procedure public.set_updated_at_timestamp(); diff --git a/atd-toolbox/data_model/python/sql_templates/build_address_trigger.sql b/atd-toolbox/data_model/python/sql_templates/build_address_trigger.sql new file mode 100644 index 000000000..1f69f1df2 --- /dev/null +++ b/atd-toolbox/data_model/python/sql_templates/build_address_trigger.sql @@ -0,0 +1,42 @@ +-- +-- function which creates a crash address based on address subparts +-- +CREATE OR REPLACE FUNCTION build_crash_address( + block_num TEXT, + street_pfx TEXT, + street_name TEXT, + street_sfx TEXT +) +RETURNS TEXT AS $$ +DECLARE + address text := ''; +BEGIN + -- Concat each address part only if it's not null and not an empty string + IF block_num IS NOT NULL AND block_num <> '' THEN + address := block_num || ' '; + END IF; + + IF street_pfx IS NOT NULL AND street_pfx <> '' THEN + address := address || street_pfx || ' '; + END IF; + + IF street_name IS NOT NULL AND street_name <> '' THEN + address := address || street_name || ' '; + END IF; + + IF street_sfx IS NOT NULL AND street_sfx <> '' THEN + address := address || street_sfx || ' '; + END IF; + + -- Trim the final address to remove any trailing space + address := trim(address); + + -- Return NULL if the trimmed address is empty + IF address = '' THEN + RETURN NULL; + ELSE + RETURN address; + END IF; + +END; +$$ LANGUAGE plpgsql IMMUTABLE; diff --git a/atd-toolbox/data_model/python/sql_templates/change_log_table.sql b/atd-toolbox/data_model/python/sql_templates/change_log_table.sql new file mode 100644 index 000000000..61e77d9cc --- /dev/null +++ b/atd-toolbox/data_model/python/sql_templates/change_log_table.sql @@ -0,0 +1,10 @@ +create table public.change_log_$tableName$ ( + id serial primary key, + record_id integer not null references public.$tableName$ ($idColName$) on delete cascade on update cascade, + operation_type text not null, + record_json jsonb not null, + created_at timestamp with time zone default now(), + created_by text not null +); + +create index on public.change_log_$tableName$ (record_id); diff --git a/atd-toolbox/data_model/python/sql_templates/change_log_triggers.sql b/atd-toolbox/data_model/python/sql_templates/change_log_triggers.sql new file mode 100644 index 000000000..07ff16f8b --- /dev/null +++ b/atd-toolbox/data_model/python/sql_templates/change_log_triggers.sql @@ -0,0 +1,67 @@ +-- +-- Insert into change log using a dynamic change log table name +-- +create or replace function public.insert_change_log() +returns trigger +language plpgsql +as $$ +declare + update_stmt text := 'insert into public.'; + record_json jsonb; +begin + record_json = jsonb_build_object('new', to_jsonb(new), 'old', to_jsonb(old)); + update_stmt := format('insert into public.change_log_%I (record_id, operation_type, record_json, created_by) + values (%s, %L, %L, $1.%I)', TG_TABLE_NAME, new.id, TG_OP, record_json, 'updated_by'); + execute (update_stmt) using new; + return null; +END; +$$; + + +-- crashes triggers +create trigger insert_change_log_crashes_cris +after insert or update on public.crashes_cris +for each row +execute procedure public.insert_change_log(); + +create trigger insert_change_log_crashes_edits +after insert or update on public.crashes_edits +for each row +execute procedure public.insert_change_log(); + +create trigger insert_change_log_crashes +after insert or update on public.crashes +for each row +execute procedure public.insert_change_log(); + +-- units triggers +create trigger insert_change_log_units_cris +after insert or update on public.units_cris +for each row +execute procedure public.insert_change_log(); + +create trigger insert_change_log_units_edits +after insert or update on public.units_edits +for each row +execute procedure public.insert_change_log(); + +create trigger insert_change_log_units +after insert or update on public.units +for each row +execute procedure public.insert_change_log(); + +-- people triggers +create trigger insert_change_log_people_cris +after insert or update on public.people_cris +for each row +execute procedure public.insert_change_log(); + +create trigger insert_change_log_people_edits +after insert or update on public.people_edits +for each row +execute procedure public.insert_change_log(); + +create trigger insert_change_log_people +after insert or update on public.people +for each row +execute procedure public.insert_change_log(); diff --git a/atd-toolbox/data_model/python/sql_templates/charges_set_person_id.sql b/atd-toolbox/data_model/python/sql_templates/charges_set_person_id.sql new file mode 100644 index 000000000..4eace65a6 --- /dev/null +++ b/atd-toolbox/data_model/python/sql_templates/charges_set_person_id.sql @@ -0,0 +1,29 @@ +-- +-- handle a charges record insert by setting the person_id column +-- and crash_pk column based on the cris_crash_id and unit_nbr +-- and prsn_nbr +-- +create or replace function public.charges_cris_set_person_id_and_crash_pk() +returns trigger +language plpgsql +as $$ +DECLARE + person_record record; +begin + select into person_record people_cris.id as person_id, units.crash_pk as crash_pk + from public.people_cris + left join public.units on public.units.id = people_cris.unit_id + where + people_cris.cris_crash_id = new.cris_crash_id + and people_cris.unit_nbr = new.unit_nbr + and people_cris.prsn_nbr = new.prsn_nbr; + new.person_id = person_record.person_id; + new.crash_pk = person_record.crash_pk; + RETURN new; +END; +$$; + +create trigger set_charges_cris_person_id_and_crash_pk +before insert on public.charges_cris +for each row +execute procedure public.charges_cris_set_person_id_and_crash_pk(); diff --git a/atd-toolbox/data_model/python/sql_templates/column_metadata_table.sql b/atd-toolbox/data_model/python/sql_templates/column_metadata_table.sql new file mode 100644 index 000000000..65645b863 --- /dev/null +++ b/atd-toolbox/data_model/python/sql_templates/column_metadata_table.sql @@ -0,0 +1,12 @@ +create table _column_metadata ( + id serial primary key, + column_name text not null, + record_type text not null, + is_imported_from_cris boolean not null default false, + UNIQUE (column_name, record_type) +); + +comment on table _column_metadata is 'Table which tracks column metadata for crashes, units, people, and charges records. Is the used by CRIS import to determine which fields will be processed/upserted.'; +comment on column _column_metadata.column_name is 'The name of the column in the db'; +comment on column _column_metadata.record_type is 'The type of record tables associated with this colum: crashes/units/people/charges'; +comment on column _column_metadata.is_imported_from_cris is 'If this column is populated via the CRIS import ETL'; diff --git a/atd-toolbox/data_model/python/sql_templates/crash_reference_layer_triggers.sql b/atd-toolbox/data_model/python/sql_templates/crash_reference_layer_triggers.sql new file mode 100644 index 000000000..71820d6f7 --- /dev/null +++ b/atd-toolbox/data_model/python/sql_templates/crash_reference_layer_triggers.sql @@ -0,0 +1,110 @@ +-- +-- add missing geometry index to jurisdictions +-- +drop index if exists atd_jurisdictions_geom_idx; +create index atd_jurisdictions_geom_idx on atd_jurisdictions +using gist (geometry); + +-- +-- Handle various spatial attribute associations when +-- unified crash record is inserted or updated +-- +create or replace function public.crashes_set_spatial_attributes() +returns trigger +language plpgsql +as $$ +begin + if (new.latitude is not null and new.longitude is not null) then + -- save lat/lon into geometry col + new.position = st_setsrid(st_makepoint(new.longitude, new.latitude), 4326); + -- + -- get location polygon id + -- + if (new.rpt_road_part_id != 2 and upper(ltrim(new.rpt_hwy_num)) in ('35', '183','183A','1','290','71','360','620','45','130')) then + -- use level 5 polygon + new.location_id = ( + select + location_id + from + public.atd_txdot_locations + where + location_group = 2 -- level 5 + and st_contains(geometry, new.position) + limit 1); + else + -- use the other polygons + new.location_id = ( + select + location_id + from + public.atd_txdot_locations + where + location_group = 1 -- not level 5 + and st_contains(geometry, new.position) + limit 1); + end if; + + raise debug 'found location: % compared to previous location: %', new.location_id, old.location_id; + -- + -- check if in austin full purpose jurisdiction + -- + new.in_austin_full_purpose = st_contains((select geometry from atd_jurisdictions where id = 5), new.position); + raise debug 'in austin full purpose: % compared to previous: %', new.in_austin_full_purpose, old.in_austin_full_purpose; + -- + -- get council district + -- + new.council_district = ( + select + council_district + from + public.council_districts + where + st_contains(geometry, new.position) + limit 1); + raise debug 'council_district: % compared to previous: %', new.council_district, old.council_district; + -- + -- get engineering area + -- + new.engineering_area = ( + select + area_id + from + public.engineering_areas + where + st_contains(geometry, new.position) + limit 1); + raise debug 'engineering_area: % compared to previous: %', new.engineering_area, old.engineering_area; + else + raise debug 'setting location id and council district to null'; + -- nullify position column + new.position = null; + -- reset location id + new.location_id = null; + -- use city id to determine full purpose jurisdiction + new.in_austin_full_purpose = coalesce(new.rpt_city_id = 22, false); + raise debug 'setting in_austin_full_purpose based on city id: %', new.in_austin_full_purpose; + -- reset council district + new.council_district = null; + -- reset engineering area + new.engineering_area = null; + end if; + return new; +end; +$$; + + +create trigger crashes_set_spatial_attributes_on_insert +before insert on public.crashes +for each row +execute procedure public.crashes_set_spatial_attributes(); + +create trigger crashes_set_spatial_attributes_on_update +before update on public.crashes +for each row +when ( + new.latitude is distinct from old.latitude + or new.longitude is distinct from old.longitude + or new.rpt_road_part_id is distinct from old.rpt_road_part_id + or new.rpt_hwy_num is distinct from old.rpt_hwy_num +) +execute procedure public.crashes_set_spatial_attributes(); diff --git a/atd-toolbox/data_model/python/sql_templates/crashes_change_log_view.sql b/atd-toolbox/data_model/python/sql_templates/crashes_change_log_view.sql new file mode 100644 index 000000000..28b26ef42 --- /dev/null +++ b/atd-toolbox/data_model/python/sql_templates/crashes_change_log_view.sql @@ -0,0 +1,52 @@ +drop view if exists crashes_change_log_view cascade; + +create view crashes_change_log_view as ( + select + concat('crash_', change_log_crashes.id) as id, + 'crash' as record_type, + record_id as crash_pk, + record_id, + case + when (operation_type = 'INSERT') then 'create' else + lower(operation_type) + end as operation_type, + record_json, + change_log_crashes.created_at, + change_log_crashes.created_by + from + change_log_crashes + union all + select + concat('unit_', change_log_units.id) as id, + 'unit' as record_type, + units.crash_pk, + record_id, + case + when (operation_type = 'INSERT') then 'create' else + lower(operation_type) + end as operation_type, + record_json, + change_log_units.created_at, + change_log_units.created_by + from + change_log_units + left join units on change_log_units.record_id = units.id + union all + select + concat('people_', change_log_people.id) as id, + 'person' as record_type, + crashes.id as crash_pk, + record_id, + case + when (operation_type = 'INSERT') then 'create' else + lower(operation_type) + end as operation_type, + record_json, + change_log_people.created_at, + change_log_people.created_by + from + change_log_people + left join people on change_log_people.record_id = people.id + left join units on people.unit_id = units.id + left join crashes on units.crash_pk = crashes.id +); diff --git a/atd-toolbox/data_model/python/sql_templates/crashes_list_view.sql b/atd-toolbox/data_model/python/sql_templates/crashes_list_view.sql new file mode 100644 index 000000000..0547bc1dd --- /dev/null +++ b/atd-toolbox/data_model/python/sql_templates/crashes_list_view.sql @@ -0,0 +1,609 @@ +drop view if exists person_injury_metrics_view cascade; + +create or replace view person_injury_metrics_view as ( + select + people.id, + units.id as unit_id, + crashes.id as crash_pk, + crashes.cris_crash_id, + people.years_of_life_lost, + people.est_comp_cost_crash_based, + case + when (people.prsn_injry_sev_id = 0) then 1 + else 0 + end as unkn_injry, + case + when (people.prsn_injry_sev_id = 1) then 1 + else 0 + end as sus_serious_injry, + case + when (people.prsn_injry_sev_id = 2) then 1 + else 0 + end as nonincap_injry, + case + when (people.prsn_injry_sev_id = 3) then 1 + else 0 + end as poss_injry, + case + when + (people.prsn_injry_sev_id = 4 or people.prsn_injry_sev_id = 99) + then 1 + else 0 + end as fatal_injury, + case + when + ( + people.prsn_injry_sev_id = 4 + ) + then 1 + else 0 + end as vz_fatal_injury, + case + when + ( + ( + people.prsn_injry_sev_id = 4 + or people.prsn_injry_sev_id = 99 + ) + and crashes.law_enforcement_ytd_fatality_num is not null + ) + then 1 + else 0 + end as law_enf_fatal_injury, + case + when (people_cris.prsn_injry_sev_id = 4) then 1 + else 0 + end as cris_fatal_injury, + case + when (people.prsn_injry_sev_id = 5) then 1 + else 0 + end as non_injry, + case + when + ( + people.prsn_injry_sev_id = 4 + and units.vz_mode_category_id in (1, 2, 4) + ) + then 1 + else 0 + end as motor_vehicle_fatal_injry, + case + when + ( + people.prsn_injry_sev_id = 1 + and units.vz_mode_category_id in (1, 2, 4) + ) + then 1 + else 0 + end as motor_vehicle_sus_serious_injry, + case + when + ( + people.prsn_injry_sev_id = 4 + and units.vz_mode_category_id = 3 + ) + then 1 + else 0 + end as motorcycle_fatal_injry, + case + when + ( + people.prsn_injry_sev_id = 1 + and units.vz_mode_category_id = 3 + ) + then 1 + else 0 + end as motorycle_sus_serious_injry, + case + when + ( + people.prsn_injry_sev_id = 4 + and units.vz_mode_category_id = 5 + ) + then 1 + else 0 + end as bicycle_fatal_injry, + case + when + ( + people.prsn_injry_sev_id = 1 + and units.vz_mode_category_id = 5 + ) + then 1 + else 0 + end as bicycle_sus_serious_injry, + case + when + ( + people.prsn_injry_sev_id = 4 + and units.vz_mode_category_id = 7 + ) + then 1 + else 0 + end as pedestrian_fatal_injry, + case + when + ( + people.prsn_injry_sev_id = 1 + and units.vz_mode_category_id = 7 + ) + then 1 + else 0 + end as pedestrian_sus_serious_injry, + case + when + ( + people.prsn_injry_sev_id = 4 + and units.vz_mode_category_id = 11 + ) + then 1 + else 0 + end as micromobility_fatal_injry, + case + when + ( + people.prsn_injry_sev_id = 1 + and units.vz_mode_category_id = 11 + ) + then 1 + else 0 + end as micromobility_sus_serious_injry, + case + when + ( + people.prsn_injry_sev_id = 4 + and units.vz_mode_category_id in (6, 8, 9) + ) + then 1 + else 0 + end as other_fatal_injry, + case + when + ( + people.prsn_injry_sev_id = 1 + and units.vz_mode_category_id in (6, 8, 9) + ) + then 1 + else 0 + end as other_sus_serious_injry + from + public.people as people + left join public.units as units on people.unit_id = units.id + left join public.people_cris as people_cris on people.id = people_cris.id + left join + public.crashes as crashes + on units.crash_pk = crashes.id + where people.is_deleted = false +); + +create or replace view unit_injury_metrics_view as +( + select + units.id, + units.crash_pk, + coalesce( + sum(person_injury_metrics_view.unkn_injry), 0 + ) as unkn_injry_count, + coalesce(sum( + person_injury_metrics_view.nonincap_injry + ), 0) as nonincap_injry_count, + coalesce( + sum(person_injury_metrics_view.poss_injry), 0 + ) as poss_injry_count, + coalesce( + sum(person_injury_metrics_view.non_injry), 0 + ) as non_injry_count, + coalesce( + sum(person_injury_metrics_view.sus_serious_injry), 0 + ) as sus_serious_injry_count, + coalesce( + sum(person_injury_metrics_view.fatal_injury), 0 + ) as fatality_count, + coalesce( + sum(person_injury_metrics_view.vz_fatal_injury), 0 + ) as vz_fatality_count, + coalesce(sum( + person_injury_metrics_view.law_enf_fatal_injury + ), 0) as law_enf_fatality_count, + coalesce( + sum(person_injury_metrics_view.cris_fatal_injury), 0 + ) as cris_fatality_count, + coalesce( + sum(person_injury_metrics_view.years_of_life_lost), 0 + ) as years_of_life_lost + from + public.units + left join + person_injury_metrics_view + on units.id = person_injury_metrics_view.unit_id + where units.is_deleted = false + group by + units.id +); + +create or replace view crash_injury_metrics_view as +( + select + crashes.id, + crashes.cris_crash_id, + coalesce( + sum(person_injury_metrics_view.unkn_injry), 0 + ) as unkn_injry_count, + coalesce(sum( + person_injury_metrics_view.nonincap_injry + ), 0) as nonincap_injry_count, + coalesce( + sum(person_injury_metrics_view.poss_injry), 0 + ) as poss_injry_count, + coalesce( + sum(person_injury_metrics_view.non_injry), 0 + ) as non_injry_count, + coalesce( + sum(person_injury_metrics_view.sus_serious_injry), 0 + ) as sus_serious_injry_count, + coalesce( + sum(person_injury_metrics_view.nonincap_injry), 0 + ) + + coalesce( + sum(person_injury_metrics_view.poss_injry), 0 + ) + + coalesce( + sum(person_injury_metrics_view.sus_serious_injry), 0 + ) + as tot_injry_count, + coalesce( + sum(person_injury_metrics_view.fatal_injury), 0 + ) as fatality_count, + coalesce( + sum(person_injury_metrics_view.vz_fatal_injury), 0 + ) as vz_fatality_count, + coalesce(sum( + person_injury_metrics_view.law_enf_fatal_injury + ), 0) as law_enf_fatality_count, + coalesce( + sum(person_injury_metrics_view.cris_fatal_injury), 0 + ) as cris_fatality_count, + coalesce(sum( + person_injury_metrics_view.motor_vehicle_fatal_injry + ), 0) as motor_vehicle_fatality_count, + coalesce(sum( + person_injury_metrics_view.motor_vehicle_sus_serious_injry + ), 0) as motor_vehicle_sus_serious_injry_count, + coalesce(sum( + person_injury_metrics_view.motorcycle_fatal_injry + ), 0) as motorcycle_fatality_count, + coalesce(sum( + person_injury_metrics_view.motorycle_sus_serious_injry + ), 0) as motorcycle_sus_serious_count, + coalesce(sum( + person_injury_metrics_view.bicycle_fatal_injry + ), 0) as bicycle_fatality_count, + coalesce(sum( + person_injury_metrics_view.bicycle_sus_serious_injry + ), 0) as bicycle_sus_serious_injry_count, + coalesce(sum( + person_injury_metrics_view.pedestrian_fatal_injry + ), 0) as pedestrian_fatality_count, + coalesce(sum( + person_injury_metrics_view.pedestrian_sus_serious_injry + ), 0) as pedestrian_sus_serious_injry_count, + coalesce(sum( + person_injury_metrics_view.micromobility_fatal_injry + ), 0) as micromobility_fatality_count, + coalesce(sum( + person_injury_metrics_view.micromobility_sus_serious_injry + ), 0) as micromobility_sus_serious_injry_count, + coalesce(sum( + person_injury_metrics_view.other_fatal_injry + ), 0) as other_fatality_count, + coalesce(sum( + person_injury_metrics_view.other_sus_serious_injry + ), 0) as other_sus_serious_injry_count, + case + when (sum(person_injury_metrics_view.fatal_injury) > 0) then 4 + when (sum(person_injury_metrics_view.sus_serious_injry) > 0) then 1 + when (sum(person_injury_metrics_view.nonincap_injry) > 0) then 2 + when (sum(person_injury_metrics_view.poss_injry) > 0) then 3 + when (sum(person_injury_metrics_view.unkn_injry) > 0) then 0 + when (sum(person_injury_metrics_view.non_injry) > 0) then 5 + else 0 + end as crash_injry_sev_id, + coalesce( + sum(person_injury_metrics_view.years_of_life_lost), 0 + ) as years_of_life_lost, + -- default cr3 crash comp cost is 20k + coalesce( + max(est_comp_cost_crash_based), 20000 + ) as est_comp_cost_crash_based, + -- default cr3 crash comp cost is 20k + coalesce( + sum(est_comp_cost_crash_based), 20000 + ) as est_total_person_comp_cost + from + public.crashes as crashes + left join + person_injury_metrics_view + on crashes.id = person_injury_metrics_view.crash_pk + where crashes.is_deleted = false + group by + crashes.id, + crashes.cris_crash_id +); + + +create or replace view crashes_list_view as with geocode_status as ( + select + cris.id, + edits.latitude is not null and edits.longitude is not null + as is_manual_geocode + from public.crashes_cris as cris + left join public.crashes_edits as edits on cris.id = edits.id +) + +select + public.crashes.id, + public.crashes.cris_crash_id, + public.crashes.record_locator, + public.crashes.case_id, + public.crashes.crash_timestamp, + public.crashes.address_primary, + public.crashes.address_secondary, + public.crashes.private_dr_fl, + public.crashes.in_austin_full_purpose, + public.crashes.location_id, + public.crashes.rpt_block_num, + public.crashes.rpt_street_pfx, + public.crashes.rpt_street_sfx, + public.crashes.rpt_street_name, + public.crashes.rpt_sec_block_num, + public.crashes.rpt_sec_street_pfx, + public.crashes.rpt_sec_street_sfx, + public.crashes.rpt_sec_street_name, + public.crashes.latitude, + public.crashes.longitude, + public.crashes.light_cond_id, + public.crashes.wthr_cond_id, + public.crashes.active_school_zone_fl, + public.crashes.schl_bus_fl, + public.crashes.at_intrsct_fl, + public.crashes.onsys_fl, + public.crashes.traffic_cntl_id, + public.crashes.road_constr_zone_fl, + public.crashes.rr_relat_fl, + public.crashes.toll_road_fl, + public.crashes.intrsct_relat_id, + public.crashes.obj_struck_id, + public.crashes.crash_speed_limit, + public.crashes.council_district, + public.crashes.is_temp_record, + crash_injury_metrics_view.nonincap_injry_count, + crash_injury_metrics_view.poss_injry_count, + crash_injury_metrics_view.sus_serious_injry_count, + crash_injury_metrics_view.non_injry_count, + crash_injury_metrics_view.tot_injry_count, + crash_injury_metrics_view.vz_fatality_count, + crash_injury_metrics_view.cris_fatality_count, + crash_injury_metrics_view.law_enf_fatality_count, + crash_injury_metrics_view.fatality_count, + crash_injury_metrics_view.unkn_injry_count, + crash_injury_metrics_view.est_comp_cost_crash_based, + crash_injury_metrics_view.crash_injry_sev_id, + crash_injury_metrics_view.years_of_life_lost, + lookups.injry_sev.label as crash_injry_sev_desc, + lookups.collsn.label as collsn_desc, + geocode_status.is_manual_geocode, + to_char( + public.crashes.crash_timestamp at time zone 'US/Central', 'YYYY-MM-DD' + ) as crash_date_ct, + to_char( + public.crashes.crash_timestamp at time zone 'US/Central', 'HH24:MI:SS' + ) as crash_time_ct, + upper( + to_char( + public.crashes.crash_timestamp at time zone 'US/Central', 'dy' + ) + ) as crash_day_of_week +from + public.crashes +left join lateral ( + select * + from + public.crash_injury_metrics_view + where + crashes.id = id + limit 1 +) as crash_injury_metrics_view on true +left join + geocode_status + on public.crashes.id = geocode_status.id +left join + lookups.collsn + on public.crashes.fhe_collsn_id = lookups.collsn.id +left join + lookups.injry_sev + on lookups.injry_sev.id = crash_injury_metrics_view.crash_injry_sev_id +where crashes.is_deleted = false +order by crash_timestamp desc; + + +drop view if exists locations_list_view; +create view locations_list_view as +with cr3_comp_costs as ( + select + location_id, + sum(est_comp_cost_crash_based) as cr3_comp_costs_total + from crashes_list_view group by location_id +), + +cr3_crash_counts as ( + select + location_id, + count(location_id) as crash_count + from + crashes + where + crashes.private_dr_fl = false + and crashes.location_id is not null + and crashes.crash_timestamp > (now() - '5 years'::interval) + group by + location_id +), + +non_cr3_crash_counts as ( + select + location_id, + count(location_id) as crash_count, + count(location_id) * 10000 as noncr3_comp_costs_total + from + atd_apd_blueform + where + atd_apd_blueform.location_id is not null + and atd_apd_blueform.date > (now() - '5 years'::interval) + group by + location_id +) + +select + locations.location_id, + locations.description, + coalesce(cr3_comp_costs.cr3_comp_costs_total + non_cr3_crash_counts.noncr3_comp_costs_total, 0) as total_est_comp_cost, + coalesce(cr3_crash_counts.crash_count, 0) as cr3_crash_count, + coalesce(non_cr3_crash_counts.crash_count, 0) as non_cr3_crash_count, + coalesce(cr3_crash_counts.crash_count, 0) + + coalesce(non_cr3_crash_counts.crash_count, 0) as crash_count +from + atd_txdot_locations as locations +left join + cr3_crash_counts + on locations.location_id = cr3_crash_counts.location_id +left join + non_cr3_crash_counts + on locations.location_id = non_cr3_crash_counts.location_id +left join cr3_comp_costs on locations.location_id = cr3_comp_costs.location_id +where + locations.council_district > 0 + and locations.location_group = 1; + +create or replace view location_crashes_view as ( + + select + public.crashes.cris_crash_id, + 'CR3'::text as type, + public.crashes.location_id, + public.crashes.case_id, + to_char( + public.crashes.crash_timestamp at time zone 'US/Central', + 'YYYY-MM-DD' + ) as crash_date, + to_char( + public.crashes.crash_timestamp at time zone 'US/Central', + 'HH24:MI:SS' + ) as crash_time, + upper( + to_char( + public.crashes.crash_timestamp at time zone 'US/Central', 'dy' + ) + ) as day_of_week, + crash_injury_metrics_view.crash_injry_sev_id as crash_sev_id, + public.crashes.latitude, + public.crashes.longitude, + public.crashes.address_primary, + public.crashes.address_secondary, + crash_injury_metrics_view.non_injry_count, + crash_injury_metrics_view.nonincap_injry_count, + crash_injury_metrics_view.poss_injry_count, + crash_injury_metrics_view.sus_serious_injry_count, + crash_injury_metrics_view.tot_injry_count, + crash_injury_metrics_view.unkn_injry_count, + crash_injury_metrics_view.vz_fatality_count, + crash_injury_metrics_view.est_comp_cost_crash_based, + lookups.collsn.label as collsn_desc, + crash_units.movement_desc, + crash_units.travel_direction, + crash_units.veh_body_styl_desc, + crash_units.veh_unit_desc + from + public.crashes + left join lateral + ( + select + units.crash_pk, + string_agg(movt.label::text, ',') as movement_desc, + string_agg(trvl_dir.label::text, ',') as travel_direction, + string_agg( + veh_body_styl.label::text, ',' + ) as veh_body_styl_desc, + string_agg(unit_desc.label::text, ',') as veh_unit_desc + from units + left join + lookups.movt as movt + on units.movement_id = movt.id + left join + lookups.trvl_dir as trvl_dir + on units.veh_trvl_dir_id = trvl_dir.id + left join + lookups.veh_body_styl as veh_body_styl + on units.veh_body_styl_id = veh_body_styl.id + left join + lookups.unit_desc as unit_desc + on units.unit_desc_id = unit_desc.id + where crashes.id = units.crash_pk + group by units.crash_pk + ) as crash_units + on true + left join lateral ( + select * + from + public.crash_injury_metrics_view + where + crashes.id = id + limit 1 + ) as crash_injury_metrics_view on true + left join + lookups.collsn + on public.crashes.fhe_collsn_id = lookups.collsn.id + where + crashes.is_deleted = false + and crashes.crash_timestamp >= (now() - '5 years'::interval)::date + union all + select + aab.form_id as cris_crash_id, + 'NON-CR3'::text as record_type, + aab.location_id, + aab.case_id::text as case_id, + aab.date::text as crash_date, + concat(aab.hour, ':00:00') as crash_time, + ( + select + case date_part('dow'::text, aab.date) + when 0 then 'SUN'::text + when 1 then 'MON'::text + when 2 then 'TUE'::text + when 3 then 'WED'::text + when 4 then 'THU'::text + when 5 then 'FRI'::text + when 6 then 'SAT'::text + else 'Unknown'::text + end as "case" + ) as day_of_week, + 0 as crash_sev_id, + aab.latitude as latitude, + aab.longitude as longitude, + aab.address as address_primary, + ''::text as address_secondary, + 0 as non_injry_count, + 0 as nonincap_injry_count, + 0 as poss_injry_count, + 0 as sus_serious_injry_count, + 0 as tot_injry_count, + 0 as unkn_injry_count, + 0 as vz_fatality_count, + aab.est_comp_cost_crash_based as est_comp_cost, + ''::text as collsn_desc, + ''::text as travel_direction, + ''::text as movement_desc, + ''::text as veh_body_styl_desc, + ''::text as veh_unit_desc + from atd_apd_blueform as aab + where aab.date >= (now() - '5 years'::interval)::date +); diff --git a/atd-toolbox/data_model/python/sql_templates/cris_insert_trigger_template.sql b/atd-toolbox/data_model/python/sql_templates/cris_insert_trigger_template.sql new file mode 100644 index 000000000..f0e84e49c --- /dev/null +++ b/atd-toolbox/data_model/python/sql_templates/cris_insert_trigger_template.sql @@ -0,0 +1,24 @@ +create or replace function public.$tableName$_cris_insert_rows() +returns trigger +language plpgsql +as +$$ +BEGIN + -- insert new combined / official record + INSERT INTO public.$tableName$ ( + $affectedColumns$ + ) values ( + $affectedColumnsWithNewPrefix$ + ); + -- insert new (editable) vz record (only record ID) + INSERT INTO public.$tableName$_edits ($pkColumnName$) values (new.$pkColumnName$); + + RETURN NULL; +END; +$$; + + +create or replace trigger insert_new_$tableName$_cris +after insert on public.$tableName$_cris +for each row +execute procedure public.$tableName$_cris_insert_rows(); diff --git a/atd-toolbox/data_model/python/sql_templates/cris_update_trigger_template.sql b/atd-toolbox/data_model/python/sql_templates/cris_update_trigger_template.sql new file mode 100644 index 000000000..ac7c17071 --- /dev/null +++ b/atd-toolbox/data_model/python/sql_templates/cris_update_trigger_template.sql @@ -0,0 +1,52 @@ +-- +-- handle a cris $tableName$ update by updating the +-- unified $tableName$ record from cris + vz values +-- +create or replace function public.$tableName$_cris_update() +returns trigger +language plpgsql +as $$ +declare + new_cris_jb jsonb := to_jsonb (new); + old_cris_jb jsonb := to_jsonb (old); + edit_record_jb jsonb; + column_name text; + updates_todo text [] := '{}'; + update_stmt text := 'update public.$tableName$ set '; +begin + -- get corresponding the VZ record as jsonb + SELECT to_jsonb($tableName$_edits) INTO edit_record_jb from public.$tableName$_edits where public.$tableName$_edits.$pkColumnName$ = new.$pkColumnName$; + + -- for every key in the cris json object + for column_name in select jsonb_object_keys(new_cris_jb) loop + -- ignore audit fields + continue when column_name in ('created_at', 'updated_at', 'created_by', 'updated_by'); + -- if the new value doesn't match the old + if(new_cris_jb -> column_name <> old_cris_jb -> column_name) then + -- see if the vz record has a value for this field + if (edit_record_jb ->> column_name is null) then + -- this value is not overridden by VZ + -- so update the unified record with this new value + updates_todo := updates_todo || format('%I = $1.%I', column_name, column_name); + end if; + end if; + end loop; + if(array_length(updates_todo, 1) > 0) then + -- set audit field updated_by to match cris record + updates_todo := updates_todo || format('%I = $1.%I', 'updated_by', 'updated_by'); + -- complete the update statement by joining all `set` clauses together + update_stmt := update_stmt + || array_to_string(updates_todo, ',') + || format(' where public.$tableName$.$pkColumnName$ = %s', new.$pkColumnName$); + raise debug 'Updating $tableName$ record from CRIS update'; + execute (update_stmt) using new; + else + raise debug 'No changes to unified record needed'; + end if; + return null; +end; +$$; + +create trigger update_$tableName$_from_$tableName$_cris_update +after update on public.$tableName$_cris for each row +execute procedure public.$tableName$_cris_update(); diff --git a/atd-toolbox/data_model/python/sql_templates/edits_update_trigger_template.sql b/atd-toolbox/data_model/python/sql_templates/edits_update_trigger_template.sql new file mode 100644 index 000000000..64d27a473 --- /dev/null +++ b/atd-toolbox/data_model/python/sql_templates/edits_update_trigger_template.sql @@ -0,0 +1,45 @@ +-- +-- handle an $tableName$_edits update by updating the +-- unified $tableName$ record from cris + edit values +-- +create or replace function public.$tableName$_edits_update() +returns trigger +language plpgsql +as $$ +declare + new_edits_jb jsonb := to_jsonb (new); + cris_record_jb jsonb; + column_name text; + updates_todo text [] := '{}'; + update_stmt text := 'update public.$tableName$ set '; +begin + -- get corresponding the cris record as jsonb + SELECT to_jsonb($tableName$_cris) INTO cris_record_jb from public.$tableName$_cris where public.$tableName$_cris.$pkColumnName$ = new.$pkColumnName$; + -- for every key in the vz json object + for column_name in select jsonb_object_keys(new_edits_jb) loop + -- ignore audit fields, except updated_by + continue when column_name in ('created_at', 'updated_at', 'created_by'); + -- create a set statement for the column + if cris_record_jb ? column_name then + -- if this column exists on the cris table, coalesce vz + cris values + updates_todo := updates_todo + || format('%I = coalesce($1.%I, cris_record.%I)', column_name, column_name, column_name); + else + updates_todo := updates_todo + || format('%I = $1.%I', column_name, column_name); + end if; + end loop; + -- join all `set` clauses together + update_stmt := update_stmt + || array_to_string(updates_todo, ',') + || format(' from (select * from public.$tableName$_cris where public.$tableName$_cris.$pkColumnName$ = %s) as cris_record', new.$pkColumnName$) + || format(' where public.$tableName$.$pkColumnName$ = %s ', new.$pkColumnName$); + raise debug 'Updating unified $tableName$ record from edit update'; + execute (update_stmt) using new; + return null; +end; +$$; + +create trigger update_$tableName$_from_$tableName$_edits_update +after update on public.$tableName$_edits for each row +execute procedure public.$tableName$_edits_update(); diff --git a/atd-toolbox/data_model/python/sql_templates/fatalities_view.sql b/atd-toolbox/data_model/python/sql_templates/fatalities_view.sql new file mode 100644 index 000000000..b1144f5da --- /dev/null +++ b/atd-toolbox/data_model/python/sql_templates/fatalities_view.sql @@ -0,0 +1,52 @@ +drop table if exists fatalities cascade; + +drop view if exists fatalities_view cascade; + +drop function if exists update_fatality_soft_delete cascade; + +drop function if exists fatality_insert cascade; + +create or replace view fatalities_view AS +select +people.id as person_id, +crashes.id as crash_pk, +crashes.cris_crash_id, +crashes.record_locator, +units.id as unit_id, +CONCAT_WS(' ', people.prsn_first_name, people.prsn_mid_name, people.prsn_last_name) as victim_name, +TO_CHAR(crashes.crash_timestamp at time zone 'US/Central', 'yyyy') AS year, +CONCAT_WS(' ', + crashes.rpt_block_num, + crashes.rpt_street_pfx, + crashes.rpt_street_name, + '(', + crashes.rpt_sec_block_num, + crashes.rpt_sec_street_pfx, + crashes.rpt_sec_street_name, + ')') AS location, +to_char( + public.crashes.crash_timestamp at time zone 'US/Central', 'YYYY-MM-DD' + ) as crash_date_ct, +to_char( + public.crashes.crash_timestamp at time zone 'US/Central', 'HH24:MI:SS' + ) as crash_time_ct, +-- get ytd fatality, partition by year and sort by date timestamp +ROW_NUMBER() OVER ( + PARTITION BY EXTRACT(year FROM crashes.crash_timestamp) + ORDER BY crashes.crash_timestamp ASC) + AS ytd_fatality, +-- get ytd fatal crash, partition by year and sort by date timestamp. +-- records with the same crash.id will get "tie" rankings thus making +-- this column count each crash rather than each fatality +DENSE_RANK() OVER ( + PARTITION BY EXTRACT(year FROM crashes.crash_timestamp) + ORDER BY crashes.crash_timestamp ASC, crashes.id) + AS ytd_fatal_crash, +crashes.case_id, +crashes.law_enforcement_ytd_fatality_num, +crashes.engineering_area + from + people + left join units on people.unit_id = units.id + left join crashes on units.crash_pk = crashes.id +where crashes.in_austin_full_purpose = true AND people.prsn_injry_sev_id = 4 AND crashes.private_dr_fl = false AND crashes.is_deleted = false; diff --git a/atd-toolbox/data_model/python/sql_templates/indexes.sql b/atd-toolbox/data_model/python/sql_templates/indexes.sql new file mode 100644 index 000000000..ae068cd52 --- /dev/null +++ b/atd-toolbox/data_model/python/sql_templates/indexes.sql @@ -0,0 +1,18 @@ +create index on public.people_cris (unit_id); +create index on public.people_cris (prsn_injry_sev_id); +create index on public.people_cris (cris_crash_id); +create index on public.people_cris (cris_crash_id, unit_nbr, prsn_nbr); -- charges -> person trigger +create index on public.units_cris (cris_crash_id, unit_nbr); -- people -> unit_id trigger +create index on public.units (crash_pk); +create index on public.people (unit_id); +create index on public.people (prsn_injry_sev_id); +create index on public.crashes (location_id); +create index on public.crashes (cris_crash_id); +create index on public.crashes (crash_timestamp); +create index on public.crashes (record_locator); +create index on public.crashes (private_dr_fl); +create index on public.crashes (in_austin_full_purpose); +create index on public.crashes (is_deleted); +create index on public.crashes (address_primary); +create index on public.crashes (position); +create index on public.atd_txdot_locations (council_district); diff --git a/atd-toolbox/data_model/python/sql_templates/people_list_view.sql b/atd-toolbox/data_model/python/sql_templates/people_list_view.sql new file mode 100644 index 000000000..3d652b008 --- /dev/null +++ b/atd-toolbox/data_model/python/sql_templates/people_list_view.sql @@ -0,0 +1,25 @@ +drop view if exists people_list_view cascade; + +create or replace view people_list_view as ( + select + people.*, + crashes.id as crash_pk, + crashes.cris_crash_id, + crashes.crash_timestamp, + injry_sev.label as prsn_injry_sev_desc, + units.unit_nbr, + units.unit_desc_id, + mode_category.label as mode_desc + from public.people + left join public.units as units on people.unit_id = units.id + left join public.people_cris as people_cris on people.id = people_cris.id + left join + public.crashes as crashes + on units.crash_pk = crashes.id + left join + lookups.injry_sev + on lookups.injry_sev.id = people.prsn_injry_sev_id + left join + lookups.mode_category + on units.vz_mode_category_id = lookups.mode_category.id +); diff --git a/atd-toolbox/data_model/python/sql_templates/people_set_unit_id.sql b/atd-toolbox/data_model/python/sql_templates/people_set_unit_id.sql new file mode 100644 index 000000000..167e51688 --- /dev/null +++ b/atd-toolbox/data_model/python/sql_templates/people_set_unit_id.sql @@ -0,0 +1,28 @@ +-- +-- handle a people record insert by setting +-- the unit_id column based on the cris_crash_id and unit_nbr +-- +create or replace function public.people_cris_set_unit_id() +returns trigger +language plpgsql +as $$ +DECLARE + unit_record record; +BEGIN + if new.unit_id is not null then + -- a user may manually create a person record through a + -- nested Hasura mutation (eg when creating a temp record) + -- in which case the record will already have a unit_id + return new; + end if; + SELECT INTO unit_record * + FROM public.units_cris where cris_crash_id = new.cris_crash_id and unit_nbr = new.unit_nbr; + new.unit_id = unit_record.id; + RETURN new; +END; +$$; + +create trigger set_person_cris_unit_id +before insert on public.people_cris +for each row +execute procedure public.people_cris_set_unit_id(); diff --git a/atd-toolbox/data_model/python/sql_templates/recommendations_and_notes_down.sql b/atd-toolbox/data_model/python/sql_templates/recommendations_and_notes_down.sql new file mode 100644 index 000000000..fe3a7b493 --- /dev/null +++ b/atd-toolbox/data_model/python/sql_templates/recommendations_and_notes_down.sql @@ -0,0 +1,17 @@ +alter table recommendations drop column crash_pk; +alter table recommendations rename column atd_txdot_crashes_crash_id to crash_id; +alter table recommendations add constraint recommendations_crash_id_key unique (crash_id); +delete from recommendations where crash_id is null; +alter table recommendations alter column crash_id set not null; + +alter table crash_notes drop column crash_pk; +alter table crash_notes rename column atd_txdot_crashes_crash_id to crash_id; +delete from crash_notes where crash_id is null; +alter table crash_notes alter column crash_id set not null; + +alter table location_notes +drop constraint fk_location_note_location, +alter column location_id drop not null; + +alter table _cris_import_log rename to cris_import_log; +alter table cris_import_log add column outcome_status text; diff --git a/atd-toolbox/data_model/python/sql_templates/recommendations_and_notes_up.sql b/atd-toolbox/data_model/python/sql_templates/recommendations_and_notes_up.sql new file mode 100644 index 000000000..99e996884 --- /dev/null +++ b/atd-toolbox/data_model/python/sql_templates/recommendations_and_notes_up.sql @@ -0,0 +1,35 @@ +alter table recommendations rename column crash_id to atd_txdot_crashes_crash_id; + +alter table recommendations + add column crash_pk integer, + add constraint recommendations_crashes_pk_fkey foreign key ( + crash_pk + ) references crashes (id), + drop constraint recommendations_crash_id_key, + add constraint recommendations_crash_id_key unique (crash_pk), + alter column atd_txdot_crashes_crash_id drop not null; +; + +alter table crash_notes rename column crash_id to atd_txdot_crashes_crash_id; + +alter table crash_notes + add column crash_pk integer, + add constraint notes_crashes_id_fkey foreign key ( + crash_pk + ) references crashes (id), + alter column atd_txdot_crashes_crash_id drop not null; + +alter table location_notes +add constraint fk_location_note_location foreign key ( + location_id +) references atd_txdot_locations (location_id), +alter column location_id set not null; + +-- squeezing this in here +alter table cris_import_log rename to _cris_import_log; +alter table _cris_import_log drop column outcome_status; +alter table _cris_import_log alter column records_processed drop DEFAULT; + +-- and squeezing this in here +drop view if exists view_crashes_inconsistent_numbers; +drop view if exists atd_txdot_changes_view; diff --git a/atd-toolbox/data_model/python/sql_templates/socrata_export_views.sql b/atd-toolbox/data_model/python/sql_templates/socrata_export_views.sql new file mode 100644 index 000000000..a0054eb96 --- /dev/null +++ b/atd-toolbox/data_model/python/sql_templates/socrata_export_views.sql @@ -0,0 +1,140 @@ +create or replace view socrata_export_crashes_view as with +unit_aggregates as ( + select + crashes.id as id, + string_agg(distinct mode_categories.label, ' & ') as units_involved + from crashes + left join units + on crashes.id = units.crash_pk + left join + lookups.mode_category as mode_categories + on units.vz_mode_category_id = mode_categories.id + group by crashes.id +) + +select + crashes.id, + crashes.cris_crash_id, + crashes.case_id, + crashes.address_primary, + crashes.address_secondary, + crashes.is_deleted, + crashes.latitude, + crashes.longitude, + crashes.rpt_block_num, + crashes.rpt_street_name, + crashes.rpt_street_sfx, + crashes.crash_speed_limit, + crashes.road_constr_zone_fl, + crashes.is_temp_record, + cimv.crash_injry_sev_id as crash_sev_id, + cimv.sus_serious_injry_count as sus_serious_injry_cnt, + cimv.nonincap_injry_count as nonincap_injry_cnt, + cimv.poss_injry_count as poss_injry_cnt, + cimv.non_injry_count as non_injry_cnt, + cimv.unkn_injry_count as unkn_injry_cnt, + cimv.tot_injry_count as tot_injry_cnt, + cimv.law_enf_fatality_count, + cimv.vz_fatality_count as death_cnt, + crashes.onsys_fl, + crashes.private_dr_fl, + unit_aggregates.units_involved, + cimv.motor_vehicle_fatality_count as motor_vehicle_death_count, + cimv.motor_vehicle_sus_serious_injry_count as motor_vehicle_serious_injury_count, + cimv.bicycle_fatality_count as bicycle_death_count, + cimv.bicycle_sus_serious_injry_count as bicycle_serious_injury_count, + cimv.pedestrian_fatality_count as pedestrian_death_count, + cimv.pedestrian_sus_serious_injry_count as pedestrian_serious_injury_count, + cimv.motorcycle_fatality_count as motorcycle_death_count, + cimv.motorcycle_sus_serious_count as motorcycle_serious_injury_count, + cimv.micromobility_fatality_count as micromobility_death_count, + cimv.micromobility_sus_serious_injry_count as micromobility_serious_injury_count, + cimv.other_fatality_count as other_death_count, + cimv.other_sus_serious_injry_count as other_serious_injury_count, + cimv.years_of_life_lost, + to_char( + crashes.crash_timestamp, 'YYYY-MM-DD"T"HH24:MI:SS' + ) as crash_timestamp, + to_char( + crashes.crash_timestamp at time zone 'US/Central', + 'YYYY-MM-DD"T"HH24:MI:SS' + ) as crash_timestamp_ct, + case + when + crashes.latitude is not null and crashes.longitude is not null + then + 'POINT (' + || crashes.longitude::text + || ' ' + || crashes.latitude::text + || ')' + end as point, + coalesce(cimv.crash_injry_sev_id = 4, false) as crash_fatal_fl +from crashes +left join lateral ( + select * + from + public.crash_injury_metrics_view + where + crashes.id = id + limit 1 +) as cimv on true +left join lateral ( + select * + from + unit_aggregates + where + crashes.id = unit_aggregates.id + limit 1 +) as unit_aggregates on true +where + crashes.is_deleted = false + and crashes.in_austin_full_purpose = true + and crashes.private_dr_fl = false + and crashes.crash_timestamp < now() - interval '14 days' order by id asc; + + +create or replace view socrata_export_people_view as ( + select + people.id as id, + people.unit_id as unit_id, + crashes.id as crash_pk, + crashes.cris_crash_id, + crashes.is_temp_record, + people.is_deleted, + people.is_primary_person, + people.prsn_age, + people.prsn_gndr_id as prsn_sex_id, + lookups.gndr.label as prsn_sex_label, + people.prsn_ethnicity_id, + lookups.drvr_ethncty.label as prsn_ethnicity_label, + people.prsn_injry_sev_id, + units.vz_mode_category_id as mode_id, + mode_categories.label as mode_desc, + to_char( + crashes.crash_timestamp, 'YYYY-MM-DD"T"HH24:MI:SS' + ) as crash_timestamp, + to_char( + crashes.crash_timestamp at time zone 'US/Central', + 'YYYY-MM-DD"T"HH24:MI:SS' + ) as crash_timestamp_ct + from people + left join public.units as units on people.unit_id = units.id + left join public.crashes as crashes on units.crash_pk = crashes.id + left join + lookups.mode_category as mode_categories + on units.vz_mode_category_id = mode_categories.id + left join + lookups.drvr_ethncty + on people.prsn_ethnicity_id = lookups.drvr_ethncty.id + left join + lookups.gndr + on people.prsn_gndr_id = lookups.gndr.id + where + people.is_deleted = false + and crashes.in_austin_full_purpose = true + and crashes.private_dr_fl = false + and crashes.is_deleted = false + and crashes.crash_timestamp < now() - interval '14 days' + and (people.prsn_injry_sev_id = 1 or people.prsn_injry_sev_id = 4) +); diff --git a/atd-toolbox/data_model/python/sql_templates/table_constraints.sql b/atd-toolbox/data_model/python/sql_templates/table_constraints.sql new file mode 100644 index 000000000..e5f4bc81f --- /dev/null +++ b/atd-toolbox/data_model/python/sql_templates/table_constraints.sql @@ -0,0 +1,5 @@ +alter table public.units_cris add constraint unique_units_cris unique (crash_pk, unit_nbr); +alter table public.units add constraint unique_units unique (crash_pk, unit_nbr) deferrable initially deferred; +alter table public.people_cris add constraint unique_people_cris unique (unit_id, prsn_nbr); +alter table public.people_edits add constraint unique_people_edits unique (unit_id, prsn_nbr); +alter table public.people add constraint unique_people unique (unit_id, prsn_nbr) deferrable initially deferred; diff --git a/atd-toolbox/data_model/python/sql_templates/unit_set_crash_id.sql b/atd-toolbox/data_model/python/sql_templates/unit_set_crash_id.sql new file mode 100644 index 000000000..417b730f7 --- /dev/null +++ b/atd-toolbox/data_model/python/sql_templates/unit_set_crash_id.sql @@ -0,0 +1,28 @@ +-- +-- handle a unit record insert by setting +-- the crash_pk column based on the cris_crash_id +-- +create or replace function public.units_cris_set_unit_id() +returns trigger +language plpgsql +as $$ +DECLARE + crash_record record; +BEGIN + if new.crash_pk is not null then + -- a user may manually create a unit record through a + -- nested Hasura mutation (eg when creating a temp record) + -- in which case the unit record will already have a crash_pk + return new; + end if; + SELECT INTO crash_record * + FROM public.crashes_cris where cris_crash_id = new.cris_crash_id; + new.crash_pk = crash_record.id; + RETURN new; +END; +$$; + +create trigger set_units_cris_crash_id +before insert on public.units_cris +for each row +execute procedure public.units_cris_set_unit_id(); diff --git a/atd-toolbox/data_model/python/sql_templates/vz_mode_category_generated_down.sql b/atd-toolbox/data_model/python/sql_templates/vz_mode_category_generated_down.sql new file mode 100644 index 000000000..a9abc3543 --- /dev/null +++ b/atd-toolbox/data_model/python/sql_templates/vz_mode_category_generated_down.sql @@ -0,0 +1,5 @@ +alter table units drop column vz_mode_category_id; + +alter table units add column vz_mode_category_id integer +references lookups.mode_category (id) +on update restrict on delete restrict; diff --git a/atd-toolbox/data_model/python/sql_templates/vz_mode_category_generated_up.sql b/atd-toolbox/data_model/python/sql_templates/vz_mode_category_generated_up.sql new file mode 100644 index 000000000..de79d7d92 --- /dev/null +++ b/atd-toolbox/data_model/python/sql_templates/vz_mode_category_generated_up.sql @@ -0,0 +1,53 @@ +alter table units drop column vz_mode_category_id; + +alter table units +add column vz_mode_category_id integer not null constraint vz_mode_category_fk references lookups.mode_category ( + id +) on +update +restrict on delete restrict generated always as ( + case + when unit_desc_id = 3 + then + 5 + when unit_desc_id = 5 + then + 6 + when unit_desc_id = 4 + then + 7 + when unit_desc_id = 2 + then + 8 + when unit_desc_id = 177 + then + ( + case + when veh_body_styl_id = 177 + then + 11 + else + 6 + end + ) + when unit_desc_id = 1 + then + ( + case + when veh_body_styl_id in (100, 104) + then + 1 + when veh_body_styl_id in (30, 69, 103, 106) + then + 2 + when veh_body_styl_id in (71, 90) + then + 3 + else + 4 + end + ) + else + 9 + end +) stored; diff --git a/atd-toolbox/data_model/python/tests/tests.sql b/atd-toolbox/data_model/python/tests/tests.sql new file mode 100644 index 000000000..29b376ab1 --- /dev/null +++ b/atd-toolbox/data_model/python/tests/tests.sql @@ -0,0 +1,26 @@ +-- location A187DE10F4, in_austin_full_purpose true, council_district 9, engineering_area 2 +insert into public.crashes_cris ( + crash_id, latitude, longitude, created_by, updated_by, cris_schema_version) + values (1, 30.2800238, -97.743370, 'cris', 'cris', '2023'); +insert into public.units_cris (unit_nbr, crash_id, cris_schema_version) values (1, 1, '2023'); +insert into public.people_cris (prsn_nbr, unit_nbr, crash_id, cris_schema_version) values (1, 1, 1, '2023'); +insert into public.charges_cris (prsn_nbr, unit_nbr, crash_id, charge, cris_schema_version) values (1, 1, 1, 'whatever', '2023'); + +-- location null, in_austin_full_purpose false, council_district null +update public.crashes_cris set active_school_zone_fl = TRUE, latitude = null where crash_id = 1; +update public.units_cris set vin = 'abcdefg' where id = 1; +update public.people_cris set drvr_city_name = 'austin' where id = 1; + +-- location AA7729AE83, in_austin_full_purpose true, council_district 7, engineering_area 2 +update public.crashes_edits set + active_school_zone_fl = FALSE, + latitude = 30.36444128, + longitude = -97.72865645, + updated_by = 'vz-user@austintexas.gov' + where crash_id = 1; +update public.units_edits set vin = 'hijklmno' where id = 1; +update public.people_edits set drvr_city_name = 'austin edited', prsn_exp_homelessness = true where id = 1; + +-- try to use custom lookup value in CRIS schema +-- this should fail due to people_cris_prsn_injry_sev_id_check +update public.people_cris set prsn_injry_sev_id = 99 where id = 1; diff --git a/atd-toolbox/data_model/python/utils.py b/atd-toolbox/data_model/python/utils.py new file mode 100755 index 000000000..6aba50364 --- /dev/null +++ b/atd-toolbox/data_model/python/utils.py @@ -0,0 +1,51 @@ +import json +from os import listdir, makedirs +from os.path import isfile, join +import shutil + +from settings import MIGRATIONS_PATH, BASE_MIGRATION_ID + + +def save_file(fname, data): + with open(fname, "w") as fout: + fout.write(data) + fout.write("\n") + + +def get_next_migration_id(interval=1000): + migration_dirs = [ + f for f in listdir(MIGRATIONS_PATH) if not isfile(join(MIGRATIONS_PATH, f)) + ] + migration_ids = [int(d.split("_")[0]) for d in migration_dirs] + return max(migration_ids) + interval + + +def make_migration_dir(migration_name): + migration_id = get_next_migration_id() + migration_path = join(MIGRATIONS_PATH, f"{migration_id}_{migration_name}") + makedirs(migration_path) + return migration_path + + +def delete_all_migrations(): + for f in listdir(MIGRATIONS_PATH): + f_path = join(MIGRATIONS_PATH, f) + if not isfile(f_path): + migration_id = int(f.split("_")[0]) + if migration_id > BASE_MIGRATION_ID: + print(f"Deleting migration: {f_path}") + shutil.rmtree(f_path) + + +def save_empty_down_migration(migration_path): + save_file(f"{migration_path}/down.sql", "select 0;") + + +def load_column_metadata(path="column_metadata.json"): + with open(path, "r") as fin: + return json.load(fin) + + +def load_lookups_metadata(path="lookup_table_metadata.json"): + with open(path, "r") as fin: + return json.load(fin) diff --git a/atd-toolbox/get_lookup_table_changes/README.md b/atd-toolbox/get_lookup_table_changes/README.md index 5ee465754..a88296c7b 100644 --- a/atd-toolbox/get_lookup_table_changes/README.md +++ b/atd-toolbox/get_lookup_table_changes/README.md @@ -16,8 +16,12 @@ Fill in the values using your credentials for the VZ read replica. ### Running the script -In order to run this script you need to have a recent CRIS lookup table export csv and provide the file path as an argument in the command line like so: +In order to run this script you need to have a recent CRIS lookup table export csv and provide the file path as an argument using the `--input` arg like so: `python3 get_lookup_table_changes.py --input path_to_extract.csv ` -Running `get_lookup_table_changes.py` can take awhile, so sit tight. Once the script is done, a file will be created in this directory called `up_migrations.sql` that contains all of the sql commands generated from running the script. The contents of this file can then be used to create a migration in the hasura console so we can track these huge changes. A file called `down_migrations.sql` is also created in this directory which you can use as the down migration. +Once the script is done, a file will be created in this directory called `up_migrations.sql` that contains all of the sql commands generated from running the script. + +**_WARNING_** _- You need to manually validate that the tables proposed to be dropped should actually be dropped. We don't want to accidentally drop a custom lookup table. Same with the deletions from lookup tables, we don't want to delete custom lookup values on accident either. If you need to remove anything, make sure to remove it from the down migration as well._ + +The contents of the up migrations file can then be used to create a migration in the hasura console so we can track these huge changes. A file called `down_migrations.sql` is also created in this directory which you can use as the down migration. diff --git a/atd-toolbox/get_lookup_table_changes/get_lookup_table_changes.py b/atd-toolbox/get_lookup_table_changes/get_lookup_table_changes.py index fae4ba782..24a30b142 100644 --- a/atd-toolbox/get_lookup_table_changes/get_lookup_table_changes.py +++ b/atd-toolbox/get_lookup_table_changes/get_lookup_table_changes.py @@ -33,35 +33,61 @@ def get_pg_connection(): ) -def table_exists(conn, table_name): +def get_db_lkp_tables(conn): """ - Checks if a table exists in a PostgreSQL database. + Gets a list of all the lookup tables we have in our database that have the CRIS lkp + prefix/suffix pattern. Args: conn (psycopg2.extensions.connection): A connection to the PostgreSQL database. - table_name (str): The name of the table to check for existence. Returns: - bool: True if the table exists, False otherwise. + list: Containing the lookup table names. """ try: with conn.cursor() as cur: cur.execute( """ - SELECT EXISTS ( - SELECT FROM information_schema.tables - WHERE table_schema = 'public' - AND table_name = %s - ); + SELECT table_name + FROM information_schema.tables + WHERE table_name LIKE 'atd_txdot%lkp' + AND table_schema = 'public' + AND table_type = 'BASE TABLE'; """, - (table_name,), ) - result = cur.fetchone() - return result[0] + result = [record[0] for record in cur.fetchall()] + return result except Exception as e: - print(f"Error checking table existence: {e}") + print(f"Error fetching lookup table names: {e}") + return False + + +def get_lkp_values(conn, table_name, name_component): + """ + Returns a dict where each key is the lkp id and the value + is the lkp desc. + + Args: + conn (psycopg2.extensions.connection): A connection to the PostgreSQL database. + + Returns: + dict: Containing the lookup id/desc pairs for the provided table. + """ + try: + with conn.cursor() as cur: + cur.execute( + f""" + SELECT {name_component}_id, {name_component}_desc + FROM {table_name}; + """, + ) + result = cur.fetchall() + return dict(result) + + except Exception as e: + print(f"Error fetching lookup dict of {table_name}: {e}") return False @@ -79,13 +105,15 @@ def read_and_group_csv(file_path): next(csvreader) for row in csvreader: - key = row[0] - inner_dict = {"id": int(row[1]), "description": row[2]} + id_name = row[0] + name = re.search(r"(^.*)_ID$", id_name) + name_component = name.group(1).lower() + table_name = "atd_txdot__" + name_component + "_lkp" - if key not in grouped_data: - grouped_data[key] = [] + if table_name not in grouped_data: + grouped_data[table_name] = {} - grouped_data[key].append(inner_dict) + grouped_data[table_name][int(row[1])] = row[2] return grouped_data @@ -105,90 +133,109 @@ def new_table(name): def main(file_path): - data = read_and_group_csv(file_path) + # Group the lkp extract into a dict of dicts + extract_data = read_and_group_csv(file_path) # Pretty-print the grouped data as JSON - # print(json.dumps(data, indent=4)) + # print(json.dumps(extract_data, indent=4)) pg = get_pg_connection() cursor = pg.cursor(cursor_factory=psycopg2.extras.RealDictCursor) + + # Get a list of the lkp tables we have in our db + db_tables = get_db_lkp_tables(pg) + # These are lkp tables we have in our db that aren't in the extract and are possibly cruft + tables_to_delete = list(set(db_tables) - set(list(extract_data.keys()))) + changes = [] down_changes = [] - for table in data: + for table in tables_to_delete: + print("❓Lookup table ", table, " found in database and not in extract") + print() + drop_table = f"drop table public.{table};" + changes.append(f"\n-- Dropping table {table}") + changes.append(drop_table) + + for table in extract_data: # here are tables which are special cases # The states (as in United States) is non-uniform and does not need inspection. # The counties are equally fixed. - if table in ["STATE_ID", "CNTY_ID"]: + if table in ["atd_txdot__state_lkp", "atd_txdot__cnty_lkp"]: continue - - match = re.search(r"(^.*)_ID$", table) - name_component = match.group(1).lower() + name_component = table.removeprefix("atd_txdot__").removesuffix("_lkp") + extract_table_dict = extract_data[table] print() - print("👀Looking into table: ", name_component) + print("👀Looking into table: ", table) - table_name = "atd_txdot__" + name_component + "_lkp" - exists = table_exists(pg, table_name) - if not exists: - print("💥 Missing table: ", table_name) - changes.append(f"\n-- Adding table {table_name}") + if table not in db_tables: + print("💥 Missing table: ", table) + changes.append(f"\n-- Adding table {table}") changes.append(new_table(name_component)) - down_changes.append(f"\n-- Dropping table {table_name}") - new_table_down = f"drop table if exists public.{table_name};" + down_changes.append(f"\n-- Dropping table {table}") + new_table_down = f"drop table if exists public.{table};" down_changes.append(new_table_down) - for record in data[table]: - # We do not have a record on file with this ID - print(f"❓ Id {str(record['id'])} not found in {table_name}") - print(" CSV Value: ", record["description"]) - print() - insert = f"insert into public.{table_name} ({name_component}_id, {name_component}_desc) values ({str(record['id'])}, '{escape_single_quotes(record['description'])}');" + for key in extract_table_dict: + insert = f"insert into public.{table} ({name_component}_id, {name_component}_desc) values ({str(key)}, '{escape_single_quotes(extract_table_dict[key])}');" changes.append(insert) # Dont need down changes here because the down is just deleting the table - else: + # Get the values we have for this lkp table in our db as a dict of ids/descs + our_table_dict = get_lkp_values(pg, table, name_component) + # These variables just to help with formatting the comments printed to output is_first_change = True - for record in data[table]: - sql = f""" - select {name_component}_id as id, {name_component}_desc as description - from {table_name} where {name_component}_id = {str(record['id'])}; - """ - cursor.execute(sql) - db_result = cursor.fetchone() - if db_result: + is_first_deletion = True + for key in extract_table_dict: + if key in our_table_dict: # We have a record on file with this ID - if db_result["description"] == record["description"]: - # print(f"✅ Value \"{record['description']}\" with id {str(record['id'])} found in {table_name}") + if our_table_dict[key] == extract_table_dict[key]: + # print(f"✅ Value \"{extract_table_dict[key]}\" with id {str(key)} found in {table}") pass else: print( - f"❌ Id {str(record['id'])} found in {table_name} has a description mismatch:" + f"❌ Id {str(key)} found in {table} has a description mismatch:" ) - print(" CSV Value: ", record["description"]) - print(" DB Value: ", db_result["description"]) + print(" CSV Value: ", extract_table_dict[key]) + print(" DB Value: ", our_table_dict[key]) print() - update = f"update public.{table_name} set {name_component}_desc = '{escape_single_quotes(record['description'])}' where {name_component}_id = {str(record['id'])};" + update = f"update public.{table} set {name_component}_desc = '{escape_single_quotes(extract_table_dict[key])}' where {name_component}_id = {str(key)};" if is_first_change == True: - changes.append(f"\n-- Changes to table {table_name}") - down_changes.append(f"\n-- Changes to table {table_name}") + changes.append(f"\n-- Changes to table {table}") + down_changes.append(f"\n-- Changes to table {table}") changes.append(update) - update_down = f"update public.{table_name} set {name_component}_desc = '{db_result['description']}' where {name_component}_id = {str(record['id'])};" + update_down = f"update public.{table} set {name_component}_desc = '{our_table_dict[key]}' where {name_component}_id = {str(key)};" down_changes.append(update_down) is_first_change = False else: # We do not have a record on file with this ID - # print(f"Value \"{record['description']}\" with id {str(record['id'])} not found in {table_name}") - print(f"❓ Id {str(record['id'])} not found in {table_name}") - print(" CSV Value: ", record["description"]) + print(f"❓ Id {str(key)} not found in {table}") + print(" CSV Value: ", extract_table_dict[key]) print() - insert = f"insert into public.{table_name} ({name_component}_id, {name_component}_desc) values ({str(record['id'])}, '{escape_single_quotes(record['description'])}');" + insert = f"insert into public.{table} ({name_component}_id, {name_component}_desc) values ({str(key)}, '{escape_single_quotes(extract_table_dict[key])}');" if is_first_change == True: - changes.append(f"\n-- Changes to table {table_name}") - down_changes.append(f"\n-- Changes to table {table_name}") + changes.append(f"\n-- Changes to table {table}") + down_changes.append(f"\n-- Changes to table {table}") changes.append(insert) - insert_down = f"delete from public.{table_name} where {name_component}_id = {str(record['id'])};" + insert_down = f"delete from public.{table} where {name_component}_id = {str(key)};" down_changes.append(insert_down) is_first_change = False + # Now check for any values in our lookup tables that aren't in the extract and are possibly crufty + for key in our_table_dict: + if key not in extract_table_dict: + print( + f"❓ Id {str(key)} in our database table not found in CRIS extract for {table}" + ) + print(" DB Value: ", our_table_dict[key]) + print() + delete = f"delete from public.{table} where {name_component}_id = {str(key)};" + if is_first_deletion == True: + changes.append(f"\n-- Deletions from table {table}") + down_changes.append(f"\n-- Undo deletions from table {table}") + changes.append(delete) + delete_down = f"insert into public.{table} ({name_component}_id, {name_component}_desc) values ({str(key)}, '{escape_single_quotes(our_table_dict[key])}');" + down_changes.append(delete_down) + is_first_deletion = False print("\n🛠️ Here are the changes to be made:\n") print("\n".join(changes).strip()) diff --git a/atd-toolbox/insert_needed_lkp_tables/.gitignore b/atd-toolbox/insert_needed_lkp_tables/.gitignore new file mode 100644 index 000000000..1bb9dfdb2 --- /dev/null +++ b/atd-toolbox/insert_needed_lkp_tables/.gitignore @@ -0,0 +1,2 @@ +extract +*.sql diff --git a/atd-toolbox/insert_needed_lkp_tables/insert_lkp_tables.py b/atd-toolbox/insert_needed_lkp_tables/insert_lkp_tables.py new file mode 100644 index 000000000..99b06ca00 --- /dev/null +++ b/atd-toolbox/insert_needed_lkp_tables/insert_lkp_tables.py @@ -0,0 +1,150 @@ +#!/usr/bin/env python + +import csv +import re +import argparse + + +def read_and_group_csv(file_path): + """ + Returns a dict where each key is the lookup table name and the value + is a dict of all the lookup ids/descs for that lookup table + """ + grouped_data = {} + + with open(file_path, newline="") as csvfile: + csvreader = csv.reader(csvfile, delimiter=",", quotechar='"') + + # Skip the first row (header) + next(csvreader) + + for row in csvreader: + id_name = row[0] + name = re.search(r"(^.*)_ID$", id_name) + name_component = name.group(1).lower() + table_name = name_component + "_lkp" + + if table_name not in grouped_data: + grouped_data[table_name] = {} + + grouped_data[table_name][int(row[1])] = row[2] + + return grouped_data + + +# Warn the user if we have any typos in the needed tables list or for some reason tables that aren't in the extract at all +def check_if_needed_tables_in_extract(needed_lkp_tables, extract_data): + print( + "Checking if all tables in needed tables list can be found in the extract...\n" + ) + tables_not_found_in_extract = [] + for table in needed_lkp_tables: + if table not in list(extract_data.keys()): + tables_not_found_in_extract.append(table) + if len(tables_not_found_in_extract) > 0: + print( + "WARNING: The following tables were not found in the extract. Double check the list for mistakes or typos.\n" + ) + print(tables_not_found_in_extract, "\n") + if ( + input("Do you want to continue and generate migration files? [y/n]\n") + != "y" + ): + quit() + + +def escape_single_quotes(input_string): + return input_string.replace("'", "''") + + +def new_table(name): + return f""" + create table db.{name} ( + id integer primary key, + label text not null + ); + """ + + +def main(file_path): + # Group the lkp extract into a dict of dicts + extract_data = read_and_group_csv(file_path) + + # This is our current list of lkp_tables to add + needed_lkp_tables = [ + "agency_lkp", + "autonomous_level_engaged_lkp", + "autonomous_unit_lkp", + "city_lkp", + "cnty_lkp", + "collsn_lkp", + "contrib_factr_lkp", + "drvr_ethncty_lkp", + "e_scooter_lkp", + "gndr_lkp", + "harm_evnt_lkp", + "helmet_lkp", + "injry_sev_lkp", + "intrsct_relat_lkp", + "light_cond_lkp", + "movt_lkp", + "obj_struck_lkp", + "occpnt_pos_lkp", + "pbcat_pedalcyclist_lkp", + "pbcat_pedestrian_lkp", + "pedalcyclist_action_lkp", + "pedestrian_action_lkp", + "prsn_type_lkp", + "rest_lkp", + "road_part_lkp", + "rwy_sys_lkp", + "specimen_type_lkp", + "substnc_cat_lkp", + "substnc_tst_result_lkp", + "surf_cond_lkp", + "surf_type_lkp", + "traffic_cntl_lkp", + "trvl_dir_lkp", + "unit_desc_lkp", + "veh_body_styl_lkp", + "veh_damage_description_lkp", + "veh_damage_severity_lkp", + "veh_direction_of_force_lkp", + "veh_make_lkp", + "veh_mod_lkp", + "wthr_cond_lkp", + ] + + changes = [] + down_changes = [] + + check_if_needed_tables_in_extract(needed_lkp_tables, extract_data) + + for table in extract_data: + if table in needed_lkp_tables: + extract_table_dict = extract_data[table] + changes.append(f"\n-- Adding table {table}") + changes.append(new_table(table)) + down_changes.append(f"\n-- Dropping table {table}") + new_table_down = f"drop table if exists db.{table};" + down_changes.append(new_table_down) + for key in extract_table_dict: + insert = f"insert into db.{table} (id, label) values ({str(key)}, '{escape_single_quotes(extract_table_dict[key])}');" + changes.append(insert) + + outfile = open("up_migration.sql", "w") + outfile.write("\n".join(changes).strip()) + outfile.close() + + outfile_down = open("down_migration.sql", "w") + outfile_down.write("\n".join(down_changes).strip()) + outfile_down.close() + + +if __name__ == "__main__": + parser = argparse.ArgumentParser() + parser.add_argument("--input", help="extract file path") + args = parser.parse_args() + file_path = args.input + + main(file_path) diff --git a/atd-vzd/config.yaml b/atd-vzd/config.yaml index 38848a7fa..493feb993 100644 --- a/atd-vzd/config.yaml +++ b/atd-vzd/config.yaml @@ -1,6 +1,5 @@ version: 3 endpoint: http://localhost:8084 -admin_secret: thisisasecret metadata_directory: metadata actions: kind: synchronous diff --git a/atd-vzd/metadata/databases/default/functions/functions.yaml b/atd-vzd/metadata/databases/default/functions/functions.yaml index 61a3825d7..abfb10caa 100644 --- a/atd-vzd/metadata/databases/default/functions/functions.yaml +++ b/atd-vzd/metadata/databases/default/functions/functions.yaml @@ -1,8 +1,4 @@ -- "!include public_find_cr3_collisions_for_location.yaml" - "!include public_find_crash_in_jurisdiction.yaml" - "!include public_find_crash_jurisdictions.yaml" - "!include public_find_crashes_in_jurisdiction.yaml" -- "!include public_find_noncr3_collisions_for_location.yaml" -- "!include public_find_service_road_location_for_centerline_crash.yaml" - "!include public_get_location_totals.yaml" -- "!include public_search_atd_location_crashes.yaml" diff --git a/atd-vzd/metadata/databases/default/tables/lookups_agency.yaml b/atd-vzd/metadata/databases/default/tables/lookups_agency.yaml new file mode 100644 index 000000000..9ec7311f2 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_agency.yaml @@ -0,0 +1,25 @@ +table: + name: agency + schema: lookups +array_relationships: + - name: crashes_cris + using: + foreign_key_constraint_on: + column: investigat_agency_id + table: + name: crashes_cris + schema: public + - name: crashes_edits + using: + foreign_key_constraint_on: + column: investigat_agency_id + table: + name: crashes_edits + schema: public + - name: crashess + using: + foreign_key_constraint_on: + column: investigat_agency_id + table: + name: crashes + schema: public diff --git a/atd-vzd/metadata/databases/default/tables/lookups_autonomous_level_engaged.yaml b/atd-vzd/metadata/databases/default/tables/lookups_autonomous_level_engaged.yaml new file mode 100644 index 000000000..f523febf4 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_autonomous_level_engaged.yaml @@ -0,0 +1,25 @@ +table: + name: autonomous_level_engaged + schema: lookups +array_relationships: + - name: units + using: + foreign_key_constraint_on: + column: rpt_autonomous_level_engaged_id + table: + name: units + schema: public + - name: units_cris + using: + foreign_key_constraint_on: + column: rpt_autonomous_level_engaged_id + table: + name: units_cris + schema: public + - name: units_edits + using: + foreign_key_constraint_on: + column: rpt_autonomous_level_engaged_id + table: + name: units_edits + schema: public diff --git a/atd-vzd/metadata/databases/default/tables/lookups_autonomous_unit.yaml b/atd-vzd/metadata/databases/default/tables/lookups_autonomous_unit.yaml new file mode 100644 index 000000000..34ae1862a --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_autonomous_unit.yaml @@ -0,0 +1,25 @@ +table: + name: autonomous_unit + schema: lookups +array_relationships: + - name: units + using: + foreign_key_constraint_on: + column: autonomous_unit_id + table: + name: units + schema: public + - name: units_cris + using: + foreign_key_constraint_on: + column: autonomous_unit_id + table: + name: units_cris + schema: public + - name: units_edits + using: + foreign_key_constraint_on: + column: autonomous_unit_id + table: + name: units_edits + schema: public diff --git a/atd-vzd/metadata/databases/default/tables/lookups_city.yaml b/atd-vzd/metadata/databases/default/tables/lookups_city.yaml new file mode 100644 index 000000000..be220e261 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_city.yaml @@ -0,0 +1,50 @@ +table: + name: city + schema: lookups +array_relationships: + - name: crashes_cris + using: + foreign_key_constraint_on: + column: rpt_city_id + table: + name: crashes_cris + schema: public + - name: crashes_edits + using: + foreign_key_constraint_on: + column: rpt_city_id + table: + name: crashes_edits + schema: public + - name: crashess + using: + foreign_key_constraint_on: + column: rpt_city_id + table: + name: crashes + schema: public +select_permissions: + - role: editor + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: readonly + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - id + - label + - source + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/lookups_cnty.yaml b/atd-vzd/metadata/databases/default/tables/lookups_cnty.yaml new file mode 100644 index 000000000..99a096a93 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_cnty.yaml @@ -0,0 +1,25 @@ +table: + name: cnty + schema: lookups +array_relationships: + - name: crashes_cris + using: + foreign_key_constraint_on: + column: rpt_cris_cnty_id + table: + name: crashes_cris + schema: public + - name: crashes_edits + using: + foreign_key_constraint_on: + column: rpt_cris_cnty_id + table: + name: crashes_edits + schema: public + - name: crashess + using: + foreign_key_constraint_on: + column: rpt_cris_cnty_id + table: + name: crashes + schema: public diff --git a/atd-vzd/metadata/databases/default/tables/lookups_collsn.yaml b/atd-vzd/metadata/databases/default/tables/lookups_collsn.yaml new file mode 100644 index 000000000..809b51180 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_collsn.yaml @@ -0,0 +1,50 @@ +table: + name: collsn + schema: lookups +array_relationships: + - name: crashes_cris + using: + foreign_key_constraint_on: + column: fhe_collsn_id + table: + name: crashes_cris + schema: public + - name: crashes_edits + using: + foreign_key_constraint_on: + column: fhe_collsn_id + table: + name: crashes_edits + schema: public + - name: crashess + using: + foreign_key_constraint_on: + column: fhe_collsn_id + table: + name: crashes + schema: public +select_permissions: + - role: editor + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: readonly + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - id + - label + - source + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/lookups_contrib_factr.yaml b/atd-vzd/metadata/databases/default/tables/lookups_contrib_factr.yaml new file mode 100644 index 000000000..aa3900a7c --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_contrib_factr.yaml @@ -0,0 +1,134 @@ +table: + name: contrib_factr + schema: lookups +array_relationships: + - name: units + using: + foreign_key_constraint_on: + column: contrib_factr_1_id + table: + name: units + schema: public + - name: unitsCrisByContribFactr2Id + using: + foreign_key_constraint_on: + column: contrib_factr_2_id + table: + name: units_cris + schema: public + - name: unitsCrisByContribFactr3Id + using: + foreign_key_constraint_on: + column: contrib_factr_3_id + table: + name: units_cris + schema: public + - name: unitsCrisByContribFactrP1Id + using: + foreign_key_constraint_on: + column: contrib_factr_p1_id + table: + name: units_cris + schema: public + - name: unitsCrisByContribFactrP2Id + using: + foreign_key_constraint_on: + column: contrib_factr_p2_id + table: + name: units_cris + schema: public + - name: unitsEditsByContribFactr2Id + using: + foreign_key_constraint_on: + column: contrib_factr_2_id + table: + name: units_edits + schema: public + - name: unitsEditsByContribFactr3Id + using: + foreign_key_constraint_on: + column: contrib_factr_3_id + table: + name: units_edits + schema: public + - name: unitsEditsByContribFactrP1Id + using: + foreign_key_constraint_on: + column: contrib_factr_p1_id + table: + name: units_edits + schema: public + - name: unitsEditsByContribFactrP2Id + using: + foreign_key_constraint_on: + column: contrib_factr_p2_id + table: + name: units_edits + schema: public + - name: unitsUnifiedsByContribFactr2Id + using: + foreign_key_constraint_on: + column: contrib_factr_2_id + table: + name: units + schema: public + - name: unitsUnifiedsByContribFactr3Id + using: + foreign_key_constraint_on: + column: contrib_factr_3_id + table: + name: units + schema: public + - name: unitsUnifiedsByContribFactrP1Id + using: + foreign_key_constraint_on: + column: contrib_factr_p1_id + table: + name: units + schema: public + - name: unitsUnifiedsByContribFactrP2Id + using: + foreign_key_constraint_on: + column: contrib_factr_p2_id + table: + name: units + schema: public + - name: units_cris + using: + foreign_key_constraint_on: + column: contrib_factr_1_id + table: + name: units_cris + schema: public + - name: units_edits + using: + foreign_key_constraint_on: + column: contrib_factr_1_id + table: + name: units_edits + schema: public +select_permissions: + - role: editor + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: readonly + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - id + - label + - source + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/lookups_drvr_ethncty.yaml b/atd-vzd/metadata/databases/default/tables/lookups_drvr_ethncty.yaml new file mode 100644 index 000000000..6e3fbd1e6 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_drvr_ethncty.yaml @@ -0,0 +1,50 @@ +table: + name: drvr_ethncty + schema: lookups +array_relationships: + - name: people_cris + using: + foreign_key_constraint_on: + column: prsn_ethnicity_id + table: + name: people_cris + schema: public + - name: people_edits + using: + foreign_key_constraint_on: + column: prsn_ethnicity_id + table: + name: people_edits + schema: public + - name: peoples + using: + foreign_key_constraint_on: + column: prsn_ethnicity_id + table: + name: people + schema: public +select_permissions: + - role: editor + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: readonly + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - id + - label + - source + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/lookups_e_scooter.yaml b/atd-vzd/metadata/databases/default/tables/lookups_e_scooter.yaml new file mode 100644 index 000000000..ec6421043 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_e_scooter.yaml @@ -0,0 +1,25 @@ +table: + name: e_scooter + schema: lookups +array_relationships: + - name: units + using: + foreign_key_constraint_on: + column: e_scooter_id + table: + name: units + schema: public + - name: units_cris + using: + foreign_key_constraint_on: + column: e_scooter_id + table: + name: units_cris + schema: public + - name: units_edits + using: + foreign_key_constraint_on: + column: e_scooter_id + table: + name: units_edits + schema: public diff --git a/atd-vzd/metadata/databases/default/tables/lookups_gndr.yaml b/atd-vzd/metadata/databases/default/tables/lookups_gndr.yaml new file mode 100644 index 000000000..08c828bf2 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_gndr.yaml @@ -0,0 +1,50 @@ +table: + name: gndr + schema: lookups +array_relationships: + - name: people_cris + using: + foreign_key_constraint_on: + column: prsn_gndr_id + table: + name: people_cris + schema: public + - name: people_edits + using: + foreign_key_constraint_on: + column: prsn_gndr_id + table: + name: people_edits + schema: public + - name: peoples + using: + foreign_key_constraint_on: + column: prsn_gndr_id + table: + name: people + schema: public +select_permissions: + - role: editor + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: readonly + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - id + - label + - source + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/lookups_harm_evnt.yaml b/atd-vzd/metadata/databases/default/tables/lookups_harm_evnt.yaml new file mode 100644 index 000000000..d4279ce3a --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_harm_evnt.yaml @@ -0,0 +1,25 @@ +table: + name: harm_evnt + schema: lookups +array_relationships: + - name: units + using: + foreign_key_constraint_on: + column: first_harm_evt_inv_id + table: + name: units + schema: public + - name: units_cris + using: + foreign_key_constraint_on: + column: first_harm_evt_inv_id + table: + name: units_cris + schema: public + - name: units_edits + using: + foreign_key_constraint_on: + column: first_harm_evt_inv_id + table: + name: units_edits + schema: public diff --git a/atd-vzd/metadata/databases/default/tables/lookups_helmet.yaml b/atd-vzd/metadata/databases/default/tables/lookups_helmet.yaml new file mode 100644 index 000000000..3eb429f12 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_helmet.yaml @@ -0,0 +1,25 @@ +table: + name: helmet + schema: lookups +array_relationships: + - name: people_cris + using: + foreign_key_constraint_on: + column: prsn_helmet_id + table: + name: people_cris + schema: public + - name: people_edits + using: + foreign_key_constraint_on: + column: prsn_helmet_id + table: + name: people_edits + schema: public + - name: peoples + using: + foreign_key_constraint_on: + column: prsn_helmet_id + table: + name: people + schema: public diff --git a/atd-vzd/metadata/databases/default/tables/lookups_injry_sev.yaml b/atd-vzd/metadata/databases/default/tables/lookups_injry_sev.yaml new file mode 100644 index 000000000..482c6a0ff --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_injry_sev.yaml @@ -0,0 +1,50 @@ +table: + name: injry_sev + schema: lookups +array_relationships: + - name: people_cris + using: + foreign_key_constraint_on: + column: prsn_injry_sev_id + table: + name: people_cris + schema: public + - name: people_edits + using: + foreign_key_constraint_on: + column: prsn_injry_sev_id + table: + name: people_edits + schema: public + - name: peoples + using: + foreign_key_constraint_on: + column: prsn_injry_sev_id + table: + name: people + schema: public +select_permissions: + - role: editor + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: readonly + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - id + - label + - source + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/lookups_intrsct_relat.yaml b/atd-vzd/metadata/databases/default/tables/lookups_intrsct_relat.yaml new file mode 100644 index 000000000..fa551af62 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_intrsct_relat.yaml @@ -0,0 +1,25 @@ +table: + name: intrsct_relat + schema: lookups +array_relationships: + - name: crashes_cris + using: + foreign_key_constraint_on: + column: intrsct_relat_id + table: + name: crashes_cris + schema: public + - name: crashes_edits + using: + foreign_key_constraint_on: + column: intrsct_relat_id + table: + name: crashes_edits + schema: public + - name: crashess + using: + foreign_key_constraint_on: + column: intrsct_relat_id + table: + name: crashes + schema: public diff --git a/atd-vzd/metadata/databases/default/tables/lookups_light_cond.yaml b/atd-vzd/metadata/databases/default/tables/lookups_light_cond.yaml new file mode 100644 index 000000000..55b9c419a --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_light_cond.yaml @@ -0,0 +1,50 @@ +table: + name: light_cond + schema: lookups +array_relationships: + - name: crashes_cris + using: + foreign_key_constraint_on: + column: light_cond_id + table: + name: crashes_cris + schema: public + - name: crashes_edits + using: + foreign_key_constraint_on: + column: light_cond_id + table: + name: crashes_edits + schema: public + - name: crashess + using: + foreign_key_constraint_on: + column: light_cond_id + table: + name: crashes + schema: public +select_permissions: + - role: editor + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: readonly + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - id + - label + - source + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/lookups_mode_category.yaml b/atd-vzd/metadata/databases/default/tables/lookups_mode_category.yaml new file mode 100644 index 000000000..2a21ab8c7 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_mode_category.yaml @@ -0,0 +1,11 @@ +table: + name: mode_category + schema: lookups +array_relationships: + - name: units + using: + foreign_key_constraint_on: + column: vz_mode_category_id + table: + name: units + schema: public diff --git a/atd-vzd/metadata/databases/default/tables/lookups_movt.yaml b/atd-vzd/metadata/databases/default/tables/lookups_movt.yaml new file mode 100644 index 000000000..2981a5077 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_movt.yaml @@ -0,0 +1,43 @@ +table: + name: movt + schema: lookups +array_relationships: + - name: units + using: + foreign_key_constraint_on: + column: movement_id + table: + name: units + schema: public + - name: units_edits + using: + foreign_key_constraint_on: + column: movement_id + table: + name: units_edits + schema: public +select_permissions: + - role: editor + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: readonly + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - id + - label + - source + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/lookups_obj_struck.yaml b/atd-vzd/metadata/databases/default/tables/lookups_obj_struck.yaml new file mode 100644 index 000000000..b2dcf0249 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_obj_struck.yaml @@ -0,0 +1,50 @@ +table: + name: obj_struck + schema: lookups +array_relationships: + - name: crashes_cris + using: + foreign_key_constraint_on: + column: obj_struck_id + table: + name: crashes_cris + schema: public + - name: crashes_edits + using: + foreign_key_constraint_on: + column: obj_struck_id + table: + name: crashes_edits + schema: public + - name: crashess + using: + foreign_key_constraint_on: + column: obj_struck_id + table: + name: crashes + schema: public +select_permissions: + - role: editor + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: readonly + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - id + - label + - source + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/lookups_occpnt_pos.yaml b/atd-vzd/metadata/databases/default/tables/lookups_occpnt_pos.yaml new file mode 100644 index 000000000..6771863d2 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_occpnt_pos.yaml @@ -0,0 +1,25 @@ +table: + name: occpnt_pos + schema: lookups +array_relationships: + - name: people_cris + using: + foreign_key_constraint_on: + column: prsn_occpnt_pos_id + table: + name: people_cris + schema: public + - name: people_edits + using: + foreign_key_constraint_on: + column: prsn_occpnt_pos_id + table: + name: people_edits + schema: public + - name: peoples + using: + foreign_key_constraint_on: + column: prsn_occpnt_pos_id + table: + name: people + schema: public diff --git a/atd-vzd/metadata/databases/default/tables/lookups_pbcat_pedalcyclist.yaml b/atd-vzd/metadata/databases/default/tables/lookups_pbcat_pedalcyclist.yaml new file mode 100644 index 000000000..e4506cfa3 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_pbcat_pedalcyclist.yaml @@ -0,0 +1,25 @@ +table: + name: pbcat_pedalcyclist + schema: lookups +array_relationships: + - name: units + using: + foreign_key_constraint_on: + column: pbcat_pedalcyclist_id + table: + name: units + schema: public + - name: units_cris + using: + foreign_key_constraint_on: + column: pbcat_pedalcyclist_id + table: + name: units_cris + schema: public + - name: units_edits + using: + foreign_key_constraint_on: + column: pbcat_pedalcyclist_id + table: + name: units_edits + schema: public diff --git a/atd-vzd/metadata/databases/default/tables/lookups_pbcat_pedestrian.yaml b/atd-vzd/metadata/databases/default/tables/lookups_pbcat_pedestrian.yaml new file mode 100644 index 000000000..5793ee40f --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_pbcat_pedestrian.yaml @@ -0,0 +1,25 @@ +table: + name: pbcat_pedestrian + schema: lookups +array_relationships: + - name: units + using: + foreign_key_constraint_on: + column: pbcat_pedestrian_id + table: + name: units + schema: public + - name: units_cris + using: + foreign_key_constraint_on: + column: pbcat_pedestrian_id + table: + name: units_cris + schema: public + - name: units_edits + using: + foreign_key_constraint_on: + column: pbcat_pedestrian_id + table: + name: units_edits + schema: public diff --git a/atd-vzd/metadata/databases/default/tables/lookups_pedalcyclist_action.yaml b/atd-vzd/metadata/databases/default/tables/lookups_pedalcyclist_action.yaml new file mode 100644 index 000000000..52d59a1ae --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_pedalcyclist_action.yaml @@ -0,0 +1,25 @@ +table: + name: pedalcyclist_action + schema: lookups +array_relationships: + - name: units + using: + foreign_key_constraint_on: + column: pedalcyclist_action_id + table: + name: units + schema: public + - name: units_cris + using: + foreign_key_constraint_on: + column: pedalcyclist_action_id + table: + name: units_cris + schema: public + - name: units_edits + using: + foreign_key_constraint_on: + column: pedalcyclist_action_id + table: + name: units_edits + schema: public diff --git a/atd-vzd/metadata/databases/default/tables/lookups_pedestrian_action.yaml b/atd-vzd/metadata/databases/default/tables/lookups_pedestrian_action.yaml new file mode 100644 index 000000000..a25155b81 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_pedestrian_action.yaml @@ -0,0 +1,25 @@ +table: + name: pedestrian_action + schema: lookups +array_relationships: + - name: units + using: + foreign_key_constraint_on: + column: pedestrian_action_id + table: + name: units + schema: public + - name: units_cris + using: + foreign_key_constraint_on: + column: pedestrian_action_id + table: + name: units_cris + schema: public + - name: units_edits + using: + foreign_key_constraint_on: + column: pedestrian_action_id + table: + name: units_edits + schema: public diff --git a/atd-vzd/metadata/databases/default/tables/lookups_prsn_type.yaml b/atd-vzd/metadata/databases/default/tables/lookups_prsn_type.yaml new file mode 100644 index 000000000..1c5335da7 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_prsn_type.yaml @@ -0,0 +1,50 @@ +table: + name: prsn_type + schema: lookups +array_relationships: + - name: people_cris + using: + foreign_key_constraint_on: + column: prsn_type_id + table: + name: people_cris + schema: public + - name: people_edits + using: + foreign_key_constraint_on: + column: prsn_type_id + table: + name: people_edits + schema: public + - name: peoples + using: + foreign_key_constraint_on: + column: prsn_type_id + table: + name: people + schema: public +select_permissions: + - role: editor + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: readonly + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - id + - label + - source + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/lookups_rest.yaml b/atd-vzd/metadata/databases/default/tables/lookups_rest.yaml new file mode 100644 index 000000000..800b94dbb --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_rest.yaml @@ -0,0 +1,25 @@ +table: + name: rest + schema: lookups +array_relationships: + - name: people_cris + using: + foreign_key_constraint_on: + column: prsn_rest_id + table: + name: people_cris + schema: public + - name: people_edits + using: + foreign_key_constraint_on: + column: prsn_rest_id + table: + name: people_edits + schema: public + - name: peoples + using: + foreign_key_constraint_on: + column: prsn_rest_id + table: + name: people + schema: public diff --git a/atd-vzd/metadata/databases/default/tables/lookups_road_part.yaml b/atd-vzd/metadata/databases/default/tables/lookups_road_part.yaml new file mode 100644 index 000000000..7c083d79e --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_road_part.yaml @@ -0,0 +1,71 @@ +table: + name: road_part + schema: lookups +array_relationships: + - name: crashesCrisByRptSecRoadPartId + using: + foreign_key_constraint_on: + column: rpt_sec_road_part_id + table: + name: crashes_cris + schema: public + - name: crashesEditsByRptSecRoadPartId + using: + foreign_key_constraint_on: + column: rpt_sec_road_part_id + table: + name: crashes_edits + schema: public + - name: crashesUnifiedsByRptSecRoadPartId + using: + foreign_key_constraint_on: + column: rpt_sec_road_part_id + table: + name: crashes + schema: public + - name: crashes_cris + using: + foreign_key_constraint_on: + column: rpt_road_part_id + table: + name: crashes_cris + schema: public + - name: crashes_edits + using: + foreign_key_constraint_on: + column: rpt_road_part_id + table: + name: crashes_edits + schema: public + - name: crashess + using: + foreign_key_constraint_on: + column: rpt_road_part_id + table: + name: crashes + schema: public +select_permissions: + - role: editor + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: readonly + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - id + - label + - source + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/lookups_rwy_sys.yaml b/atd-vzd/metadata/databases/default/tables/lookups_rwy_sys.yaml new file mode 100644 index 000000000..29be90506 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_rwy_sys.yaml @@ -0,0 +1,71 @@ +table: + name: rwy_sys + schema: lookups +array_relationships: + - name: crashesCrisByRptSecRdwySysId + using: + foreign_key_constraint_on: + column: rpt_sec_rdwy_sys_id + table: + name: crashes_cris + schema: public + - name: crashesEditsByRptSecRdwySysId + using: + foreign_key_constraint_on: + column: rpt_sec_rdwy_sys_id + table: + name: crashes_edits + schema: public + - name: crashesUnifiedsByRptSecRdwySysId + using: + foreign_key_constraint_on: + column: rpt_sec_rdwy_sys_id + table: + name: crashes + schema: public + - name: crashes_cris + using: + foreign_key_constraint_on: + column: rpt_rdwy_sys_id + table: + name: crashes_cris + schema: public + - name: crashes_edits + using: + foreign_key_constraint_on: + column: rpt_rdwy_sys_id + table: + name: crashes_edits + schema: public + - name: crashess + using: + foreign_key_constraint_on: + column: rpt_rdwy_sys_id + table: + name: crashes + schema: public +select_permissions: + - role: editor + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: readonly + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - id + - label + - source + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/lookups_specimen_type.yaml b/atd-vzd/metadata/databases/default/tables/lookups_specimen_type.yaml new file mode 100644 index 000000000..8bcd825fd --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_specimen_type.yaml @@ -0,0 +1,46 @@ +table: + name: specimen_type + schema: lookups +array_relationships: + - name: peopleCrisByPrsnDrgSpecTypeId + using: + foreign_key_constraint_on: + column: prsn_drg_spec_type_id + table: + name: people_cris + schema: public + - name: peopleEditsByPrsnDrgSpecTypeId + using: + foreign_key_constraint_on: + column: prsn_drg_spec_type_id + table: + name: people_edits + schema: public + - name: peopleUnifiedsByPrsnDrgSpecTypeId + using: + foreign_key_constraint_on: + column: prsn_drg_spec_type_id + table: + name: people + schema: public + - name: people_cris + using: + foreign_key_constraint_on: + column: prsn_alc_spec_type_id + table: + name: people_cris + schema: public + - name: people_edits + using: + foreign_key_constraint_on: + column: prsn_alc_spec_type_id + table: + name: people_edits + schema: public + - name: peoples + using: + foreign_key_constraint_on: + column: prsn_alc_spec_type_id + table: + name: people + schema: public diff --git a/atd-vzd/metadata/databases/default/tables/lookups_substnc_cat.yaml b/atd-vzd/metadata/databases/default/tables/lookups_substnc_cat.yaml new file mode 100644 index 000000000..5966ac852 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_substnc_cat.yaml @@ -0,0 +1,25 @@ +table: + name: substnc_cat + schema: lookups +array_relationships: + - name: people_cris + using: + foreign_key_constraint_on: + column: drvr_drg_cat_1_id + table: + name: people_cris + schema: public + - name: people_edits + using: + foreign_key_constraint_on: + column: drvr_drg_cat_1_id + table: + name: people_edits + schema: public + - name: peoples + using: + foreign_key_constraint_on: + column: drvr_drg_cat_1_id + table: + name: people + schema: public diff --git a/atd-vzd/metadata/databases/default/tables/lookups_substnc_tst_result.yaml b/atd-vzd/metadata/databases/default/tables/lookups_substnc_tst_result.yaml new file mode 100644 index 000000000..6268f19bd --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_substnc_tst_result.yaml @@ -0,0 +1,46 @@ +table: + name: substnc_tst_result + schema: lookups +array_relationships: + - name: peopleCrisByPrsnDrgRsltId + using: + foreign_key_constraint_on: + column: prsn_drg_rslt_id + table: + name: people_cris + schema: public + - name: peopleEditsByPrsnDrgRsltId + using: + foreign_key_constraint_on: + column: prsn_drg_rslt_id + table: + name: people_edits + schema: public + - name: peopleUnifiedsByPrsnDrgRsltId + using: + foreign_key_constraint_on: + column: prsn_drg_rslt_id + table: + name: people + schema: public + - name: people_cris + using: + foreign_key_constraint_on: + column: prsn_alc_rslt_id + table: + name: people_cris + schema: public + - name: people_edits + using: + foreign_key_constraint_on: + column: prsn_alc_rslt_id + table: + name: people_edits + schema: public + - name: peoples + using: + foreign_key_constraint_on: + column: prsn_alc_rslt_id + table: + name: people + schema: public diff --git a/atd-vzd/metadata/databases/default/tables/lookups_surf_cond.yaml b/atd-vzd/metadata/databases/default/tables/lookups_surf_cond.yaml new file mode 100644 index 000000000..ad664cba3 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_surf_cond.yaml @@ -0,0 +1,25 @@ +table: + name: surf_cond + schema: lookups +array_relationships: + - name: crashes_cris + using: + foreign_key_constraint_on: + column: surf_cond_id + table: + name: crashes_cris + schema: public + - name: crashes_edits + using: + foreign_key_constraint_on: + column: surf_cond_id + table: + name: crashes_edits + schema: public + - name: crashess + using: + foreign_key_constraint_on: + column: surf_cond_id + table: + name: crashes + schema: public diff --git a/atd-vzd/metadata/databases/default/tables/lookups_surf_type.yaml b/atd-vzd/metadata/databases/default/tables/lookups_surf_type.yaml new file mode 100644 index 000000000..50a5f1659 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_surf_type.yaml @@ -0,0 +1,25 @@ +table: + name: surf_type + schema: lookups +array_relationships: + - name: crashes_cris + using: + foreign_key_constraint_on: + column: surf_type_id + table: + name: crashes_cris + schema: public + - name: crashes_edits + using: + foreign_key_constraint_on: + column: surf_type_id + table: + name: crashes_edits + schema: public + - name: crashess + using: + foreign_key_constraint_on: + column: surf_type_id + table: + name: crashes + schema: public diff --git a/atd-vzd/metadata/databases/default/tables/lookups_traffic_cntl.yaml b/atd-vzd/metadata/databases/default/tables/lookups_traffic_cntl.yaml new file mode 100644 index 000000000..19151a512 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_traffic_cntl.yaml @@ -0,0 +1,50 @@ +table: + name: traffic_cntl + schema: lookups +array_relationships: + - name: crashes_cris + using: + foreign_key_constraint_on: + column: traffic_cntl_id + table: + name: crashes_cris + schema: public + - name: crashes_edits + using: + foreign_key_constraint_on: + column: traffic_cntl_id + table: + name: crashes_edits + schema: public + - name: crashess + using: + foreign_key_constraint_on: + column: traffic_cntl_id + table: + name: crashes + schema: public +select_permissions: + - role: editor + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: readonly + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - id + - label + - source + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/lookups_trvl_dir.yaml b/atd-vzd/metadata/databases/default/tables/lookups_trvl_dir.yaml new file mode 100644 index 000000000..8210581a9 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_trvl_dir.yaml @@ -0,0 +1,50 @@ +table: + name: trvl_dir + schema: lookups +array_relationships: + - name: units + using: + foreign_key_constraint_on: + column: veh_trvl_dir_id + table: + name: units + schema: public + - name: units_cris + using: + foreign_key_constraint_on: + column: veh_trvl_dir_id + table: + name: units_cris + schema: public + - name: units_edits + using: + foreign_key_constraint_on: + column: veh_trvl_dir_id + table: + name: units_edits + schema: public +select_permissions: + - role: editor + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: readonly + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - id + - label + - source + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/lookups_unit_desc.yaml b/atd-vzd/metadata/databases/default/tables/lookups_unit_desc.yaml new file mode 100644 index 000000000..6f1648b3f --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_unit_desc.yaml @@ -0,0 +1,50 @@ +table: + name: unit_desc + schema: lookups +array_relationships: + - name: units + using: + foreign_key_constraint_on: + column: unit_desc_id + table: + name: units + schema: public + - name: units_cris + using: + foreign_key_constraint_on: + column: unit_desc_id + table: + name: units_cris + schema: public + - name: units_edits + using: + foreign_key_constraint_on: + column: unit_desc_id + table: + name: units_edits + schema: public +select_permissions: + - role: editor + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: readonly + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - id + - label + - source + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/lookups_veh_body_styl.yaml b/atd-vzd/metadata/databases/default/tables/lookups_veh_body_styl.yaml new file mode 100644 index 000000000..20fecbd2c --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_veh_body_styl.yaml @@ -0,0 +1,50 @@ +table: + name: veh_body_styl + schema: lookups +array_relationships: + - name: units + using: + foreign_key_constraint_on: + column: veh_body_styl_id + table: + name: units + schema: public + - name: units_cris + using: + foreign_key_constraint_on: + column: veh_body_styl_id + table: + name: units_cris + schema: public + - name: units_edits + using: + foreign_key_constraint_on: + column: veh_body_styl_id + table: + name: units_edits + schema: public +select_permissions: + - role: editor + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: readonly + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - id + - label + - source + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/lookups_veh_damage_description.yaml b/atd-vzd/metadata/databases/default/tables/lookups_veh_damage_description.yaml new file mode 100644 index 000000000..f97845d3f --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_veh_damage_description.yaml @@ -0,0 +1,46 @@ +table: + name: veh_damage_description + schema: lookups +array_relationships: + - name: units + using: + foreign_key_constraint_on: + column: veh_damage_description1_id + table: + name: units + schema: public + - name: unitsCrisByVehDamageDescription2Id + using: + foreign_key_constraint_on: + column: veh_damage_description2_id + table: + name: units_cris + schema: public + - name: unitsEditsByVehDamageDescription2Id + using: + foreign_key_constraint_on: + column: veh_damage_description2_id + table: + name: units_edits + schema: public + - name: unitsUnifiedsByVehDamageDescription2Id + using: + foreign_key_constraint_on: + column: veh_damage_description2_id + table: + name: units + schema: public + - name: units_cris + using: + foreign_key_constraint_on: + column: veh_damage_description1_id + table: + name: units_cris + schema: public + - name: units_edits + using: + foreign_key_constraint_on: + column: veh_damage_description1_id + table: + name: units_edits + schema: public diff --git a/atd-vzd/metadata/databases/default/tables/lookups_veh_damage_severity.yaml b/atd-vzd/metadata/databases/default/tables/lookups_veh_damage_severity.yaml new file mode 100644 index 000000000..867ce98c2 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_veh_damage_severity.yaml @@ -0,0 +1,46 @@ +table: + name: veh_damage_severity + schema: lookups +array_relationships: + - name: units + using: + foreign_key_constraint_on: + column: veh_damage_severity1_id + table: + name: units + schema: public + - name: unitsCrisByVehDamageSeverity2Id + using: + foreign_key_constraint_on: + column: veh_damage_severity2_id + table: + name: units_cris + schema: public + - name: unitsEditsByVehDamageSeverity2Id + using: + foreign_key_constraint_on: + column: veh_damage_severity2_id + table: + name: units_edits + schema: public + - name: unitsUnifiedsByVehDamageSeverity2Id + using: + foreign_key_constraint_on: + column: veh_damage_severity2_id + table: + name: units + schema: public + - name: units_cris + using: + foreign_key_constraint_on: + column: veh_damage_severity1_id + table: + name: units_cris + schema: public + - name: units_edits + using: + foreign_key_constraint_on: + column: veh_damage_severity1_id + table: + name: units_edits + schema: public diff --git a/atd-vzd/metadata/databases/default/tables/lookups_veh_direction_of_force.yaml b/atd-vzd/metadata/databases/default/tables/lookups_veh_direction_of_force.yaml new file mode 100644 index 000000000..0c9c0de8a --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_veh_direction_of_force.yaml @@ -0,0 +1,46 @@ +table: + name: veh_direction_of_force + schema: lookups +array_relationships: + - name: units + using: + foreign_key_constraint_on: + column: veh_damage_direction_of_force1_id + table: + name: units + schema: public + - name: unitsCrisByVehDamageDirectionOfForce2Id + using: + foreign_key_constraint_on: + column: veh_damage_direction_of_force2_id + table: + name: units_cris + schema: public + - name: unitsEditsByVehDamageDirectionOfForce2Id + using: + foreign_key_constraint_on: + column: veh_damage_direction_of_force2_id + table: + name: units_edits + schema: public + - name: unitsUnifiedsByVehDamageDirectionOfForce2Id + using: + foreign_key_constraint_on: + column: veh_damage_direction_of_force2_id + table: + name: units + schema: public + - name: units_cris + using: + foreign_key_constraint_on: + column: veh_damage_direction_of_force1_id + table: + name: units_cris + schema: public + - name: units_edits + using: + foreign_key_constraint_on: + column: veh_damage_direction_of_force1_id + table: + name: units_edits + schema: public diff --git a/atd-vzd/metadata/databases/default/tables/lookups_veh_make.yaml b/atd-vzd/metadata/databases/default/tables/lookups_veh_make.yaml new file mode 100644 index 000000000..bc6cd85d4 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_veh_make.yaml @@ -0,0 +1,50 @@ +table: + name: veh_make + schema: lookups +array_relationships: + - name: units + using: + foreign_key_constraint_on: + column: veh_make_id + table: + name: units + schema: public + - name: units_cris + using: + foreign_key_constraint_on: + column: veh_make_id + table: + name: units_cris + schema: public + - name: units_edits + using: + foreign_key_constraint_on: + column: veh_make_id + table: + name: units_edits + schema: public +select_permissions: + - role: editor + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: readonly + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - id + - label + - source + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/lookups_veh_mod.yaml b/atd-vzd/metadata/databases/default/tables/lookups_veh_mod.yaml new file mode 100644 index 000000000..48bbede4f --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_veh_mod.yaml @@ -0,0 +1,50 @@ +table: + name: veh_mod + schema: lookups +array_relationships: + - name: units + using: + foreign_key_constraint_on: + column: veh_mod_id + table: + name: units + schema: public + - name: units_cris + using: + foreign_key_constraint_on: + column: veh_mod_id + table: + name: units_cris + schema: public + - name: units_edits + using: + foreign_key_constraint_on: + column: veh_mod_id + table: + name: units_edits + schema: public +select_permissions: + - role: editor + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: readonly + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - id + - label + - source + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/lookups_wthr_cond.yaml b/atd-vzd/metadata/databases/default/tables/lookups_wthr_cond.yaml new file mode 100644 index 000000000..c6146371c --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/lookups_wthr_cond.yaml @@ -0,0 +1,50 @@ +table: + name: wthr_cond + schema: lookups +array_relationships: + - name: crashes_cris + using: + foreign_key_constraint_on: + column: wthr_cond_id + table: + name: crashes_cris + schema: public + - name: crashes_edits + using: + foreign_key_constraint_on: + column: wthr_cond_id + table: + name: crashes_edits + schema: public + - name: crashess + using: + foreign_key_constraint_on: + column: wthr_cond_id + table: + name: crashes + schema: public +select_permissions: + - role: editor + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: readonly + permission: + columns: + - id + - label + - source + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - id + - label + - source + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/public__column_metadata.yaml b/atd-vzd/metadata/databases/default/tables/public__column_metadata.yaml new file mode 100644 index 000000000..7588f9bf7 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public__column_metadata.yaml @@ -0,0 +1,31 @@ +table: + name: _column_metadata + schema: public +select_permissions: + - role: editor + permission: + columns: + - is_imported_from_cris + - id + - column_name + - record_type + filter: {} + comment: "" + - role: readonly + permission: + columns: + - is_imported_from_cris + - id + - column_name + - record_type + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - is_imported_from_cris + - id + - column_name + - record_type + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/public__cris_import_log.yaml b/atd-vzd/metadata/databases/default/tables/public__cris_import_log.yaml new file mode 100644 index 000000000..e0561df8e --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public__cris_import_log.yaml @@ -0,0 +1,3 @@ +table: + name: _cris_import_log + schema: public diff --git a/atd-vzd/metadata/databases/default/tables/public_atd_txdot_changes_view.yaml b/atd-vzd/metadata/databases/default/tables/public_atd_txdot_changes_view.yaml deleted file mode 100644 index b13384571..000000000 --- a/atd-vzd/metadata/databases/default/tables/public_atd_txdot_changes_view.yaml +++ /dev/null @@ -1,46 +0,0 @@ -table: - name: atd_txdot_changes_view - schema: public -select_permissions: - - role: editor - permission: - columns: - - record_id - - change_id - - record_json - - created_timestamp - - status_id - - crash_fatal_flag - - sus_serious_injury_cnt - - status_description - - crash_date - filter: {} - allow_aggregations: true - - role: readonly - permission: - columns: - - crash_date - - change_id - - record_id - - status_id - - record_json - - crash_fatal_flag - - sus_serious_injury_cnt - - created_timestamp - - status_description - filter: {} - allow_aggregations: true - - role: vz-admin - permission: - columns: - - record_id - - change_id - - record_json - - created_timestamp - - status_id - - crash_fatal_flag - - sus_serious_injury_cnt - - status_description - - crash_date - filter: {} - allow_aggregations: true diff --git a/atd-vzd/metadata/databases/default/tables/public_atd_txdot_crashes.yaml b/atd-vzd/metadata/databases/default/tables/public_atd_txdot_crashes.yaml index f0c3de589..0be949da0 100644 --- a/atd-vzd/metadata/databases/default/tables/public_atd_txdot_crashes.yaml +++ b/atd-vzd/metadata/databases/default/tables/public_atd_txdot_crashes.yaml @@ -56,15 +56,6 @@ object_relationships: remote_table: name: atd_txdot__obj_struck_lkp schema: public - - name: recommendation - using: - manual_configuration: - column_mapping: - crash_id: crash_id - insertion_order: null - remote_table: - name: recommendations - schema: public - name: road_type using: manual_configuration: @@ -93,20 +84,6 @@ object_relationships: name: atd_txdot__wthr_cond_lkp schema: public array_relationships: - - name: crash_notes - using: - foreign_key_constraint_on: - column: crash_id - table: - name: crash_notes - schema: public - - name: fatalities - using: - foreign_key_constraint_on: - column: crash_id - table: - name: fatalities - schema: public - name: units using: manual_configuration: @@ -1721,10 +1698,10 @@ delete_permissions: filter: temp_record: _eq: true - comment: "Allow for the deletion of temp records only" + comment: Allow for the deletion of temp records only - role: vz-admin permission: filter: temp_record: _eq: true - comment: "Allow for the deletion of temp records only" + comment: Allow for the deletion of temp records only diff --git a/atd-vzd/metadata/databases/default/tables/public_atd_txdot_locations.yaml b/atd-vzd/metadata/databases/default/tables/public_atd_txdot_locations.yaml index 077d1af43..682bb41e2 100644 --- a/atd-vzd/metadata/databases/default/tables/public_atd_txdot_locations.yaml +++ b/atd-vzd/metadata/databases/default/tables/public_atd_txdot_locations.yaml @@ -11,7 +11,23 @@ object_relationships: remote_table: name: view_location_injry_count_cost_summary schema: public + - name: locations_list_view + using: + manual_configuration: + column_mapping: + location_id: location_id + insertion_order: null + remote_table: + name: locations_list_view + schema: public array_relationships: + - name: crashes + using: + foreign_key_constraint_on: + column: location_id + table: + name: crashes + schema: public - name: crashes_by_manner_collision using: manual_configuration: @@ -30,85 +46,62 @@ array_relationships: remote_table: name: view_location_crashes_by_veh_body_style schema: public + - name: location_notes + using: + foreign_key_constraint_on: + column: location_id + table: + name: location_notes + schema: public select_permissions: - role: editor permission: columns: - - address - - asmp_street_level - - council_district - - description - - geometry - - is_retired - - is_studylocation + - location_id + - street_level - last_update - latitude - - level_1 - - level_2 - - level_3 - - level_4 - - level_5 - - location_group - - location_id - longitude - - metadata - - priority_level - scale_factor - - shape - - street_level + - council_district + - is_intersection + - location_group + - description + - geometry filter: {} allow_aggregations: true + comment: "" - role: readonly permission: columns: - - address - - asmp_street_level - - council_district - - description - - geometry - - is_retired - - is_studylocation + - location_id + - street_level - last_update - latitude - - level_1 - - level_2 - - level_3 - - level_4 - - level_5 - - location_group - - location_id - longitude - - metadata - - priority_level - scale_factor - - shape - - street_level + - council_district + - is_intersection + - location_group + - description + - geometry filter: {} allow_aggregations: true + comment: "" - role: vz-admin permission: columns: - - address - - asmp_street_level - - council_district - - description - - geometry - - is_retired - - is_studylocation + - location_id + - street_level - last_update - latitude - - level_1 - - level_2 - - level_3 - - level_4 - - level_5 - - location_group - - location_id - longitude - - metadata - - priority_level - scale_factor - - shape - - street_level + - council_district + - is_intersection + - location_group + - description + - geometry filter: {} allow_aggregations: true + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/public_atd_txdot_person.yaml b/atd-vzd/metadata/databases/default/tables/public_atd_txdot_person.yaml index ab4e99264..1e43830a5 100644 --- a/atd-vzd/metadata/databases/default/tables/public_atd_txdot_person.yaml +++ b/atd-vzd/metadata/databases/default/tables/public_atd_txdot_person.yaml @@ -29,15 +29,6 @@ object_relationships: remote_table: name: atd_txdot__ethnicity_lkp schema: public - - name: fatality - using: - manual_configuration: - column_mapping: - person_id: person_id - insertion_order: null - remote_table: - name: fatalities - schema: public - name: gender using: manual_configuration: diff --git a/atd-vzd/metadata/databases/default/tables/public_atd_txdot_primaryperson.yaml b/atd-vzd/metadata/databases/default/tables/public_atd_txdot_primaryperson.yaml index b3ba0a714..2e14a955b 100644 --- a/atd-vzd/metadata/databases/default/tables/public_atd_txdot_primaryperson.yaml +++ b/atd-vzd/metadata/databases/default/tables/public_atd_txdot_primaryperson.yaml @@ -29,15 +29,6 @@ object_relationships: remote_table: name: atd_txdot__ethnicity_lkp schema: public - - name: fatality - using: - manual_configuration: - column_mapping: - primaryperson_id: primaryperson_id - insertion_order: null - remote_table: - name: fatalities - schema: public - name: gender using: manual_configuration: diff --git a/atd-vzd/metadata/databases/default/tables/public_change_log_crashes.yaml b/atd-vzd/metadata/databases/default/tables/public_change_log_crashes.yaml new file mode 100644 index 000000000..d4bde9272 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_change_log_crashes.yaml @@ -0,0 +1,7 @@ +table: + name: change_log_crashes + schema: public +object_relationships: + - name: crashes + using: + foreign_key_constraint_on: record_id diff --git a/atd-vzd/metadata/databases/default/tables/public_change_log_crashes_cris.yaml b/atd-vzd/metadata/databases/default/tables/public_change_log_crashes_cris.yaml new file mode 100644 index 000000000..3340eb3ab --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_change_log_crashes_cris.yaml @@ -0,0 +1,7 @@ +table: + name: change_log_crashes_cris + schema: public +object_relationships: + - name: crashes_cri + using: + foreign_key_constraint_on: record_id diff --git a/atd-vzd/metadata/databases/default/tables/public_change_log_crashes_edits.yaml b/atd-vzd/metadata/databases/default/tables/public_change_log_crashes_edits.yaml new file mode 100644 index 000000000..befe88994 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_change_log_crashes_edits.yaml @@ -0,0 +1,7 @@ +table: + name: change_log_crashes_edits + schema: public +object_relationships: + - name: crashes_edit + using: + foreign_key_constraint_on: record_id diff --git a/atd-vzd/metadata/databases/default/tables/public_change_log_people.yaml b/atd-vzd/metadata/databases/default/tables/public_change_log_people.yaml new file mode 100644 index 000000000..70eb67ed9 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_change_log_people.yaml @@ -0,0 +1,7 @@ +table: + name: change_log_people + schema: public +object_relationships: + - name: people + using: + foreign_key_constraint_on: record_id diff --git a/atd-vzd/metadata/databases/default/tables/public_change_log_people_cris.yaml b/atd-vzd/metadata/databases/default/tables/public_change_log_people_cris.yaml new file mode 100644 index 000000000..3c726e6a6 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_change_log_people_cris.yaml @@ -0,0 +1,7 @@ +table: + name: change_log_people_cris + schema: public +object_relationships: + - name: people_cri + using: + foreign_key_constraint_on: record_id diff --git a/atd-vzd/metadata/databases/default/tables/public_change_log_people_edits.yaml b/atd-vzd/metadata/databases/default/tables/public_change_log_people_edits.yaml new file mode 100644 index 000000000..ce9b0f2cd --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_change_log_people_edits.yaml @@ -0,0 +1,7 @@ +table: + name: change_log_people_edits + schema: public +object_relationships: + - name: people_edit + using: + foreign_key_constraint_on: record_id diff --git a/atd-vzd/metadata/databases/default/tables/public_change_log_units.yaml b/atd-vzd/metadata/databases/default/tables/public_change_log_units.yaml new file mode 100644 index 000000000..268caaa1e --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_change_log_units.yaml @@ -0,0 +1,7 @@ +table: + name: change_log_units + schema: public +object_relationships: + - name: units + using: + foreign_key_constraint_on: record_id diff --git a/atd-vzd/metadata/databases/default/tables/public_change_log_units_cris.yaml b/atd-vzd/metadata/databases/default/tables/public_change_log_units_cris.yaml new file mode 100644 index 000000000..b6f65e1d7 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_change_log_units_cris.yaml @@ -0,0 +1,7 @@ +table: + name: change_log_units_cris + schema: public +object_relationships: + - name: units_cri + using: + foreign_key_constraint_on: record_id diff --git a/atd-vzd/metadata/databases/default/tables/public_change_log_units_edits.yaml b/atd-vzd/metadata/databases/default/tables/public_change_log_units_edits.yaml new file mode 100644 index 000000000..4fbcad329 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_change_log_units_edits.yaml @@ -0,0 +1,7 @@ +table: + name: change_log_units_edits + schema: public +object_relationships: + - name: units_edit + using: + foreign_key_constraint_on: record_id diff --git a/atd-vzd/metadata/databases/default/tables/public_charges_cris.yaml b/atd-vzd/metadata/databases/default/tables/public_charges_cris.yaml new file mode 100644 index 000000000..e75437273 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_charges_cris.yaml @@ -0,0 +1,56 @@ +table: + name: charges_cris + schema: public +object_relationships: + - name: crashes_cris + using: + foreign_key_constraint_on: crash_pk + - name: people_cri + using: + foreign_key_constraint_on: person_id +select_permissions: + - role: editor + permission: + columns: + - crash_pk + - id + - person_id + - prsn_nbr + - unit_nbr + - charge + - citation_nbr + - created_by + - cris_schema_version + - created_at + filter: {} + comment: "" + - role: readonly + permission: + columns: + - crash_pk + - id + - person_id + - prsn_nbr + - unit_nbr + - charge + - citation_nbr + - created_by + - cris_schema_version + - created_at + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - crash_pk + - id + - person_id + - prsn_nbr + - unit_nbr + - charge + - citation_nbr + - created_by + - cris_schema_version + - created_at + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/public_cr3_nonproper_crashes_on_mainlane.yaml b/atd-vzd/metadata/databases/default/tables/public_cr3_nonproper_crashes_on_mainlane.yaml index bd0eda885..59ef5c469 100644 --- a/atd-vzd/metadata/databases/default/tables/public_cr3_nonproper_crashes_on_mainlane.yaml +++ b/atd-vzd/metadata/databases/default/tables/public_cr3_nonproper_crashes_on_mainlane.yaml @@ -212,7 +212,6 @@ select_permissions: - original_city_id - atd_fatality_count - temp_record - - cr3_file_metadata - cr3_ocr_extraction_date - investigator_narrative_ocr - est_comp_cost_crash_based @@ -431,7 +430,6 @@ select_permissions: - original_city_id - atd_fatality_count - temp_record - - cr3_file_metadata - cr3_ocr_extraction_date - investigator_narrative_ocr - est_comp_cost_crash_based @@ -543,7 +541,6 @@ select_permissions: - wthr_cond_id - atd_mode_category_metadata - geocode_match_metadata - - cr3_file_metadata - est_comp_cost - est_comp_cost_crash_based - est_econ_cost diff --git a/atd-vzd/metadata/databases/default/tables/public_crash_injury_metrics_view.yaml b/atd-vzd/metadata/databases/default/tables/public_crash_injury_metrics_view.yaml new file mode 100644 index 000000000..2cb03cc8e --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_crash_injury_metrics_view.yaml @@ -0,0 +1,97 @@ +table: + name: crash_injury_metrics_view + schema: public +select_permissions: + - role: editor + permission: + columns: + - bicycle_fatality_count + - bicycle_sus_serious_injry_count + - crash_injry_sev_id + - cris_crash_id + - cris_fatality_count + - est_comp_cost_crash_based + - est_total_person_comp_cost + - fatality_count + - law_enf_fatality_count + - micromobility_fatality_count + - micromobility_sus_serious_injry_count + - motor_vehicle_fatality_count + - motor_vehicle_sus_serious_injry_count + - motorcycle_fatality_count + - motorcycle_sus_serious_count + - non_injry_count + - nonincap_injry_count + - other_fatality_count + - other_sus_serious_injry_count + - pedestrian_fatality_count + - pedestrian_sus_serious_injry_count + - poss_injry_count + - sus_serious_injry_count + - unkn_injry_count + - vz_fatality_count + - years_of_life_lost + filter: {} + comment: "" + - role: readonly + permission: + columns: + - bicycle_fatality_count + - bicycle_sus_serious_injry_count + - crash_injry_sev_id + - cris_crash_id + - cris_fatality_count + - est_comp_cost_crash_based + - est_total_person_comp_cost + - fatality_count + - law_enf_fatality_count + - micromobility_fatality_count + - micromobility_sus_serious_injry_count + - motor_vehicle_fatality_count + - motor_vehicle_sus_serious_injry_count + - motorcycle_fatality_count + - motorcycle_sus_serious_count + - non_injry_count + - nonincap_injry_count + - other_fatality_count + - other_sus_serious_injry_count + - pedestrian_fatality_count + - pedestrian_sus_serious_injry_count + - poss_injry_count + - sus_serious_injry_count + - unkn_injry_count + - vz_fatality_count + - years_of_life_lost + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - bicycle_fatality_count + - bicycle_sus_serious_injry_count + - crash_injry_sev_id + - cris_crash_id + - cris_fatality_count + - est_comp_cost_crash_based + - est_total_person_comp_cost + - fatality_count + - law_enf_fatality_count + - micromobility_fatality_count + - micromobility_sus_serious_injry_count + - motor_vehicle_fatality_count + - motor_vehicle_sus_serious_injry_count + - motorcycle_fatality_count + - motorcycle_sus_serious_count + - non_injry_count + - nonincap_injry_count + - other_fatality_count + - other_sus_serious_injry_count + - pedestrian_fatality_count + - pedestrian_sus_serious_injry_count + - poss_injry_count + - sus_serious_injry_count + - unkn_injry_count + - vz_fatality_count + - years_of_life_lost + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/public_crash_notes.yaml b/atd-vzd/metadata/databases/default/tables/public_crash_notes.yaml index d6699579c..4d71da33e 100644 --- a/atd-vzd/metadata/databases/default/tables/public_crash_notes.yaml +++ b/atd-vzd/metadata/databases/default/tables/public_crash_notes.yaml @@ -2,9 +2,9 @@ table: name: crash_notes schema: public object_relationships: - - name: atd_txdot_crash + - name: crash using: - foreign_key_constraint_on: crash_id + foreign_key_constraint_on: crash_pk insert_permissions: - role: editor permission: @@ -15,7 +15,7 @@ insert_permissions: - updated_at - date - text - - crash_id + - crash_pk - user_email - role: vz-admin permission: @@ -26,13 +26,13 @@ insert_permissions: - updated_at - date - text - - crash_id + - crash_pk - user_email select_permissions: - role: editor permission: columns: - - crash_id + - crash_pk - id - text - user_email @@ -43,7 +43,7 @@ select_permissions: - role: readonly permission: columns: - - crash_id + - crash_pk - id - text - user_email @@ -54,7 +54,7 @@ select_permissions: - role: vz-admin permission: columns: - - crash_id + - crash_pk - id - text - user_email @@ -66,7 +66,7 @@ update_permissions: - role: editor permission: columns: - - crash_id + - crash_pk - id - text - user_email @@ -78,7 +78,7 @@ update_permissions: - role: vz-admin permission: columns: - - crash_id + - crash_pk - id - text - user_email diff --git a/atd-vzd/metadata/databases/default/tables/public_crashes.yaml b/atd-vzd/metadata/databases/default/tables/public_crashes.yaml new file mode 100644 index 000000000..d0fd5e0d1 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_crashes.yaml @@ -0,0 +1,327 @@ +table: + name: crashes + schema: public +object_relationships: + - name: atd_txdot_location + using: + foreign_key_constraint_on: location_id + - name: crash_injury_metrics_view + using: + manual_configuration: + column_mapping: + id: id + insertion_order: null + remote_table: + name: crash_injury_metrics_view + schema: public + - name: crashes_cri + using: + foreign_key_constraint_on: id + - name: crashes_list_view + using: + manual_configuration: + column_mapping: + id: id + insertion_order: null + remote_table: + name: crashes_list_view + schema: public + - name: recommendation + using: + foreign_key_constraint_on: + column: crash_pk + table: + name: recommendations + schema: public +array_relationships: + - name: change_logs + using: + manual_configuration: + column_mapping: + id: crash_pk + insertion_order: null + remote_table: + name: crashes_change_log_view + schema: public + - name: charges_cris + using: + manual_configuration: + column_mapping: + id: crash_pk + insertion_order: null + remote_table: + name: charges_cris + schema: public + - name: crash_notes + using: + foreign_key_constraint_on: + column: crash_pk + table: + name: crash_notes + schema: public + - name: people_list_view + using: + manual_configuration: + column_mapping: + id: crash_pk + insertion_order: null + remote_table: + name: people_list_view + schema: public + - name: units + using: + foreign_key_constraint_on: + column: crash_pk + table: + name: units + schema: public +select_permissions: + - role: editor + permission: + columns: + - active_school_zone_fl + - address_primary + - address_secondary + - at_intrsct_fl + - case_id + - council_district + - cr3_processed_at + - cr3_stored_fl + - cris_crash_id + - crash_speed_limit + - crash_timestamp + - created_at + - created_by + - engineering_area + - fhe_collsn_id + - id + - in_austin_full_purpose + - intrsct_relat_id + - investigat_agency_id + - investigator_narrative + - is_deleted + - is_temp_record + - latitude + - law_enforcement_ytd_fatality_num + - light_cond_id + - location_id + - longitude + - medical_advisory_fl + - obj_struck_id + - onsys_fl + - position + - private_dr_fl + - record_locator + - road_constr_zone_fl + - road_constr_zone_wrkr_fl + - rpt_block_num + - rpt_city_id + - rpt_cris_cnty_id + - rpt_hwy_num + - rpt_rdwy_sys_id + - rpt_ref_mark_dir + - rpt_ref_mark_dist_uom + - rpt_ref_mark_offset_amt + - rpt_road_part_id + - rpt_sec_block_num + - rpt_sec_hwy_num + - rpt_sec_rdwy_sys_id + - rpt_sec_road_part_id + - rpt_sec_street_desc + - rpt_sec_street_name + - rpt_sec_street_pfx + - rpt_sec_street_sfx + - rpt_street_desc + - rpt_street_name + - rpt_street_pfx + - rpt_street_sfx + - rr_relat_fl + - schl_bus_fl + - surf_cond_id + - surf_type_id + - thousand_damage_fl + - toll_road_fl + - traffic_cntl_id + - txdot_rptable_fl + - updated_at + - updated_by + - wthr_cond_id + filter: {} + comment: "" + - role: readonly + permission: + columns: + - active_school_zone_fl + - at_intrsct_fl + - case_id + - council_district + - cr3_processed_at + - cr3_stored_fl + - cris_crash_id + - crash_speed_limit + - crash_timestamp + - created_at + - created_by + - engineering_area + - fhe_collsn_id + - id + - in_austin_full_purpose + - intrsct_relat_id + - investigat_agency_id + - investigator_narrative + - latitude + - law_enforcement_ytd_fatality_num + - light_cond_id + - location_id + - longitude + - is_deleted + - is_temp_record + - medical_advisory_fl + - onsys_fl + - private_dr_fl + - road_constr_zone_fl + - road_constr_zone_wrkr_fl + - rr_relat_fl + - schl_bus_fl + - thousand_damage_fl + - toll_road_fl + - txdot_rptable_fl + - council_district + - cris_crash_id + - crash_speed_limit + - engineering_area + - fhe_collsn_id + - id + - intrsct_relat_id + - investigat_agency_id + - light_cond_id + - obj_struck_id + - rpt_city_id + - rpt_cris_cnty_id + - rpt_rdwy_sys_id + - rpt_road_part_id + - rpt_sec_rdwy_sys_id + - rpt_sec_road_part_id + - surf_cond_id + - surf_type_id + - traffic_cntl_id + - wthr_cond_id + - latitude + - longitude + - rpt_ref_mark_offset_amt + - address_primary + - address_secondary + - case_id + - created_by + - investigator_narrative + - location_id + - record_locator + - rpt_block_num + - rpt_hwy_num + - rpt_ref_mark_dir + - rpt_ref_mark_dist_uom + - rpt_sec_block_num + - rpt_sec_hwy_num + - rpt_sec_street_desc + - rpt_sec_street_name + - rpt_sec_street_pfx + - rpt_sec_street_sfx + - rpt_street_desc + - rpt_street_name + - rpt_street_pfx + - rpt_street_sfx + - updated_by + - crash_timestamp + - created_at + - updated_at + - position + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - active_school_zone_fl + - at_intrsct_fl + - case_id + - council_district + - cr3_processed_at + - cr3_stored_fl + - cris_crash_id + - crash_speed_limit + - crash_timestamp + - created_at + - created_by + - engineering_area + - fhe_collsn_id + - id + - in_austin_full_purpose + - intrsct_relat_id + - investigat_agency_id + - investigator_narrative + - latitude + - law_enforcement_ytd_fatality_num + - light_cond_id + - location_id + - longitude + - is_deleted + - is_temp_record + - medical_advisory_fl + - onsys_fl + - private_dr_fl + - road_constr_zone_fl + - road_constr_zone_wrkr_fl + - rr_relat_fl + - schl_bus_fl + - thousand_damage_fl + - toll_road_fl + - txdot_rptable_fl + - council_district + - crash_speed_limit + - engineering_area + - fhe_collsn_id + - id + - intrsct_relat_id + - investigat_agency_id + - light_cond_id + - obj_struck_id + - rpt_city_id + - rpt_cris_cnty_id + - rpt_rdwy_sys_id + - rpt_road_part_id + - rpt_sec_rdwy_sys_id + - rpt_sec_road_part_id + - surf_cond_id + - surf_type_id + - traffic_cntl_id + - wthr_cond_id + - latitude + - longitude + - rpt_ref_mark_offset_amt + - address_primary + - address_secondary + - case_id + - created_by + - investigator_narrative + - location_id + - record_locator + - rpt_block_num + - rpt_hwy_num + - rpt_ref_mark_dir + - rpt_ref_mark_dist_uom + - rpt_sec_block_num + - rpt_sec_hwy_num + - rpt_sec_street_desc + - rpt_sec_street_name + - rpt_sec_street_pfx + - rpt_sec_street_sfx + - rpt_street_desc + - rpt_street_name + - rpt_street_pfx + - rpt_street_sfx + - updated_by + - crash_timestamp + - created_at + - updated_at + - position + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/public_crashes_change_log_view.yaml b/atd-vzd/metadata/databases/default/tables/public_crashes_change_log_view.yaml new file mode 100644 index 000000000..f43bd00cc --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_crashes_change_log_view.yaml @@ -0,0 +1,43 @@ +table: + name: crashes_change_log_view + schema: public +select_permissions: + - role: editor + permission: + columns: + - crash_pk + - id + - record_id + - record_json + - created_by + - operation_type + - record_type + - created_at + filter: {} + comment: "" + - role: readonly + permission: + columns: + - crash_pk + - id + - record_id + - record_json + - created_by + - operation_type + - record_type + - created_at + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - crash_pk + - id + - record_id + - record_json + - created_by + - operation_type + - record_type + - created_at + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/public_crashes_cris.yaml b/atd-vzd/metadata/databases/default/tables/public_crashes_cris.yaml new file mode 100644 index 000000000..6eaeb33c8 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_crashes_cris.yaml @@ -0,0 +1,183 @@ +table: + name: crashes_cris + schema: public +object_relationships: + - name: crashes + using: + foreign_key_constraint_on: + column: id + table: + name: crashes + schema: public + - name: crashes_edit + using: + foreign_key_constraint_on: + column: id + table: + name: crashes_edits + schema: public +array_relationships: + - name: change_log_crashes_cris + using: + foreign_key_constraint_on: + column: record_id + table: + name: change_log_crashes_cris + schema: public + - name: charges_cris + using: + foreign_key_constraint_on: + column: crash_pk + table: + name: charges_cris + schema: public + - name: people_cris + using: + foreign_key_constraint_on: + column: cris_crash_id + table: + name: people_cris + schema: public + - name: units_cris + using: + foreign_key_constraint_on: + column: crash_pk + table: + name: units_cris + schema: public + - name: units_edits + using: + foreign_key_constraint_on: + column: crash_pk + table: + name: units_edits + schema: public +insert_permissions: + - role: vz-admin + permission: + check: {} + columns: + - active_school_zone_fl + - at_intrsct_fl + - case_id + - crash_speed_limit + - crash_timestamp + - created_by + - cris_schema_version + - fhe_collsn_id + - intrsct_relat_id + - investigat_agency_id + - investigator_narrative + - is_temp_record + - latitude + - light_cond_id + - longitude + - medical_advisory_fl + - obj_struck_id + - onsys_fl + - private_dr_fl + - road_constr_zone_fl + - road_constr_zone_wrkr_fl + - rpt_block_num + - rpt_city_id + - rpt_cris_cnty_id + - rpt_hwy_num + - rpt_rdwy_sys_id + - rpt_ref_mark_dir + - rpt_ref_mark_dist_uom + - rpt_ref_mark_offset_amt + - rpt_road_part_id + - rpt_sec_block_num + - rpt_sec_hwy_num + - rpt_sec_rdwy_sys_id + - rpt_sec_road_part_id + - rpt_sec_street_desc + - rpt_sec_street_name + - rpt_sec_street_pfx + - rpt_sec_street_sfx + - rpt_street_desc + - rpt_street_name + - rpt_street_pfx + - rpt_street_sfx + - rr_relat_fl + - schl_bus_fl + - surf_cond_id + - surf_type_id + - thousand_damage_fl + - toll_road_fl + - traffic_cntl_id + - txdot_rptable_fl + - updated_by + - wthr_cond_id + comment: "" +select_permissions: + - role: vz-admin + permission: + columns: + - active_school_zone_fl + - at_intrsct_fl + - case_id + - cris_crash_id + - crash_speed_limit + - crash_timestamp + - created_at + - created_by + - cris_schema_version + - fhe_collsn_id + - id + - intrsct_relat_id + - investigat_agency_id + - investigator_narrative + - is_temp_record + - latitude + - light_cond_id + - longitude + - medical_advisory_fl + - obj_struck_id + - onsys_fl + - private_dr_fl + - road_constr_zone_fl + - road_constr_zone_wrkr_fl + - rpt_block_num + - rpt_city_id + - rpt_cris_cnty_id + - rpt_hwy_num + - rpt_rdwy_sys_id + - rpt_ref_mark_dir + - rpt_ref_mark_dist_uom + - rpt_ref_mark_offset_amt + - rpt_road_part_id + - rpt_sec_block_num + - rpt_sec_hwy_num + - rpt_sec_rdwy_sys_id + - rpt_sec_road_part_id + - rpt_sec_street_desc + - rpt_sec_street_name + - rpt_sec_street_pfx + - rpt_sec_street_sfx + - rpt_street_desc + - rpt_street_name + - rpt_street_pfx + - rpt_street_sfx + - rr_relat_fl + - schl_bus_fl + - surf_cond_id + - surf_type_id + - thousand_damage_fl + - toll_road_fl + - traffic_cntl_id + - txdot_rptable_fl + - updated_at + - updated_by + - wthr_cond_id + filter: {} + comment: "" +update_permissions: + - role: vz-admin + permission: + columns: + - is_deleted + - updated_by + filter: {} + check: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/public_crashes_edits.yaml b/atd-vzd/metadata/databases/default/tables/public_crashes_edits.yaml new file mode 100644 index 000000000..0c6edaf93 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_crashes_edits.yaml @@ -0,0 +1,317 @@ +table: + name: crashes_edits + schema: public +object_relationships: + - name: crashes_cri + using: + foreign_key_constraint_on: id +array_relationships: + - name: change_log_crashes_edits + using: + foreign_key_constraint_on: + column: record_id + table: + name: change_log_crashes_edits + schema: public +select_permissions: + - role: editor + permission: + columns: + - active_school_zone_fl + - at_intrsct_fl + - case_id + - cr3_processed_at + - cr3_stored_fl + - cris_crash_id + - crash_speed_limit + - crash_timestamp + - created_at + - created_by + - fhe_collsn_id + - id + - intrsct_relat_id + - investigat_agency_id + - investigator_narrative + - latitude + - law_enforcement_ytd_fatality_num + - light_cond_id + - longitude + - medical_advisory_fl + - obj_struck_id + - onsys_fl + - private_dr_fl + - road_constr_zone_fl + - road_constr_zone_wrkr_fl + - rpt_block_num + - rpt_city_id + - rpt_cris_cnty_id + - rpt_hwy_num + - rpt_rdwy_sys_id + - rpt_ref_mark_dir + - rpt_ref_mark_dist_uom + - rpt_ref_mark_offset_amt + - rpt_road_part_id + - rpt_sec_block_num + - rpt_sec_hwy_num + - rpt_sec_rdwy_sys_id + - rpt_sec_road_part_id + - rpt_sec_street_desc + - rpt_sec_street_name + - rpt_sec_street_pfx + - rpt_sec_street_sfx + - rpt_street_desc + - rpt_street_name + - rpt_street_pfx + - rpt_street_sfx + - rr_relat_fl + - schl_bus_fl + - surf_cond_id + - surf_type_id + - thousand_damage_fl + - toll_road_fl + - traffic_cntl_id + - txdot_rptable_fl + - updated_at + - updated_by + - wthr_cond_id + filter: {} + comment: "" + - role: readonly + permission: + columns: + - active_school_zone_fl + - at_intrsct_fl + - case_id + - cr3_processed_at + - cr3_stored_fl + - cris_crash_id + - crash_speed_limit + - crash_timestamp + - created_at + - created_by + - fhe_collsn_id + - id + - intrsct_relat_id + - investigat_agency_id + - investigator_narrative + - latitude + - law_enforcement_ytd_fatality_num + - light_cond_id + - longitude + - medical_advisory_fl + - obj_struck_id + - onsys_fl + - private_dr_fl + - road_constr_zone_fl + - road_constr_zone_wrkr_fl + - rpt_block_num + - rpt_city_id + - rpt_cris_cnty_id + - rpt_hwy_num + - rpt_rdwy_sys_id + - rpt_ref_mark_dir + - rpt_ref_mark_dist_uom + - rpt_ref_mark_offset_amt + - rpt_road_part_id + - rpt_sec_block_num + - rpt_sec_hwy_num + - rpt_sec_rdwy_sys_id + - rpt_sec_road_part_id + - rpt_sec_street_desc + - rpt_sec_street_name + - rpt_sec_street_pfx + - rpt_sec_street_sfx + - rpt_street_desc + - rpt_street_name + - rpt_street_pfx + - rpt_street_sfx + - rr_relat_fl + - schl_bus_fl + - surf_cond_id + - surf_type_id + - thousand_damage_fl + - toll_road_fl + - traffic_cntl_id + - txdot_rptable_fl + - updated_at + - updated_by + - wthr_cond_id + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - active_school_zone_fl + - at_intrsct_fl + - case_id + - cr3_processed_at + - cr3_stored_fl + - cris_crash_id + - crash_speed_limit + - crash_timestamp + - created_at + - created_by + - fhe_collsn_id + - id + - intrsct_relat_id + - investigat_agency_id + - investigator_narrative + - latitude + - law_enforcement_ytd_fatality_num + - light_cond_id + - longitude + - medical_advisory_fl + - obj_struck_id + - onsys_fl + - private_dr_fl + - road_constr_zone_fl + - road_constr_zone_wrkr_fl + - rpt_block_num + - rpt_city_id + - rpt_cris_cnty_id + - rpt_hwy_num + - rpt_rdwy_sys_id + - rpt_ref_mark_dir + - rpt_ref_mark_dist_uom + - rpt_ref_mark_offset_amt + - rpt_road_part_id + - rpt_sec_block_num + - rpt_sec_hwy_num + - rpt_sec_rdwy_sys_id + - rpt_sec_road_part_id + - rpt_sec_street_desc + - rpt_sec_street_name + - rpt_sec_street_pfx + - rpt_sec_street_sfx + - rpt_street_desc + - rpt_street_name + - rpt_street_pfx + - rpt_street_sfx + - rr_relat_fl + - schl_bus_fl + - surf_cond_id + - surf_type_id + - thousand_damage_fl + - toll_road_fl + - traffic_cntl_id + - txdot_rptable_fl + - updated_at + - updated_by + - wthr_cond_id + filter: {} + comment: "" +update_permissions: + - role: editor + permission: + columns: + - active_school_zone_fl + - at_intrsct_fl + - case_id + - crash_timestamp + - cris_crash_id + - crash_speed_limit + - fhe_collsn_id + - intrsct_relat_id + - investigat_agency_id + - investigator_narrative + - latitude + - law_enforcement_ytd_fatality_num + - light_cond_id + - longitude + - medical_advisory_fl + - obj_struck_id + - onsys_fl + - private_dr_fl + - road_constr_zone_fl + - road_constr_zone_wrkr_fl + - rpt_block_num + - rpt_city_id + - rpt_cris_cnty_id + - rpt_hwy_num + - rpt_rdwy_sys_id + - rpt_ref_mark_dir + - rpt_ref_mark_dist_uom + - rpt_ref_mark_offset_amt + - rpt_road_part_id + - rpt_sec_block_num + - rpt_sec_hwy_num + - rpt_sec_rdwy_sys_id + - rpt_sec_road_part_id + - rpt_sec_street_desc + - rpt_sec_street_name + - rpt_sec_street_pfx + - rpt_sec_street_sfx + - rpt_street_desc + - rpt_street_name + - rpt_street_pfx + - rpt_street_sfx + - rr_relat_fl + - schl_bus_fl + - surf_cond_id + - surf_type_id + - thousand_damage_fl + - toll_road_fl + - traffic_cntl_id + - txdot_rptable_fl + - updated_by + - wthr_cond_id + filter: {} + check: {} + comment: "" + - role: vz-admin + permission: + columns: + - active_school_zone_fl + - at_intrsct_fl + - case_id + - crash_timestamp + - cris_crash_id + - crash_speed_limit + - fhe_collsn_id + - intrsct_relat_id + - investigat_agency_id + - investigator_narrative + - latitude + - law_enforcement_ytd_fatality_num + - light_cond_id + - longitude + - medical_advisory_fl + - obj_struck_id + - onsys_fl + - private_dr_fl + - road_constr_zone_fl + - road_constr_zone_wrkr_fl + - rpt_block_num + - rpt_city_id + - rpt_cris_cnty_id + - rpt_hwy_num + - rpt_rdwy_sys_id + - rpt_ref_mark_dir + - rpt_ref_mark_dist_uom + - rpt_ref_mark_offset_amt + - rpt_road_part_id + - rpt_sec_block_num + - rpt_sec_hwy_num + - rpt_sec_rdwy_sys_id + - rpt_sec_road_part_id + - rpt_sec_street_desc + - rpt_sec_street_name + - rpt_sec_street_pfx + - rpt_sec_street_sfx + - rpt_street_desc + - rpt_street_name + - rpt_street_pfx + - rpt_street_sfx + - rr_relat_fl + - schl_bus_fl + - surf_cond_id + - surf_type_id + - thousand_damage_fl + - toll_road_fl + - traffic_cntl_id + - txdot_rptable_fl + - updated_by + - wthr_cond_id + filter: {} + check: null + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/public_crashes_list_view.yaml b/atd-vzd/metadata/databases/default/tables/public_crashes_list_view.yaml new file mode 100644 index 000000000..0f2f2cb61 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_crashes_list_view.yaml @@ -0,0 +1,201 @@ +table: + name: crashes_list_view + schema: public +object_relationships: + - name: recommendation + using: + manual_configuration: + column_mapping: + id: crash_pk + insertion_order: null + remote_table: + name: recommendations + schema: public +array_relationships: + - name: units + using: + manual_configuration: + column_mapping: + cris_crash_id: cris_crash_id + insertion_order: null + remote_table: + name: units + schema: public +select_permissions: + - role: editor + permission: + columns: + - active_school_zone_fl + - address_primary + - address_secondary + - at_intrsct_fl + - case_id + - collsn_desc + - council_district + - crash_date_ct + - crash_day_of_week + - cris_crash_id + - crash_injry_sev_desc + - crash_injry_sev_id + - crash_speed_limit + - crash_time_ct + - crash_timestamp + - cris_fatality_count + - est_comp_cost_crash_based + - fatality_count + - id + - in_austin_full_purpose + - intrsct_relat_id + - is_manual_geocode + - latitude + - law_enf_fatality_count + - light_cond_id + - location_id + - longitude + - non_injry_count + - nonincap_injry_count + - obj_struck_id + - onsys_fl + - poss_injry_count + - private_dr_fl + - record_locator + - road_constr_zone_fl + - rpt_block_num + - rpt_sec_block_num + - rpt_sec_street_name + - rpt_sec_street_pfx + - rpt_sec_street_sfx + - rpt_street_name + - rpt_street_pfx + - rpt_street_sfx + - rr_relat_fl + - schl_bus_fl + - sus_serious_injry_count + - toll_road_fl + - tot_injry_count + - traffic_cntl_id + - unkn_injry_count + - vz_fatality_count + - wthr_cond_id + - years_of_life_lost + filter: {} + allow_aggregations: true + comment: "" + - role: readonly + permission: + columns: + - active_school_zone_fl + - address_primary + - address_secondary + - at_intrsct_fl + - case_id + - collsn_desc + - council_district + - crash_date_ct + - crash_day_of_week + - cris_crash_id + - crash_injry_sev_desc + - crash_injry_sev_id + - crash_speed_limit + - crash_time_ct + - crash_timestamp + - cris_fatality_count + - est_comp_cost_crash_based + - fatality_count + - id + - in_austin_full_purpose + - intrsct_relat_id + - is_manual_geocode + - latitude + - law_enf_fatality_count + - light_cond_id + - location_id + - longitude + - non_injry_count + - nonincap_injry_count + - obj_struck_id + - onsys_fl + - poss_injry_count + - private_dr_fl + - record_locator + - road_constr_zone_fl + - rpt_block_num + - rpt_sec_block_num + - rpt_sec_street_name + - rpt_sec_street_pfx + - rpt_sec_street_sfx + - rpt_street_name + - rpt_street_pfx + - rpt_street_sfx + - rr_relat_fl + - schl_bus_fl + - sus_serious_injry_count + - toll_road_fl + - tot_injry_count + - traffic_cntl_id + - unkn_injry_count + - vz_fatality_count + - wthr_cond_id + - years_of_life_lost + filter: {} + allow_aggregations: true + comment: "" + - role: vz-admin + permission: + columns: + - cris_fatality_count + - fatality_count + - law_enf_fatality_count + - nonincap_injry_count + - non_injry_count + - poss_injry_count + - sus_serious_injry_count + - tot_injry_count + - unkn_injry_count + - vz_fatality_count + - years_of_life_lost + - active_school_zone_fl + - at_intrsct_fl + - in_austin_full_purpose + - is_manual_geocode + - onsys_fl + - private_dr_fl + - road_constr_zone_fl + - rr_relat_fl + - schl_bus_fl + - toll_road_fl + - council_district + - cris_crash_id + - crash_injry_sev_id + - crash_speed_limit + - est_comp_cost_crash_based + - id + - intrsct_relat_id + - light_cond_id + - obj_struck_id + - traffic_cntl_id + - wthr_cond_id + - latitude + - longitude + - address_primary + - address_secondary + - case_id + - collsn_desc + - crash_date_ct + - crash_day_of_week + - crash_injry_sev_desc + - crash_time_ct + - location_id + - record_locator + - rpt_block_num + - rpt_sec_block_num + - rpt_sec_street_name + - rpt_sec_street_pfx + - rpt_sec_street_sfx + - rpt_street_name + - rpt_street_pfx + - rpt_street_sfx + - crash_timestamp + filter: {} + allow_aggregations: true + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/public_fatalities_view.yaml b/atd-vzd/metadata/databases/default/tables/public_fatalities_view.yaml new file mode 100644 index 000000000..f65941208 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_fatalities_view.yaml @@ -0,0 +1,95 @@ +table: + name: fatalities_view + schema: public +object_relationships: + - name: crash + using: + manual_configuration: + column_mapping: + crash_pk: id + insertion_order: null + remote_table: + name: crashes + schema: public + - name: recommendation + using: + manual_configuration: + column_mapping: + crash_pk: crash_pk + insertion_order: null + remote_table: + name: recommendations + schema: public + - name: unit + using: + manual_configuration: + column_mapping: + unit_id: id + insertion_order: null + remote_table: + name: units + schema: public +select_permissions: + - role: editor + permission: + columns: + - ytd_fatal_crash + - ytd_fatality + - crash_pk + - cris_crash_id + - engineering_area + - person_id + - unit_id + - case_id + - crash_date_ct + - crash_time_ct + - law_enforcement_ytd_fatality_num + - location + - record_locator + - victim_name + - year + filter: {} + allow_aggregations: true + comment: "" + - role: readonly + permission: + columns: + - ytd_fatal_crash + - ytd_fatality + - crash_pk + - cris_crash_id + - engineering_area + - person_id + - unit_id + - case_id + - crash_date_ct + - crash_time_ct + - law_enforcement_ytd_fatality_num + - location + - record_locator + - victim_name + - year + filter: {} + allow_aggregations: true + comment: "" + - role: vz-admin + permission: + columns: + - ytd_fatal_crash + - ytd_fatality + - crash_pk + - cris_crash_id + - engineering_area + - person_id + - unit_id + - case_id + - crash_date_ct + - crash_time_ct + - law_enforcement_ytd_fatality_num + - location + - record_locator + - victim_name + - year + filter: {} + allow_aggregations: true + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/public_location_crashes_view.yaml b/atd-vzd/metadata/databases/default/tables/public_location_crashes_view.yaml new file mode 100644 index 000000000..9fd5444b0 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_location_crashes_view.yaml @@ -0,0 +1,97 @@ +table: + name: location_crashes_view + schema: public +select_permissions: + - role: editor + permission: + columns: + - nonincap_injry_count + - non_injry_count + - poss_injry_count + - sus_serious_injry_count + - tot_injry_count + - unkn_injry_count + - vz_fatality_count + - cris_crash_id + - crash_sev_id + - est_comp_cost_crash_based + - latitude + - longitude + - address_primary + - address_secondary + - case_id + - collsn_desc + - crash_date + - crash_time + - day_of_week + - location_id + - movement_desc + - travel_direction + - type + - veh_body_styl_desc + - veh_unit_desc + filter: {} + allow_aggregations: true + comment: "" + - role: readonly + permission: + columns: + - nonincap_injry_count + - non_injry_count + - poss_injry_count + - sus_serious_injry_count + - tot_injry_count + - unkn_injry_count + - vz_fatality_count + - cris_crash_id + - crash_sev_id + - est_comp_cost_crash_based + - latitude + - longitude + - address_primary + - address_secondary + - case_id + - collsn_desc + - crash_date + - crash_time + - day_of_week + - location_id + - movement_desc + - travel_direction + - type + - veh_body_styl_desc + - veh_unit_desc + filter: {} + allow_aggregations: true + comment: "" + - role: vz-admin + permission: + columns: + - nonincap_injry_count + - non_injry_count + - poss_injry_count + - sus_serious_injry_count + - tot_injry_count + - unkn_injry_count + - vz_fatality_count + - cris_crash_id + - crash_sev_id + - est_comp_cost_crash_based + - latitude + - longitude + - address_primary + - address_secondary + - case_id + - collsn_desc + - crash_date + - crash_time + - day_of_week + - location_id + - movement_desc + - travel_direction + - type + - veh_body_styl_desc + - veh_unit_desc + filter: {} + allow_aggregations: true + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/public_locations_list_view.yaml b/atd-vzd/metadata/databases/default/tables/public_locations_list_view.yaml new file mode 100644 index 000000000..a430f5aa8 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_locations_list_view.yaml @@ -0,0 +1,46 @@ +table: + name: locations_list_view + schema: public +select_permissions: + - role: editor + permission: + columns: + - council_district + - cr3_crash_count + - crash_count + - description + - location_id + - location_group + - non_cr3_crash_count + - total_est_comp_cost + filter: {} + allow_aggregations: true + comment: "" + - role: readonly + permission: + columns: + - council_district + - cr3_crash_count + - crash_count + - description + - location_id + - location_group + - non_cr3_crash_count + - total_est_comp_cost + filter: {} + allow_aggregations: true + comment: "" + - role: vz-admin + permission: + columns: + - council_district + - cr3_crash_count + - crash_count + - description + - location_id + - location_group + - non_cr3_crash_count + - total_est_comp_cost + filter: {} + allow_aggregations: true + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/public_people.yaml b/atd-vzd/metadata/databases/default/tables/public_people.yaml new file mode 100644 index 000000000..94b9b2668 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_people.yaml @@ -0,0 +1,131 @@ +table: + name: people + schema: public +object_relationships: + - name: ems__incident + using: + foreign_key_constraint_on: ems_id + - name: units + using: + foreign_key_constraint_on: unit_id +select_permissions: + - role: editor + permission: + columns: + - is_primary_person + - prsn_exp_homelessness + - drvr_drg_cat_1_id + - ems_id + - est_comp_cost_crash_based + - id + - prsn_age + - prsn_alc_rslt_id + - prsn_alc_spec_type_id + - prsn_drg_rslt_id + - prsn_drg_spec_type_id + - prsn_ethnicity_id + - prsn_gndr_id + - prsn_helmet_id + - prsn_injry_sev_id + - prsn_nbr + - prsn_occpnt_pos_id + - prsn_rest_id + - prsn_type_id + - unit_id + - years_of_life_lost + - created_by + - drvr_city_name + - drvr_zip + - prsn_bac_test_rslt + - prsn_first_name + - prsn_last_name + - prsn_mid_name + - prsn_name_sfx + - prsn_taken_by + - prsn_taken_to + - updated_by + - created_at + - prsn_death_timestamp + - updated_at + filter: {} + comment: "" + - role: readonly + permission: + columns: + - is_primary_person + - prsn_exp_homelessness + - drvr_drg_cat_1_id + - ems_id + - est_comp_cost_crash_based + - id + - prsn_age + - prsn_alc_rslt_id + - prsn_alc_spec_type_id + - prsn_drg_rslt_id + - prsn_drg_spec_type_id + - prsn_ethnicity_id + - prsn_gndr_id + - prsn_helmet_id + - prsn_injry_sev_id + - prsn_nbr + - prsn_occpnt_pos_id + - prsn_rest_id + - prsn_type_id + - unit_id + - years_of_life_lost + - created_by + - drvr_city_name + - drvr_zip + - prsn_bac_test_rslt + - prsn_first_name + - prsn_last_name + - prsn_mid_name + - prsn_name_sfx + - prsn_taken_by + - prsn_taken_to + - updated_by + - created_at + - prsn_death_timestamp + - updated_at + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - is_primary_person + - prsn_exp_homelessness + - drvr_drg_cat_1_id + - ems_id + - est_comp_cost_crash_based + - id + - prsn_age + - prsn_alc_rslt_id + - prsn_alc_spec_type_id + - prsn_drg_rslt_id + - prsn_drg_spec_type_id + - prsn_ethnicity_id + - prsn_gndr_id + - prsn_helmet_id + - prsn_injry_sev_id + - prsn_nbr + - prsn_occpnt_pos_id + - prsn_rest_id + - prsn_type_id + - unit_id + - years_of_life_lost + - created_by + - drvr_city_name + - drvr_zip + - prsn_bac_test_rslt + - prsn_first_name + - prsn_last_name + - prsn_mid_name + - prsn_name_sfx + - prsn_taken_by + - prsn_taken_to + - updated_by + - created_at + - prsn_death_timestamp + - updated_at + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/public_people_cris.yaml b/atd-vzd/metadata/databases/default/tables/public_people_cris.yaml new file mode 100644 index 000000000..232092618 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_people_cris.yaml @@ -0,0 +1,87 @@ +table: + name: people_cris + schema: public +object_relationships: + - name: crashes_cri + using: + foreign_key_constraint_on: cris_crash_id + - name: people_edit + using: + foreign_key_constraint_on: + column: id + table: + name: people_edits + schema: public + - name: units_cris + using: + foreign_key_constraint_on: unit_id +array_relationships: + - name: change_log_people_cris + using: + foreign_key_constraint_on: + column: record_id + table: + name: change_log_people_cris + schema: public + - name: charges_cris + using: + foreign_key_constraint_on: + column: person_id + table: + name: charges_cris + schema: public +insert_permissions: + - role: vz-admin + permission: + check: {} + columns: + - created_by + - cris_crash_id + - cris_schema_version + - drvr_city_name + - drvr_drg_cat_1_id + - drvr_zip + - is_primary_person + - prsn_age + - prsn_alc_rslt_id + - prsn_alc_spec_type_id + - prsn_bac_test_rslt + - prsn_death_timestamp + - prsn_drg_rslt_id + - prsn_drg_spec_type_id + - prsn_ethnicity_id + - prsn_exp_homelessness + - prsn_first_name + - prsn_gndr_id + - prsn_helmet_id + - prsn_injry_sev_id + - prsn_last_name + - prsn_mid_name + - prsn_name_sfx + - prsn_nbr + - prsn_occpnt_pos_id + - prsn_rest_id + - prsn_taken_by + - prsn_taken_to + - prsn_type_id + - unit_id + - unit_nbr + - updated_by + comment: "" +select_permissions: + - role: vz-admin + permission: + columns: + - id + - unit_id + filter: {} + comment: "" +update_permissions: + - role: vz-admin + permission: + columns: + - is_deleted + - updated_by + filter: {} + check: null + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/public_people_edits.yaml b/atd-vzd/metadata/databases/default/tables/public_people_edits.yaml new file mode 100644 index 000000000..d49a9b528 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_people_edits.yaml @@ -0,0 +1,209 @@ +table: + name: people_edits + schema: public +object_relationships: + - name: ems__incident + using: + foreign_key_constraint_on: ems_id + - name: people_cri + using: + foreign_key_constraint_on: id + - name: units_cri + using: + foreign_key_constraint_on: unit_id +array_relationships: + - name: change_log_people_edits + using: + foreign_key_constraint_on: + column: record_id + table: + name: change_log_people_edits + schema: public +select_permissions: + - role: editor + permission: + columns: + - created_at + - created_by + - drvr_city_name + - drvr_drg_cat_1_id + - drvr_zip + - ems_id + - id + - is_primary_person + - prsn_age + - prsn_alc_rslt_id + - prsn_alc_spec_type_id + - prsn_bac_test_rslt + - prsn_death_timestamp + - prsn_drg_rslt_id + - prsn_drg_spec_type_id + - prsn_ethnicity_id + - prsn_exp_homelessness + - prsn_first_name + - prsn_gndr_id + - prsn_helmet_id + - prsn_injry_sev_id + - prsn_last_name + - prsn_mid_name + - prsn_name_sfx + - prsn_nbr + - prsn_occpnt_pos_id + - prsn_rest_id + - prsn_taken_by + - prsn_taken_to + - prsn_type_id + - unit_id + - updated_at + - updated_by + filter: {} + comment: "" + - role: readonly + permission: + columns: + - is_primary_person + - prsn_exp_homelessness + - drvr_drg_cat_1_id + - ems_id + - id + - prsn_age + - prsn_alc_rslt_id + - prsn_alc_spec_type_id + - prsn_drg_rslt_id + - prsn_drg_spec_type_id + - prsn_ethnicity_id + - prsn_gndr_id + - prsn_helmet_id + - prsn_injry_sev_id + - prsn_nbr + - prsn_occpnt_pos_id + - prsn_rest_id + - prsn_type_id + - unit_id + - created_by + - drvr_city_name + - drvr_zip + - prsn_bac_test_rslt + - prsn_first_name + - prsn_last_name + - prsn_mid_name + - prsn_name_sfx + - prsn_taken_by + - prsn_taken_to + - updated_by + - created_at + - prsn_death_timestamp + - updated_at + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - is_primary_person + - prsn_exp_homelessness + - drvr_drg_cat_1_id + - ems_id + - id + - prsn_age + - prsn_alc_rslt_id + - prsn_alc_spec_type_id + - prsn_drg_rslt_id + - prsn_drg_spec_type_id + - prsn_ethnicity_id + - prsn_gndr_id + - prsn_helmet_id + - prsn_injry_sev_id + - prsn_nbr + - prsn_occpnt_pos_id + - prsn_rest_id + - prsn_type_id + - unit_id + - created_by + - drvr_city_name + - drvr_zip + - prsn_bac_test_rslt + - prsn_first_name + - prsn_last_name + - prsn_mid_name + - prsn_name_sfx + - prsn_taken_by + - prsn_taken_to + - updated_by + - created_at + - prsn_death_timestamp + - updated_at + filter: {} + comment: "" +update_permissions: + - role: editor + permission: + columns: + - drvr_city_name + - drvr_drg_cat_1_id + - drvr_zip + - ems_id + - id + - is_primary_person + - prsn_age + - prsn_alc_rslt_id + - prsn_alc_spec_type_id + - prsn_bac_test_rslt + - prsn_death_timestamp + - prsn_drg_rslt_id + - prsn_drg_spec_type_id + - prsn_ethnicity_id + - prsn_exp_homelessness + - prsn_first_name + - prsn_gndr_id + - prsn_helmet_id + - prsn_injry_sev_id + - prsn_last_name + - prsn_mid_name + - prsn_name_sfx + - prsn_nbr + - prsn_occpnt_pos_id + - prsn_rest_id + - prsn_taken_by + - prsn_taken_to + - prsn_type_id + - unit_id + - updated_by + filter: {} + check: {} + comment: "" + - role: vz-admin + permission: + columns: + - drvr_city_name + - drvr_drg_cat_1_id + - drvr_zip + - ems_id + - id + - is_primary_person + - prsn_age + - prsn_alc_rslt_id + - prsn_alc_spec_type_id + - prsn_bac_test_rslt + - prsn_death_timestamp + - prsn_drg_rslt_id + - prsn_drg_spec_type_id + - prsn_ethnicity_id + - prsn_exp_homelessness + - prsn_first_name + - prsn_gndr_id + - prsn_helmet_id + - prsn_injry_sev_id + - prsn_last_name + - prsn_mid_name + - prsn_name_sfx + - prsn_nbr + - prsn_occpnt_pos_id + - prsn_rest_id + - prsn_taken_by + - prsn_taken_to + - prsn_type_id + - unit_id + - updated_by + filter: {} + check: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/public_people_list_view.yaml b/atd-vzd/metadata/databases/default/tables/public_people_list_view.yaml new file mode 100644 index 000000000..e36516a5b --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_people_list_view.yaml @@ -0,0 +1,182 @@ +table: + name: people_list_view + schema: public +object_relationships: + - name: drvr_ethncty + using: + manual_configuration: + column_mapping: + prsn_ethnicity_id: id + insertion_order: null + remote_table: + name: drvr_ethncty + schema: lookups + - name: gndr + using: + manual_configuration: + column_mapping: + prsn_gndr_id: id + insertion_order: null + remote_table: + name: gndr + schema: lookups + - name: injry_sev + using: + manual_configuration: + column_mapping: + prsn_injry_sev_id: id + insertion_order: null + remote_table: + name: injry_sev + schema: lookups + - name: prsn_type + using: + manual_configuration: + column_mapping: + prsn_type_id: id + insertion_order: null + remote_table: + name: prsn_type + schema: lookups +select_permissions: + - role: editor + permission: + columns: + - is_primary_person + - prsn_exp_homelessness + - crash_pk + - cris_crash_id + - drvr_drg_cat_1_id + - ems_id + - est_comp_cost_crash_based + - id + - prsn_age + - prsn_alc_rslt_id + - prsn_alc_spec_type_id + - prsn_drg_rslt_id + - prsn_drg_spec_type_id + - prsn_ethnicity_id + - prsn_gndr_id + - prsn_helmet_id + - prsn_injry_sev_id + - prsn_nbr + - prsn_occpnt_pos_id + - prsn_rest_id + - prsn_type_id + - unit_desc_id + - unit_id + - unit_nbr + - years_of_life_lost + - created_by + - drvr_city_name + - drvr_zip + - mode_desc + - prsn_bac_test_rslt + - prsn_first_name + - prsn_injry_sev_desc + - prsn_last_name + - prsn_mid_name + - prsn_name_sfx + - prsn_taken_by + - prsn_taken_to + - updated_by + - crash_timestamp + - created_at + - prsn_death_timestamp + - updated_at + filter: {} + comment: "" + - role: readonly + permission: + columns: + - is_primary_person + - prsn_exp_homelessness + - crash_pk + - cris_crash_id + - drvr_drg_cat_1_id + - ems_id + - est_comp_cost_crash_based + - id + - prsn_age + - prsn_alc_rslt_id + - prsn_alc_spec_type_id + - prsn_drg_rslt_id + - prsn_drg_spec_type_id + - prsn_ethnicity_id + - prsn_gndr_id + - prsn_helmet_id + - prsn_injry_sev_id + - prsn_nbr + - prsn_occpnt_pos_id + - prsn_rest_id + - prsn_type_id + - unit_desc_id + - unit_id + - unit_nbr + - years_of_life_lost + - created_by + - drvr_city_name + - drvr_zip + - mode_desc + - prsn_bac_test_rslt + - prsn_first_name + - prsn_injry_sev_desc + - prsn_last_name + - prsn_mid_name + - prsn_name_sfx + - prsn_taken_by + - prsn_taken_to + - updated_by + - crash_timestamp + - created_at + - prsn_death_timestamp + - updated_at + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - is_primary_person + - prsn_exp_homelessness + - crash_pk + - cris_crash_id + - drvr_drg_cat_1_id + - ems_id + - est_comp_cost_crash_based + - id + - prsn_age + - prsn_alc_rslt_id + - prsn_alc_spec_type_id + - prsn_drg_rslt_id + - prsn_drg_spec_type_id + - prsn_ethnicity_id + - prsn_gndr_id + - prsn_helmet_id + - prsn_injry_sev_id + - prsn_nbr + - prsn_occpnt_pos_id + - prsn_rest_id + - prsn_type_id + - unit_desc_id + - unit_id + - unit_nbr + - years_of_life_lost + - created_by + - drvr_city_name + - drvr_zip + - mode_desc + - prsn_bac_test_rslt + - prsn_first_name + - prsn_injry_sev_desc + - prsn_last_name + - prsn_mid_name + - prsn_name_sfx + - prsn_taken_by + - prsn_taken_to + - updated_by + - crash_timestamp + - created_at + - prsn_death_timestamp + - updated_at + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/public_person_injury_metrics_view.yaml b/atd-vzd/metadata/databases/default/tables/public_person_injury_metrics_view.yaml new file mode 100644 index 000000000..bc727b954 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_person_injury_metrics_view.yaml @@ -0,0 +1,3 @@ +table: + name: person_injury_metrics_view + schema: public diff --git a/atd-vzd/metadata/databases/default/tables/public_recommendations.yaml b/atd-vzd/metadata/databases/default/tables/public_recommendations.yaml index 098a6e5d9..0f23c47f1 100644 --- a/atd-vzd/metadata/databases/default/tables/public_recommendations.yaml +++ b/atd-vzd/metadata/databases/default/tables/public_recommendations.yaml @@ -5,9 +5,9 @@ object_relationships: - name: atd__recommendation_status_lkp using: foreign_key_constraint_on: recommendation_status_id - - name: atd_txdot_crash + - name: crash using: - foreign_key_constraint_on: crash_id + foreign_key_constraint_on: crash_pk array_relationships: - name: recommendations_partners using: @@ -23,7 +23,7 @@ insert_permissions: columns: - id - created_at - - crash_id + - crash_pk - recommendation_status_id - rec_text - created_by @@ -34,7 +34,7 @@ insert_permissions: columns: - id - created_at - - crash_id + - crash_pk - recommendation_status_id - rec_text - created_by @@ -43,7 +43,7 @@ select_permissions: - role: editor permission: columns: - - crash_id + - crash_pk - id - recommendation_status_id - created_by @@ -51,10 +51,22 @@ select_permissions: - rec_update - created_at filter: {} + - role: readonly + permission: + columns: + - crash_pk + - created_at + - created_by + - id + - rec_text + - rec_update + - recommendation_status_id + filter: {} + comment: "" - role: vz-admin permission: columns: - - crash_id + - crash_pk - id - recommendation_status_id - created_by @@ -66,7 +78,7 @@ update_permissions: - role: editor permission: columns: - - crash_id + - crash_pk - id - recommendation_status_id - created_by @@ -78,7 +90,7 @@ update_permissions: - role: vz-admin permission: columns: - - crash_id + - crash_pk - id - recommendation_status_id - created_by diff --git a/atd-vzd/metadata/databases/default/tables/public_recommendations_partners.yaml b/atd-vzd/metadata/databases/default/tables/public_recommendations_partners.yaml index 379bee508..5a7190d4d 100644 --- a/atd-vzd/metadata/databases/default/tables/public_recommendations_partners.yaml +++ b/atd-vzd/metadata/databases/default/tables/public_recommendations_partners.yaml @@ -31,6 +31,14 @@ select_permissions: - partner_id - recommendation_id filter: {} + - role: readonly + permission: + columns: + - id + - partner_id + - recommendation_id + filter: {} + comment: "" - role: vz-admin permission: columns: diff --git a/atd-vzd/metadata/databases/default/tables/public_socrata_export_crashes_view.yaml b/atd-vzd/metadata/databases/default/tables/public_socrata_export_crashes_view.yaml new file mode 100644 index 000000000..ce6a15c10 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_socrata_export_crashes_view.yaml @@ -0,0 +1,151 @@ +table: + name: socrata_export_crashes_view + schema: public +select_permissions: + - role: editor + permission: + columns: + - bicycle_death_count + - bicycle_serious_injury_count + - death_cnt + - law_enf_fatality_count + - micromobility_death_count + - micromobility_serious_injury_count + - motorcycle_death_count + - motorcycle_serious_injury_count + - motor_vehicle_death_count + - motor_vehicle_serious_injury_count + - nonincap_injry_cnt + - non_injry_cnt + - other_death_count + - other_serious_injury_count + - pedestrian_death_count + - pedestrian_serious_injury_count + - poss_injry_cnt + - sus_serious_injry_cnt + - tot_injry_cnt + - unkn_injry_cnt + - years_of_life_lost + - crash_fatal_fl + - onsys_fl + - private_dr_fl + - road_constr_zone_fl + - cris_crash_id + - crash_sev_id + - crash_speed_limit + - id + - is_deleted + - is_temp_record + - latitude + - longitude + - address_primary + - address_secondary + - case_id + - crash_timestamp + - crash_timestamp_ct + - point + - rpt_block_num + - rpt_street_name + - rpt_street_sfx + - units_involved + filter: {} + allow_aggregations: true + comment: "" + - role: readonly + permission: + columns: + - bicycle_death_count + - bicycle_serious_injury_count + - death_cnt + - law_enf_fatality_count + - micromobility_death_count + - micromobility_serious_injury_count + - motorcycle_death_count + - motorcycle_serious_injury_count + - motor_vehicle_death_count + - motor_vehicle_serious_injury_count + - nonincap_injry_cnt + - non_injry_cnt + - other_death_count + - other_serious_injury_count + - pedestrian_death_count + - pedestrian_serious_injury_count + - poss_injry_cnt + - sus_serious_injry_cnt + - tot_injry_cnt + - unkn_injry_cnt + - years_of_life_lost + - crash_fatal_fl + - onsys_fl + - private_dr_fl + - road_constr_zone_fl + - cris_crash_id + - crash_sev_id + - crash_speed_limit + - id + - is_deleted + - is_temp_record + - latitude + - longitude + - address_primary + - address_secondary + - case_id + - crash_timestamp + - crash_timestamp_ct + - point + - rpt_block_num + - rpt_street_name + - rpt_street_sfx + - units_involved + filter: {} + allow_aggregations: true + comment: "" + - role: vz-admin + permission: + columns: + - bicycle_death_count + - bicycle_serious_injury_count + - death_cnt + - law_enf_fatality_count + - micromobility_death_count + - micromobility_serious_injury_count + - motorcycle_death_count + - motorcycle_serious_injury_count + - motor_vehicle_death_count + - motor_vehicle_serious_injury_count + - nonincap_injry_cnt + - non_injry_cnt + - other_death_count + - other_serious_injury_count + - pedestrian_death_count + - pedestrian_serious_injury_count + - poss_injry_cnt + - sus_serious_injry_cnt + - tot_injry_cnt + - unkn_injry_cnt + - years_of_life_lost + - crash_fatal_fl + - onsys_fl + - private_dr_fl + - road_constr_zone_fl + - cris_crash_id + - crash_sev_id + - crash_speed_limit + - id + - is_deleted + - is_temp_record + - latitude + - longitude + - address_primary + - address_secondary + - case_id + - crash_timestamp + - crash_timestamp_ct + - point + - rpt_block_num + - rpt_street_name + - rpt_street_sfx + - units_involved + filter: {} + allow_aggregations: true + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/public_socrata_export_people_view.yaml b/atd-vzd/metadata/databases/default/tables/public_socrata_export_people_view.yaml new file mode 100644 index 000000000..e7b1ba165 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_socrata_export_people_view.yaml @@ -0,0 +1,3 @@ +table: + name: socrata_export_people_view + schema: public diff --git a/atd-vzd/metadata/databases/default/tables/public_unit_injury_metrics_view.yaml b/atd-vzd/metadata/databases/default/tables/public_unit_injury_metrics_view.yaml new file mode 100644 index 000000000..55c4da006 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_unit_injury_metrics_view.yaml @@ -0,0 +1,52 @@ +table: + name: unit_injury_metrics_view + schema: public +select_permissions: + - role: editor + permission: + columns: + - cris_fatality_count + - fatality_count + - law_enf_fatality_count + - nonincap_injry_count + - non_injry_count + - poss_injry_count + - sus_serious_injry_count + - unkn_injry_count + - vz_fatality_count + - years_of_life_lost + - id + filter: {} + comment: "" + - role: readonly + permission: + columns: + - cris_fatality_count + - fatality_count + - law_enf_fatality_count + - nonincap_injry_count + - non_injry_count + - poss_injry_count + - sus_serious_injry_count + - unkn_injry_count + - vz_fatality_count + - years_of_life_lost + - id + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - cris_fatality_count + - fatality_count + - law_enf_fatality_count + - nonincap_injry_count + - non_injry_count + - poss_injry_count + - sus_serious_injry_count + - unkn_injry_count + - vz_fatality_count + - years_of_life_lost + - id + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/public_units.yaml b/atd-vzd/metadata/databases/default/tables/public_units.yaml new file mode 100644 index 000000000..9a68677e0 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_units.yaml @@ -0,0 +1,166 @@ +table: + name: units + schema: public +object_relationships: + - name: contrib_factr + using: + foreign_key_constraint_on: contrib_factr_1_id + - name: crashes + using: + foreign_key_constraint_on: crash_pk + - name: movt + using: + foreign_key_constraint_on: movement_id + - name: trvl_dir + using: + foreign_key_constraint_on: veh_trvl_dir_id + - name: unit_desc + using: + foreign_key_constraint_on: unit_desc_id + - name: unit_injury_metrics_view + using: + manual_configuration: + column_mapping: + id: id + insertion_order: null + remote_table: + name: unit_injury_metrics_view + schema: public + - name: veh_body_styl + using: + foreign_key_constraint_on: veh_body_styl_id + - name: veh_make + using: + foreign_key_constraint_on: veh_make_id + - name: veh_mod + using: + foreign_key_constraint_on: veh_mod_id +array_relationships: + - name: people + using: + foreign_key_constraint_on: + column: unit_id + table: + name: people + schema: public +select_permissions: + - role: editor + permission: + columns: + - vz_mode_category_id + - autonomous_unit_id + - contrib_factr_1_id + - contrib_factr_2_id + - contrib_factr_3_id + - contrib_factr_p1_id + - contrib_factr_p2_id + - crash_pk + - e_scooter_id + - first_harm_evt_inv_id + - id + - movement_id + - pbcat_pedalcyclist_id + - pbcat_pedestrian_id + - pedalcyclist_action_id + - pedestrian_action_id + - rpt_autonomous_level_engaged_id + - unit_desc_id + - unit_nbr + - veh_body_styl_id + - veh_damage_description1_id + - veh_damage_description2_id + - veh_damage_direction_of_force1_id + - veh_damage_direction_of_force2_id + - veh_damage_severity1_id + - veh_damage_severity2_id + - veh_make_id + - veh_mod_id + - veh_mod_year + - veh_trvl_dir_id + - created_by + - updated_by + - vin + - created_at + - updated_at + filter: {} + comment: "" + - role: readonly + permission: + columns: + - vz_mode_category_id + - autonomous_unit_id + - contrib_factr_1_id + - contrib_factr_2_id + - contrib_factr_3_id + - contrib_factr_p1_id + - contrib_factr_p2_id + - crash_pk + - e_scooter_id + - first_harm_evt_inv_id + - id + - movement_id + - pbcat_pedalcyclist_id + - pbcat_pedestrian_id + - pedalcyclist_action_id + - pedestrian_action_id + - rpt_autonomous_level_engaged_id + - unit_desc_id + - unit_nbr + - veh_body_styl_id + - veh_damage_description1_id + - veh_damage_description2_id + - veh_damage_direction_of_force1_id + - veh_damage_direction_of_force2_id + - veh_damage_severity1_id + - veh_damage_severity2_id + - veh_make_id + - veh_mod_id + - veh_mod_year + - veh_trvl_dir_id + - created_by + - updated_by + - vin + - created_at + - updated_at + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - vz_mode_category_id + - autonomous_unit_id + - contrib_factr_1_id + - contrib_factr_2_id + - contrib_factr_3_id + - contrib_factr_p1_id + - contrib_factr_p2_id + - crash_pk + - e_scooter_id + - first_harm_evt_inv_id + - id + - movement_id + - pbcat_pedalcyclist_id + - pbcat_pedestrian_id + - pedalcyclist_action_id + - pedestrian_action_id + - rpt_autonomous_level_engaged_id + - unit_desc_id + - unit_nbr + - veh_body_styl_id + - veh_damage_description1_id + - veh_damage_description2_id + - veh_damage_direction_of_force1_id + - veh_damage_direction_of_force2_id + - veh_damage_severity1_id + - veh_damage_severity2_id + - veh_make_id + - veh_mod_id + - veh_mod_year + - veh_trvl_dir_id + - created_by + - updated_by + - vin + - created_at + - updated_at + filter: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/public_units_cris.yaml b/atd-vzd/metadata/databases/default/tables/public_units_cris.yaml new file mode 100644 index 000000000..7088538d4 --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_units_cris.yaml @@ -0,0 +1,91 @@ +table: + name: units_cris + schema: public +object_relationships: + - name: crashes_cris + using: + foreign_key_constraint_on: crash_pk + - name: units_edit + using: + foreign_key_constraint_on: + column: id + table: + name: units_edits + schema: public +array_relationships: + - name: change_log_units_cris + using: + foreign_key_constraint_on: + column: record_id + table: + name: change_log_units_cris + schema: public + - name: people_cris + using: + foreign_key_constraint_on: + column: unit_id + table: + name: people_cris + schema: public + - name: people_edits + using: + foreign_key_constraint_on: + column: unit_id + table: + name: people_edits + schema: public +insert_permissions: + - role: vz-admin + permission: + check: {} + columns: + - autonomous_unit_id + - contrib_factr_1_id + - contrib_factr_2_id + - contrib_factr_3_id + - contrib_factr_p1_id + - contrib_factr_p2_id + - crash_pk + - created_by + - cris_crash_id + - cris_schema_version + - e_scooter_id + - first_harm_evt_inv_id + - pbcat_pedalcyclist_id + - pbcat_pedestrian_id + - pedalcyclist_action_id + - pedestrian_action_id + - rpt_autonomous_level_engaged_id + - unit_desc_id + - unit_nbr + - updated_by + - veh_body_styl_id + - veh_damage_description1_id + - veh_damage_description2_id + - veh_damage_direction_of_force1_id + - veh_damage_direction_of_force2_id + - veh_damage_severity1_id + - veh_damage_severity2_id + - veh_make_id + - veh_mod_id + - veh_mod_year + - veh_trvl_dir_id + - vin + comment: "" +select_permissions: + - role: vz-admin + permission: + columns: + - crash_pk + - id + filter: {} + comment: "" +update_permissions: + - role: vz-admin + permission: + columns: + - is_deleted + - updated_by + filter: {} + check: null + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/public_units_edits.yaml b/atd-vzd/metadata/databases/default/tables/public_units_edits.yaml new file mode 100644 index 000000000..a5282944c --- /dev/null +++ b/atd-vzd/metadata/databases/default/tables/public_units_edits.yaml @@ -0,0 +1,209 @@ +table: + name: units_edits + schema: public +object_relationships: + - name: crashes_cris + using: + foreign_key_constraint_on: crash_pk + - name: units_cri + using: + foreign_key_constraint_on: id +array_relationships: + - name: change_log_units_edits + using: + foreign_key_constraint_on: + column: record_id + table: + name: change_log_units_edits + schema: public +select_permissions: + - role: editor + permission: + columns: + - autonomous_unit_id + - contrib_factr_1_id + - contrib_factr_2_id + - contrib_factr_3_id + - contrib_factr_p1_id + - contrib_factr_p2_id + - crash_pk + - e_scooter_id + - first_harm_evt_inv_id + - id + - movement_id + - pbcat_pedalcyclist_id + - pbcat_pedestrian_id + - pedalcyclist_action_id + - pedestrian_action_id + - rpt_autonomous_level_engaged_id + - unit_desc_id + - unit_nbr + - veh_body_styl_id + - veh_damage_description1_id + - veh_damage_description2_id + - veh_damage_direction_of_force1_id + - veh_damage_direction_of_force2_id + - veh_damage_severity1_id + - veh_damage_severity2_id + - veh_make_id + - veh_mod_id + - veh_mod_year + - veh_trvl_dir_id + - created_by + - updated_by + - vin + - created_at + - updated_at + filter: {} + comment: "" + - role: readonly + permission: + columns: + - autonomous_unit_id + - contrib_factr_1_id + - contrib_factr_2_id + - contrib_factr_3_id + - contrib_factr_p1_id + - contrib_factr_p2_id + - crash_pk + - e_scooter_id + - first_harm_evt_inv_id + - id + - movement_id + - pbcat_pedalcyclist_id + - pbcat_pedestrian_id + - pedalcyclist_action_id + - pedestrian_action_id + - rpt_autonomous_level_engaged_id + - unit_desc_id + - unit_nbr + - veh_body_styl_id + - veh_damage_description1_id + - veh_damage_description2_id + - veh_damage_direction_of_force1_id + - veh_damage_direction_of_force2_id + - veh_damage_severity1_id + - veh_damage_severity2_id + - veh_make_id + - veh_mod_id + - veh_mod_year + - veh_trvl_dir_id + - created_by + - updated_by + - vin + - created_at + - updated_at + filter: {} + comment: "" + - role: vz-admin + permission: + columns: + - autonomous_unit_id + - contrib_factr_1_id + - contrib_factr_2_id + - contrib_factr_3_id + - contrib_factr_p1_id + - contrib_factr_p2_id + - crash_pk + - e_scooter_id + - first_harm_evt_inv_id + - id + - movement_id + - pbcat_pedalcyclist_id + - pbcat_pedestrian_id + - pedalcyclist_action_id + - pedestrian_action_id + - rpt_autonomous_level_engaged_id + - unit_desc_id + - unit_nbr + - veh_body_styl_id + - veh_damage_description1_id + - veh_damage_description2_id + - veh_damage_direction_of_force1_id + - veh_damage_direction_of_force2_id + - veh_damage_severity1_id + - veh_damage_severity2_id + - veh_make_id + - veh_mod_id + - veh_mod_year + - veh_trvl_dir_id + - created_by + - updated_by + - vin + - created_at + - updated_at + filter: {} + comment: "" +update_permissions: + - role: editor + permission: + columns: + - autonomous_unit_id + - contrib_factr_1_id + - contrib_factr_2_id + - contrib_factr_3_id + - contrib_factr_p1_id + - contrib_factr_p2_id + - crash_pk + - e_scooter_id + - first_harm_evt_inv_id + - movement_id + - pbcat_pedalcyclist_id + - pbcat_pedestrian_id + - pedalcyclist_action_id + - pedestrian_action_id + - rpt_autonomous_level_engaged_id + - unit_desc_id + - unit_nbr + - updated_by + - veh_body_styl_id + - veh_damage_description1_id + - veh_damage_description2_id + - veh_damage_direction_of_force1_id + - veh_damage_direction_of_force2_id + - veh_damage_severity1_id + - veh_damage_severity2_id + - veh_make_id + - veh_mod_id + - veh_mod_year + - veh_trvl_dir_id + - vin + filter: {} + check: null + comment: "" + - role: vz-admin + permission: + columns: + - autonomous_unit_id + - contrib_factr_1_id + - contrib_factr_2_id + - contrib_factr_3_id + - contrib_factr_p1_id + - contrib_factr_p2_id + - crash_pk + - e_scooter_id + - first_harm_evt_inv_id + - movement_id + - pbcat_pedalcyclist_id + - pbcat_pedestrian_id + - pedalcyclist_action_id + - pedestrian_action_id + - rpt_autonomous_level_engaged_id + - unit_desc_id + - unit_nbr + - updated_by + - veh_body_styl_id + - veh_damage_description1_id + - veh_damage_description2_id + - veh_damage_direction_of_force1_id + - veh_damage_direction_of_force2_id + - veh_damage_severity1_id + - veh_damage_severity2_id + - veh_make_id + - veh_mod_id + - veh_mod_year + - veh_trvl_dir_id + - vin + filter: {} + check: {} + comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/public_view_crashes_inconsistent_numbers.yaml b/atd-vzd/metadata/databases/default/tables/public_view_crashes_inconsistent_numbers.yaml deleted file mode 100644 index 3d21632e3..000000000 --- a/atd-vzd/metadata/databases/default/tables/public_view_crashes_inconsistent_numbers.yaml +++ /dev/null @@ -1,19 +0,0 @@ -table: - name: view_crashes_inconsistent_numbers - schema: public -select_permissions: - - role: vz-admin - permission: - columns: - - atp_death_cnt - - atpp_death_cnt - - atpp_sus_serious_injry_cnt - - atp_sus_serious_injry_cnt - - atu_death_cnt - - atu_sus_serious_injry_cnt - - atc_crash_id - - atc_death_cnt - - sus_serious_injry_cnt - filter: {} - allow_aggregations: true - comment: "" diff --git a/atd-vzd/metadata/databases/default/tables/public_view_fatalities.yaml b/atd-vzd/metadata/databases/default/tables/public_view_fatalities.yaml index 00566870d..41adbcd2e 100644 --- a/atd-vzd/metadata/databases/default/tables/public_view_fatalities.yaml +++ b/atd-vzd/metadata/databases/default/tables/public_view_fatalities.yaml @@ -29,15 +29,6 @@ object_relationships: remote_table: name: atd_txdot_primaryperson schema: public - - name: recommendation - using: - manual_configuration: - column_mapping: - crash_id: crash_id - insertion_order: null - remote_table: - name: recommendations - schema: public select_permissions: - role: vz-admin permission: diff --git a/atd-vzd/metadata/databases/default/tables/tables.yaml b/atd-vzd/metadata/databases/default/tables/tables.yaml index e9b595e19..9e1a74e15 100644 --- a/atd-vzd/metadata/databases/default/tables/tables.yaml +++ b/atd-vzd/metadata/databases/default/tables/tables.yaml @@ -1,3 +1,47 @@ +- "!include lookups_agency.yaml" +- "!include lookups_autonomous_level_engaged.yaml" +- "!include lookups_autonomous_unit.yaml" +- "!include lookups_city.yaml" +- "!include lookups_cnty.yaml" +- "!include lookups_collsn.yaml" +- "!include lookups_contrib_factr.yaml" +- "!include lookups_drvr_ethncty.yaml" +- "!include lookups_e_scooter.yaml" +- "!include lookups_gndr.yaml" +- "!include lookups_harm_evnt.yaml" +- "!include lookups_helmet.yaml" +- "!include lookups_injry_sev.yaml" +- "!include lookups_intrsct_relat.yaml" +- "!include lookups_light_cond.yaml" +- "!include lookups_mode_category.yaml" +- "!include lookups_movt.yaml" +- "!include lookups_obj_struck.yaml" +- "!include lookups_occpnt_pos.yaml" +- "!include lookups_pbcat_pedalcyclist.yaml" +- "!include lookups_pbcat_pedestrian.yaml" +- "!include lookups_pedalcyclist_action.yaml" +- "!include lookups_pedestrian_action.yaml" +- "!include lookups_prsn_type.yaml" +- "!include lookups_rest.yaml" +- "!include lookups_road_part.yaml" +- "!include lookups_rwy_sys.yaml" +- "!include lookups_specimen_type.yaml" +- "!include lookups_substnc_cat.yaml" +- "!include lookups_substnc_tst_result.yaml" +- "!include lookups_surf_cond.yaml" +- "!include lookups_surf_type.yaml" +- "!include lookups_traffic_cntl.yaml" +- "!include lookups_trvl_dir.yaml" +- "!include lookups_unit_desc.yaml" +- "!include lookups_veh_body_styl.yaml" +- "!include lookups_veh_damage_description.yaml" +- "!include lookups_veh_damage_severity.yaml" +- "!include lookups_veh_direction_of_force.yaml" +- "!include lookups_veh_make.yaml" +- "!include lookups_veh_mod.yaml" +- "!include lookups_wthr_cond.yaml" +- "!include public__column_metadata.yaml" +- "!include public__cris_import_log.yaml" - "!include public_atd__coordination_partners_lkp.yaml" - "!include public_atd__mode_category_lkp.yaml" - "!include public_atd__recommendation_status_lkp.yaml" @@ -37,7 +81,6 @@ - "!include public_atd_txdot_change_log.yaml" - "!include public_atd_txdot_change_status.yaml" - "!include public_atd_txdot_changes.yaml" -- "!include public_atd_txdot_changes_view.yaml" - "!include public_atd_txdot_charges.yaml" - "!include public_atd_txdot_crash_locations.yaml" - "!include public_atd_txdot_crash_locations_ranking.yaml" @@ -45,23 +88,49 @@ - "!include public_atd_txdot_crashes.yaml" - "!include public_atd_txdot_geocoders.yaml" - "!include public_atd_txdot_locations.yaml" -- "!include public_atd_txdot_locations_with_centroids.yaml" - "!include public_atd_txdot_person.yaml" - "!include public_atd_txdot_primaryperson.yaml" - "!include public_atd_txdot_streets.yaml" - "!include public_atd_txdot_units.yaml" +- "!include public_change_log_crashes.yaml" +- "!include public_change_log_crashes_cris.yaml" +- "!include public_change_log_crashes_edits.yaml" +- "!include public_change_log_people.yaml" +- "!include public_change_log_people_cris.yaml" +- "!include public_change_log_people_edits.yaml" +- "!include public_change_log_units.yaml" +- "!include public_change_log_units_cris.yaml" +- "!include public_change_log_units_edits.yaml" +- "!include public_charges_cris.yaml" - "!include public_council_districts.yaml" +- "!include public_crash_injury_metrics_view.yaml" - "!include public_crash_notes.yaml" +- "!include public_crashes.yaml" +- "!include public_crashes_change_log_view.yaml" +- "!include public_crashes_cris.yaml" +- "!include public_crashes_edits.yaml" +- "!include public_crashes_list_view.yaml" - "!include public_ems__incidents.yaml" - "!include public_engineering_areas.yaml" -- "!include public_fatalities.yaml" +- "!include public_fatalities_view.yaml" - "!include public_grafana_crash_counts.yaml" +- "!include public_location_crashes_view.yaml" - "!include public_location_notes.yaml" +- "!include public_locations_list_view.yaml" - "!include public_locations_with_crash_injury_counts.yaml" +- "!include public_people.yaml" +- "!include public_people_cris.yaml" +- "!include public_people_edits.yaml" +- "!include public_people_list_view.yaml" +- "!include public_person_injury_metrics_view.yaml" - "!include public_recommendations.yaml" - "!include public_recommendations_partners.yaml" -- "!include public_view_crashes_inconsistent_numbers.yaml" -- "!include public_view_fatalities.yaml" +- "!include public_socrata_export_crashes_view.yaml" +- "!include public_socrata_export_people_view.yaml" +- "!include public_unit_injury_metrics_view.yaml" +- "!include public_units.yaml" +- "!include public_units_cris.yaml" +- "!include public_units_edits.yaml" - "!include public_view_location_crashes_by_manner_collision.yaml" - "!include public_view_location_crashes_by_veh_body_style.yaml" - "!include public_view_location_crashes_global.yaml" diff --git a/atd-vzd/migrations/default/1715960000000_delete_crufty_locations_columns/down.sql b/atd-vzd/migrations/default/1715960000000_delete_crufty_locations_columns/down.sql new file mode 100644 index 000000000..45ce13ae7 --- /dev/null +++ b/atd-vzd/migrations/default/1715960000000_delete_crufty_locations_columns/down.sql @@ -0,0 +1,2 @@ +-- Not reversible :) +SELECT 0; diff --git a/atd-vzd/migrations/default/1715960000000_delete_crufty_locations_columns/up.sql b/atd-vzd/migrations/default/1715960000000_delete_crufty_locations_columns/up.sql new file mode 100644 index 000000000..7f482d155 --- /dev/null +++ b/atd-vzd/migrations/default/1715960000000_delete_crufty_locations_columns/up.sql @@ -0,0 +1,51 @@ +-- This is an old crufty view that needs to be dropped bc it has dependencies with some columns we are dropping +DROP VIEW atd_txdot_locations_with_centroids; + +-- Removing unused crufty columns +ALTER TABLE atd_txdot_locations +DROP COLUMN IF EXISTS asmp_street_level, +DROP COLUMN IF EXISTS address, +DROP COLUMN IF EXISTS is_retired, +DROP COLUMN IF EXISTS bicycle_score, +DROP COLUMN IF EXISTS broken_out_intersections_union, +DROP COLUMN IF EXISTS community_context_score, +DROP COLUMN IF EXISTS community_dest_score, +DROP COLUMN IF EXISTS cr3_report_count, +DROP COLUMN IF EXISTS crash_history_score, +DROP COLUMN IF EXISTS death_count, +DROP COLUMN IF EXISTS development_engineer_area_id, +DROP COLUMN IF EXISTS intersection, +DROP COLUMN IF EXISTS intersection_union, +DROP COLUMN IF EXISTS is_intersecting_district, +DROP COLUMN IF EXISTS is_studylocation, +DROP COLUMN IF EXISTS is_svrd, +DROP COLUMN IF EXISTS minority_score, +DROP COLUMN IF EXISTS non_cr3_report_count, +DROP COLUMN IF EXISTS non_incapacitating_injury_count, +DROP COLUMN IF EXISTS non_injury_count, +DROP COLUMN IF EXISTS overlapping_geometry, +DROP COLUMN IF EXISTS polygon_hex_id, +DROP COLUMN IF EXISTS polygon_id, +DROP COLUMN IF EXISTS possible_injury_count, +DROP COLUMN IF EXISTS poverty_score, +DROP COLUMN IF EXISTS priority_level, +DROP COLUMN IF EXISTS road, +DROP COLUMN IF EXISTS road_name, +DROP COLUMN IF EXISTS sidewalk_score, +DROP COLUMN IF EXISTS signal_engineer_area_id, +DROP COLUMN IF EXISTS spine, +DROP COLUMN IF EXISTS suspected_serious_injury_count, +DROP COLUMN IF EXISTS total_cc_and_history_score, +DROP COLUMN IF EXISTS total_comprehensive_cost, +DROP COLUMN IF EXISTS total_crash_count, +DROP COLUMN IF EXISTS total_speed_mgmt_points, +DROP COLUMN IF EXISTS transit_score, +DROP COLUMN IF EXISTS level_1, +DROP COLUMN IF EXISTS level_2, +DROP COLUMN IF EXISTS level_3, +DROP COLUMN IF EXISTS level_4, +DROP COLUMN IF EXISTS level_5, +DROP COLUMN IF EXISTS metadata, +DROP COLUMN IF EXISTS unique_id, +DROP COLUMN IF EXISTS shape, +DROP COLUMN IF EXISTS unknown_injury_count; diff --git a/atd-vzd/migrations/default/1715960000001_update_noncr3_location/down.sql b/atd-vzd/migrations/default/1715960000001_update_noncr3_location/down.sql new file mode 100644 index 000000000..972cdc017 --- /dev/null +++ b/atd-vzd/migrations/default/1715960000001_update_noncr3_location/down.sql @@ -0,0 +1,40 @@ +DROP TRIGGER update_noncr3_location_on_insert ON atd_apd_blueform; + +DROP TRIGGER update_noncr3_location_on_update ON atd_apd_blueform; + +DROP FUNCTION public.update_noncr3_location(); + +CREATE OR REPLACE FUNCTION public.update_noncr3_location() + RETURNS trigger + LANGUAGE plpgsql +AS $function$ +BEGIN + -- Check if crash is on a major road and of concern to TxDOT. + -- NEW.position is recalculated in a trigger called + -- atd_txdot_blueform_update_position which runs before this trigger. + IF EXISTS ( + SELECT + ncr3m.* + FROM + non_cr3_mainlanes AS ncr3m + WHERE ((NEW.position && ncr3m.geometry) + AND ST_Contains(ST_Transform(ST_Buffer(ST_Transform(ncr3m.geometry, 2277), 1, 'endcap=flat join=round'), 4326), + /* transform into 2277 to buffer by a foot, not a degree */ + NEW.position))) THEN + -- If it is, then set the location_id to None + NEW.location_id = NULL; +ELSE + -- If it isn't on a major road and is of concern to Vision Zero, try to find a location_id for it. + NEW.location_id = ( + SELECT + location_id + FROM + atd_txdot_locations AS atl + WHERE (atl.location_group = 1 + AND(atl.shape && NEW.position) + AND ST_Contains(atl.shape, NEW.position))); +END IF; + RETURN NEW; +END; +$function$ +; \ No newline at end of file diff --git a/atd-vzd/migrations/default/1715960000001_update_noncr3_location/up.sql b/atd-vzd/migrations/default/1715960000001_update_noncr3_location/up.sql new file mode 100644 index 000000000..d64b2e95e --- /dev/null +++ b/atd-vzd/migrations/default/1715960000001_update_noncr3_location/up.sql @@ -0,0 +1,59 @@ +-- Updating the update_noncr3_location function to use geometry instead of shape +DROP TRIGGER update_noncr3_location_on_insert ON atd_apd_blueform; + +DROP TRIGGER update_noncr3_location_on_update ON atd_apd_blueform; + +DROP FUNCTION public.update_noncr3_location(); + +CREATE OR REPLACE FUNCTION public.update_noncr3_location() + RETURNS trigger + LANGUAGE plpgsql +AS $function$ +BEGIN + -- Check if crash is on a major road and of concern to TxDOT. + -- NEW.position is recalculated in a trigger called + -- atd_txdot_blueform_update_position which runs before this trigger. + IF EXISTS ( + SELECT + ncr3m.* + FROM + non_cr3_mainlanes AS ncr3m + WHERE ((NEW.position && ncr3m.geometry) + AND ST_Contains(ST_Transform(ST_Buffer(ST_Transform(ncr3m.geometry, 2277), 1, 'endcap=flat join=round'), 4326), + /* transform into 2277 to buffer by a foot, not a degree */ + NEW.position))) THEN + -- If it is, then set the location_id to None + NEW.location_id = NULL; +ELSE + -- If it isn't on a major road and is of concern to Vision Zero, try to find a location_id for it. + NEW.location_id = ( + SELECT + location_id + FROM + atd_txdot_locations AS atl + WHERE (atl.location_group = 1 + AND(atl.geometry && NEW.position) + AND ST_Contains(atl.geometry, NEW.position))); +END IF; + RETURN NEW; +END; +$function$ +; + +create trigger update_noncr3_location_on_insert before +insert + on + public.atd_apd_blueform for each row + when (((new.latitude is not null) + and (new.longitude is not null))) execute function update_noncr3_location(); + +create trigger update_noncr3_location_on_update before +update + on + public.atd_apd_blueform for each row + when (((old.latitude is distinct +from + new.latitude) + or (old.longitude is distinct +from + new.longitude))) execute function update_noncr3_location(); diff --git a/atd-vzd/triggers/find_service_road_location_for_centerline_crash.sql b/atd-vzd/migrations/default/1715960000002_drop_crufty_function/down.sql similarity index 55% rename from atd-vzd/triggers/find_service_road_location_for_centerline_crash.sql rename to atd-vzd/migrations/default/1715960000002_drop_crufty_function/down.sql index bb7aa9b1f..bad3718a6 100644 --- a/atd-vzd/triggers/find_service_road_location_for_centerline_crash.sql +++ b/atd-vzd/migrations/default/1715960000002_drop_crufty_function/down.sql @@ -1,15 +1,6 @@ --- This function is intended to be called via Hasura when the AWS lambda function, crash_update_location/app.py, --- when a crash is found to be on a main-lane. It will return the location_id of a VZ location which belongs --- to the closest location that was formed from a service road and has its centroid lie within a cone --- eminating from the crash location in a direction 90 degrees out of phase of the direction of travel --- notated in the 'rpt_street_name' field or the 'rpt_sec_street_name' field of the crash. -create or replace function find_service_road_location_for_centerline_crash(input_crash_id integer) -returns setof atd_txdot_locations -language 'sql' -stable -as $QUERY$ --- this CTE will setup a in-memory table containing one crash_id, its position, --- and the seek direction if and only if the crash supplied lies within a mainlane strip +CREATE FUNCTION public.find_service_road_location_for_centerline_crash(input_crash_id integer) RETURNS SETOF public.atd_txdot_locations + LANGUAGE sql STABLE + AS $$ with crash as ( WITH cr3_mainlanes AS ( SELECT st_transform(st_buffer(st_transform(st_union(cr3_mainlanes.geometry), 2277), 1), 4326) AS geometry @@ -36,8 +27,6 @@ with crash as ( and c.crash_id = input_crash_id limit 1 ) --- this query joins the crash found in the CTE with the polygon layer to find the closest --- polygon centroid in the cone eminating from the crash location in the seek_direction defined in the CTE select l.* from atd_txdot_locations l join crash c on (1 = 1) @@ -64,4 +53,59 @@ AND st_intersects(st_transform(st_buffer(st_transform(c.position, 2277), 750), 4 AND l.description ~~* '%SVRD%' ORDER BY (st_distance(st_centroid(l.shape), c.position)) limit 1 -$QUERY$; +$$; + +CREATE FUNCTION public.find_noncr3_collisions_for_location(id character varying) RETURNS SETOF public.atd_apd_blueform + LANGUAGE sql STABLE + AS $$ +SELECT + * +FROM + atd_apd_blueform AS blueform +WHERE + ST_Contains(( + SELECT + atd_loc.shape +FROM atd_txdot_locations AS atd_loc +WHERE + atd_loc.location_id::VARCHAR=id), ST_SetSRID(ST_MakePoint (blueform.longitude, blueform.latitude), 4326)) +$$; + +CREATE FUNCTION public.find_cr3_collisions_for_location(id character varying) RETURNS SETOF public.atd_txdot_crashes + LANGUAGE sql STABLE + AS $$ +SELECT + * +FROM + atd_txdot_crashes AS cr3_crash +WHERE + ST_Contains(( + SELECT + atd_loc.shape +FROM atd_txdot_locations AS atd_loc +WHERE + atd_loc.location_id::VARCHAR=id), ST_SetSRID(ST_MakePoint(cr3_crash.longitude_primary, cr3_crash.latitude_primary), 4326)) +$$; + +CREATE FUNCTION public.search_atd_location_crashes(location_id character varying) RETURNS SETOF public.atd_txdot_crashes + LANGUAGE sql STABLE + AS $$ + SELECT atc.* FROM atd_txdot_crashes AS atc + JOIN atd_txdot_locations AS atl ON ST_CONTAINS(atl.shape, atc.position) + WHERE atl.unique_id = location_id; +$$; + +CREATE FUNCTION public.search_atd_crash_location(crash_id integer) RETURNS SETOF public.atd_txdot_locations + LANGUAGE sql STABLE + AS $$ + SELECT * FROM atd_txdot_locations AS atl + WHERE ST_Contains(atl.shape, (SELECT atc.position FROM atd_txdot_crashes AS atc WHERE atc.crash_id = crash_id)) +$$; + +CREATE FUNCTION public.search_atd_crash_locations(crash_id integer) RETURNS SETOF public.atd_txdot_locations + LANGUAGE sql STABLE + AS $$ + SELECT * FROM atd_txdot_locations AS atl + WHERE ST_Contains(atl.shape, (SELECT atc.position FROM atd_txdot_crashes AS atc WHERE atc.crash_id = crash_id LIMIT 1)) + LIMIT 1 +$$; diff --git a/atd-vzd/migrations/default/1715960000002_drop_crufty_function/up.sql b/atd-vzd/migrations/default/1715960000002_drop_crufty_function/up.sql new file mode 100644 index 000000000..5b2bd0254 --- /dev/null +++ b/atd-vzd/migrations/default/1715960000002_drop_crufty_function/up.sql @@ -0,0 +1,12 @@ +-- Cleanup of some crufty functions we dont use anymore +DROP FUNCTION find_service_road_location_for_centerline_crash; + +DROP FUNCTION find_noncr3_collisions_for_location; + +DROP FUNCTION find_cr3_collisions_for_location; + +DROP FUNCTION search_atd_location_crashes; + +DROP FUNCTION search_atd_crash_locations; + +DROP FUNCTION search_atd_crash_location; diff --git a/atd-vzd/migrations/default/1715960000003_update_locations_audit_trigger/down.sql b/atd-vzd/migrations/default/1715960000003_update_locations_audit_trigger/down.sql new file mode 100644 index 000000000..5d8f6786a --- /dev/null +++ b/atd-vzd/migrations/default/1715960000003_update_locations_audit_trigger/down.sql @@ -0,0 +1,59 @@ +DROP TRIGGER atd_txdot_location_audit_log on public.atd_txdot_locations; + +DROP FUNCTION public.atd_txdot_locations_updates_audit_log(); + +CREATE FUNCTION public.atd_txdot_locations_updates_audit_log() RETURNS trigger + LANGUAGE plpgsql + AS $$ +BEGIN + INSERT INTO atd_txdot_locations_change_log (location_id, record_json) + VALUES (OLD.location_id, row_to_json(OLD)); + ------------------------------------------------------------------------------------------ + -- Street Name Standardization + ------------------------------------------------------------------------------------------ + -- We have to make sure the intersection is organized alphabetically. + -- The intersection description has to have this format: + -- "11th @ Congress" (without the quotation marks) + -- The script will automatically split the string by the '@' character + -- and sort them into alphabetical order. + IF (NEW.description IS NOT NULL) THEN + NEW.description = (SELECT TRIM(STRING_AGG(TRIM(val), ' @ ')) AS output + FROM ( SELECT regexp_split_to_table(NEW.description, '@') AS val ORDER BY val ) AS sub); + END IF; + ------------------------------------------------------------------------------------------ + -- SCALE FACTOR + ------------------------------------------------------------------------------------------ + -- If we have a scale factor, we assume it is in feet. + -- The shape will be scaled up/down based on a positive or negative value in feet. + -- The feet will then be converted to meters, which in turn is passed to the + -- ST_Expand function, and the new shape is set based on the value it returns. + IF(NEW.scale_factor IS NOT NULL AND NEW.shape IS NOT NULL) THEN + NEW.shape = ST_Buffer(ST_SetSRID(NEW.shape,4326), (NEW.scale_factor/3.2808)*0.0000089); + END IF; + NEW.scale_factor = NULL; -- CLEAN UP FOR NEXT USE, REGARDLESS. + --- END OF SCALE FACTOR OPERATIONS --- + ------------------------------------------------------------------------------------------ + -- ST_CENTROID (latitude, longitude) + ------------------------------------------------------------------------------------------ + -- If we have a shape, then calculate the centroid lat/longs + IF(NEW.shape IS NOT NULL) THEN + NEW.longitude = ST_X(ST_CENTROID(NEW.shape)); + NEW.latitude = ST_Y(ST_CENTROID(NEW.shape)); + -- Else, default to NULL for lat/longs. + ELSE + NEW.longitude = NULL; + NEW.latitude = NULL; + END IF; + --- END OF CENTROID OPERATIONS --- + -- Record the current timestamp + NEW.last_update = current_timestamp; + RETURN NEW; +END; +$$; + +create trigger atd_txdot_location_audit_log before +insert + or +update + on + public.atd_txdot_locations for each row execute function atd_txdot_locations_updates_audit_log(); diff --git a/atd-vzd/migrations/default/1715960000003_update_locations_audit_trigger/up.sql b/atd-vzd/migrations/default/1715960000003_update_locations_audit_trigger/up.sql new file mode 100644 index 000000000..3d83be648 --- /dev/null +++ b/atd-vzd/migrations/default/1715960000003_update_locations_audit_trigger/up.sql @@ -0,0 +1,60 @@ +-- Updating the atd_txdot_locations_updates_audit_log function to use geometry instead of shape +DROP TRIGGER atd_txdot_location_audit_log on public.atd_txdot_locations; + +DROP FUNCTION public.atd_txdot_locations_updates_audit_log(); + +CREATE FUNCTION public.atd_txdot_locations_updates_audit_log() RETURNS trigger + LANGUAGE plpgsql + AS $$ +BEGIN + INSERT INTO atd_txdot_locations_change_log (location_id, record_json) + VALUES (OLD.location_id, row_to_json(OLD)); + ------------------------------------------------------------------------------------------ + -- Street Name Standardization + ------------------------------------------------------------------------------------------ + -- We have to make sure the intersection is organized alphabetically. + -- The intersection description has to have this format: + -- "11th @ Congress" (without the quotation marks) + -- The script will automatically split the string by the '@' character + -- and sort them into alphabetical order. + IF (NEW.description IS NOT NULL) THEN + NEW.description = (SELECT TRIM(STRING_AGG(TRIM(val), ' @ ')) AS output + FROM ( SELECT regexp_split_to_table(NEW.description, '@') AS val ORDER BY val ) AS sub); + END IF; + ------------------------------------------------------------------------------------------ + -- SCALE FACTOR + ------------------------------------------------------------------------------------------ + -- If we have a scale factor, we assume it is in feet. + -- The geometry will be scaled up/down based on a positive or negative value in feet. + -- The feet will then be converted to meters, which in turn is passed to the + -- ST_Expand function, and the new geometry is set based on the value it returns. + IF(NEW.scale_factor IS NOT NULL AND NEW.geometry IS NOT NULL) THEN + NEW.geometry = ST_Buffer(ST_SetSRID(NEW.geometry,4326), (NEW.scale_factor/3.2808)*0.0000089); + END IF; + NEW.scale_factor = NULL; -- CLEAN UP FOR NEXT USE, REGARDLESS. + --- END OF SCALE FACTOR OPERATIONS --- + ------------------------------------------------------------------------------------------ + -- ST_CENTROID (latitude, longitude) + ------------------------------------------------------------------------------------------ + -- If we have a geometry, then calculate the centroid lat/longs + IF(NEW.geometry IS NOT NULL) THEN + NEW.longitude = ST_X(ST_CENTROID(NEW.geometry)); + NEW.latitude = ST_Y(ST_CENTROID(NEW.geometry)); + -- Else, default to NULL for lat/longs. + ELSE + NEW.longitude = NULL; + NEW.latitude = NULL; + END IF; + --- END OF CENTROID OPERATIONS --- + -- Record the current timestamp + NEW.last_update = current_timestamp; + RETURN NEW; +END; +$$; + +create trigger atd_txdot_location_audit_log before +insert + or +update + on + public.atd_txdot_locations for each row execute function atd_txdot_locations_updates_audit_log(); diff --git a/atd-vzd/migrations/default/1715960000004_update_ems_incidents_trigger_function/down.sql b/atd-vzd/migrations/default/1715960000004_update_ems_incidents_trigger_function/down.sql new file mode 100644 index 000000000..1d976e3ed --- /dev/null +++ b/atd-vzd/migrations/default/1715960000004_update_ems_incidents_trigger_function/down.sql @@ -0,0 +1,51 @@ +DROP TRIGGER ems_incidents_trigger_insert ON ems__incidents; + +DROP TRIGGER ems_incidents_trigger_update ON ems__incidents; + +DROP FUNCTION public.ems_incidents_trigger(); + +CREATE FUNCTION public.ems_incidents_trigger() RETURNS trigger + LANGUAGE plpgsql + AS $$ +BEGIN + update ems__incidents set + austin_full_purpose = ( + select ST_Contains(jurisdiction.geometry, incidents.geometry) + from ems__incidents incidents + left join atd_jurisdictions jurisdiction on (jurisdiction.jurisdiction_label = 'AUSTIN FULL PURPOSE') + where incidents.id = new.id), + location_id = ( + select locations.location_id + from ems__incidents incidents + join atd_txdot_locations locations on (locations.location_group = 1 and incidents.geometry && locations.shape and ST_Contains(locations.shape, incidents.geometry)) + where incidents.id = new.id), + latitude = ST_Y(ems__incidents.geometry), + longitude = ST_X(ems__incidents.geometry), + apd_incident_number_1 = ems__incidents.apd_incident_numbers[1], + apd_incident_number_2 = ems__incidents.apd_incident_numbers[2], + mvc_form_date = date(ems__incidents.mvc_form_extrication_datetime), + mvc_form_time = ems__incidents.mvc_form_extrication_datetime::time + where ems__incidents.id = new.id; +RETURN NEW; +END; +$$; + +create trigger ems_incidents_trigger_insert after +insert + on + public.ems__incidents for each row execute function ems_incidents_trigger(); + +create trigger ems_incidents_trigger_update after +update + on + public.ems__incidents for each row + when ((false + or (old.geometry is distinct + from + new.geometry) + or (old.apd_incident_numbers is distinct + from + new.apd_incident_numbers) + or (old.mvc_form_extrication_datetime is distinct + from + new.mvc_form_extrication_datetime))) execute function ems_incidents_trigger(); diff --git a/atd-vzd/migrations/default/1715960000004_update_ems_incidents_trigger_function/up.sql b/atd-vzd/migrations/default/1715960000004_update_ems_incidents_trigger_function/up.sql new file mode 100644 index 000000000..695f12fa3 --- /dev/null +++ b/atd-vzd/migrations/default/1715960000004_update_ems_incidents_trigger_function/up.sql @@ -0,0 +1,54 @@ +-- Updating the ems_incidents_trigger function to use geometry instead of shape +DROP TRIGGER ems_incidents_trigger_insert ON ems__incidents; + +DROP TRIGGER ems_incidents_trigger_update ON ems__incidents; + +DROP FUNCTION public.ems_incidents_trigger(); + +CREATE OR REPLACE FUNCTION public.ems_incidents_trigger() + RETURNS trigger + LANGUAGE plpgsql +AS $function$ +BEGIN + update ems__incidents set + austin_full_purpose = ( + select ST_Contains(jurisdiction.geometry, incidents.geometry) + from ems__incidents incidents + left join atd_jurisdictions jurisdiction on (jurisdiction.jurisdiction_label = 'AUSTIN FULL PURPOSE') + where incidents.id = new.id), + location_id = ( + select locations.location_id + from ems__incidents incidents + join atd_txdot_locations locations on (locations.location_group = 1 and incidents.geometry && locations.geometry and ST_Contains(locations.geometry, incidents.geometry)) + where incidents.id = new.id), + latitude = ST_Y(ems__incidents.geometry), + longitude = ST_X(ems__incidents.geometry), + apd_incident_number_1 = ems__incidents.apd_incident_numbers[1], + apd_incident_number_2 = ems__incidents.apd_incident_numbers[2], + mvc_form_date = date(ems__incidents.mvc_form_extrication_datetime), + mvc_form_time = ems__incidents.mvc_form_extrication_datetime::time + where ems__incidents.id = new.id; +RETURN NEW; +END; +$function$ +; + +create trigger ems_incidents_trigger_insert after +insert + on + public.ems__incidents for each row execute function ems_incidents_trigger(); + +create trigger ems_incidents_trigger_update after +update + on + public.ems__incidents for each row + when ((false + or (old.geometry is distinct + from + new.geometry) + or (old.apd_incident_numbers is distinct + from + new.apd_incident_numbers) + or (old.mvc_form_extrication_datetime is distinct + from + new.mvc_form_extrication_datetime))) execute function ems_incidents_trigger(); diff --git a/atd-vzd/migrations/default/1715960000005_update_afd_incidents_trigger_function/down.sql b/atd-vzd/migrations/default/1715960000005_update_afd_incidents_trigger_function/down.sql new file mode 100644 index 000000000..d200d8a68 --- /dev/null +++ b/atd-vzd/migrations/default/1715960000005_update_afd_incidents_trigger_function/down.sql @@ -0,0 +1,56 @@ +DROP TRIGGER afd_incidents_trigger_insert ON afd__incidents; + +DROP TRIGGER afd_incidents_trigger_update ON afd__incidents; + +DROP FUNCTION public.afd_incidents_trigger(); + +CREATE FUNCTION public.afd_incidents_trigger() RETURNS trigger + LANGUAGE plpgsql + AS $$ +BEGIN + update afd__incidents set + austin_full_purpose = ( + select ST_Contains(jurisdiction.geometry, incidents.geometry) + from afd__incidents incidents + left join atd_jurisdictions jurisdiction on (jurisdiction.jurisdiction_label = 'AUSTIN FULL PURPOSE') + where incidents.id = new.id), + location_id = ( + select locations.location_id + from afd__incidents incidents + join atd_txdot_locations locations on ( + true + and locations.location_group = 1 -- this was added to rule out old level 5s + and incidents.geometry && locations.shape + and ST_Contains(locations.shape, incidents.geometry) + ) + where incidents.id = new.id), + latitude = ST_Y(afd__incidents.geometry), + longitude = ST_X(afd__incidents.geometry), + ems_incident_number_1 = afd__incidents.ems_incident_numbers[1], + ems_incident_number_2 = afd__incidents.ems_incident_numbers[2], + call_date = date(afd__incidents.call_datetime), + call_time = afd__incidents.call_datetime::time + where afd__incidents.id = new.id; +RETURN NEW; +END; +$$; + +create trigger afd_incidents_trigger_insert after +insert + on + public.afd__incidents for each row execute function afd_incidents_trigger(); + +create trigger afd_incidents_trigger_update after +update + on + public.afd__incidents for each row + when ((false + or (old.geometry is distinct + from + new.geometry) + or (old.ems_incident_numbers is distinct + from + new.ems_incident_numbers) + or (old.call_datetime is distinct + from + new.call_datetime))) execute function afd_incidents_trigger(); diff --git a/atd-vzd/migrations/default/1715960000005_update_afd_incidents_trigger_function/up.sql b/atd-vzd/migrations/default/1715960000005_update_afd_incidents_trigger_function/up.sql new file mode 100644 index 000000000..b68a8ccea --- /dev/null +++ b/atd-vzd/migrations/default/1715960000005_update_afd_incidents_trigger_function/up.sql @@ -0,0 +1,59 @@ +-- Updating the afd_incidents_trigger function to use geometry instead of shape +DROP TRIGGER afd_incidents_trigger_insert ON afd__incidents; + +DROP TRIGGER afd_incidents_trigger_update ON afd__incidents; + +DROP FUNCTION public.afd_incidents_trigger(); + +CREATE OR REPLACE FUNCTION public.afd_incidents_trigger() + RETURNS trigger + LANGUAGE plpgsql +AS $function$ +BEGIN + update afd__incidents set + austin_full_purpose = ( + select ST_Contains(jurisdiction.geometry, incidents.geometry) + from afd__incidents incidents + left join atd_jurisdictions jurisdiction on (jurisdiction.jurisdiction_label = 'AUSTIN FULL PURPOSE') + where incidents.id = new.id), + location_id = ( + select locations.location_id + from afd__incidents incidents + join atd_txdot_locations locations on ( + true + and locations.location_group = 1 -- this was added to rule out old level 5s + and incidents.geometry && locations.geometry + and ST_Contains(locations.geometry, incidents.geometry) + ) + where incidents.id = new.id), + latitude = ST_Y(afd__incidents.geometry), + longitude = ST_X(afd__incidents.geometry), + ems_incident_number_1 = afd__incidents.ems_incident_numbers[1], + ems_incident_number_2 = afd__incidents.ems_incident_numbers[2], + call_date = date(afd__incidents.call_datetime), + call_time = afd__incidents.call_datetime::time + where afd__incidents.id = new.id; +RETURN NEW; +END; +$function$ +; + +create trigger afd_incidents_trigger_insert after +insert + on + public.afd__incidents for each row execute function afd_incidents_trigger(); + +create trigger afd_incidents_trigger_update after +update + on + public.afd__incidents for each row + when ((false + or (old.geometry is distinct + from + new.geometry) + or (old.ems_incident_numbers is distinct + from + new.ems_incident_numbers) + or (old.call_datetime is distinct + from + new.call_datetime))) execute function afd_incidents_trigger(); diff --git a/atd-vzd/migrations/default/1715960001005_address_trigger/down.sql b/atd-vzd/migrations/default/1715960001005_address_trigger/down.sql new file mode 100644 index 000000000..ed4798a6d --- /dev/null +++ b/atd-vzd/migrations/default/1715960001005_address_trigger/down.sql @@ -0,0 +1 @@ +select 0; diff --git a/atd-vzd/migrations/default/1715960001005_address_trigger/up.sql b/atd-vzd/migrations/default/1715960001005_address_trigger/up.sql new file mode 100644 index 000000000..207bb5802 --- /dev/null +++ b/atd-vzd/migrations/default/1715960001005_address_trigger/up.sql @@ -0,0 +1,43 @@ +-- +-- function which creates a crash address based on address subparts +-- +CREATE OR REPLACE FUNCTION build_crash_address( + block_num TEXT, + street_pfx TEXT, + street_name TEXT, + street_sfx TEXT +) +RETURNS TEXT AS $$ +DECLARE + address text := ''; +BEGIN + -- Concat each address part only if it's not null and not an empty string + IF block_num IS NOT NULL AND block_num <> '' THEN + address := block_num || ' '; + END IF; + + IF street_pfx IS NOT NULL AND street_pfx <> '' THEN + address := address || street_pfx || ' '; + END IF; + + IF street_name IS NOT NULL AND street_name <> '' THEN + address := address || street_name || ' '; + END IF; + + IF street_sfx IS NOT NULL AND street_sfx <> '' THEN + address := address || street_sfx || ' '; + END IF; + + -- Trim the final address to remove any trailing space + address := trim(address); + + -- Return NULL if the trimmed address is empty + IF address = '' THEN + RETURN NULL; + ELSE + RETURN address; + END IF; + +END; +$$ LANGUAGE plpgsql IMMUTABLE; + diff --git a/atd-vzd/migrations/default/1715960002005_create_schema/down.sql b/atd-vzd/migrations/default/1715960002005_create_schema/down.sql new file mode 100644 index 000000000..594066bae --- /dev/null +++ b/atd-vzd/migrations/default/1715960002005_create_schema/down.sql @@ -0,0 +1 @@ +drop schema if exists lookups cascade; diff --git a/atd-vzd/migrations/default/1715960002005_create_schema/up.sql b/atd-vzd/migrations/default/1715960002005_create_schema/up.sql new file mode 100644 index 000000000..e770329a8 --- /dev/null +++ b/atd-vzd/migrations/default/1715960002005_create_schema/up.sql @@ -0,0 +1 @@ +create schema if not exists lookups; diff --git a/atd-vzd/migrations/default/1715960003005_lookups/down.sql b/atd-vzd/migrations/default/1715960003005_lookups/down.sql new file mode 100644 index 000000000..ed4798a6d --- /dev/null +++ b/atd-vzd/migrations/default/1715960003005_lookups/down.sql @@ -0,0 +1 @@ +select 0; diff --git a/atd-vzd/migrations/default/1715960003005_lookups/up.sql b/atd-vzd/migrations/default/1715960003005_lookups/up.sql new file mode 100644 index 000000000..da289cf8b --- /dev/null +++ b/atd-vzd/migrations/default/1715960003005_lookups/up.sql @@ -0,0 +1,251 @@ +create table lookups.agency ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.autonomous_level_engaged ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.autonomous_unit ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.city ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.cnty ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.collsn ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.contrib_factr ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.drvr_ethncty ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.e_scooter ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.gndr ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.harm_evnt ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.helmet ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.injry_sev ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.intrsct_relat ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.light_cond ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.mode_category ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.movt ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.obj_struck ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.occpnt_pos ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.pbcat_pedalcyclist ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.pbcat_pedestrian ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.pedalcyclist_action ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.pedestrian_action ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.prsn_type ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.rest ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.road_part ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.rwy_sys ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.specimen_type ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.substnc_cat ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.substnc_tst_result ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.surf_cond ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.surf_type ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.traffic_cntl ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.trvl_dir ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.unit_desc ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.veh_body_styl ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.veh_damage_description ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.veh_damage_severity ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.veh_direction_of_force ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.veh_make ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.veh_mod ( + id integer primary key, + label text not null, + source text not null default 'cris' +); + +create table lookups.wthr_cond ( + id integer primary key, + label text not null, + source text not null default 'cris' +); diff --git a/atd-vzd/migrations/default/1715960004005_crashes/down.sql b/atd-vzd/migrations/default/1715960004005_crashes/down.sql new file mode 100644 index 000000000..68625844d --- /dev/null +++ b/atd-vzd/migrations/default/1715960004005_crashes/down.sql @@ -0,0 +1,5 @@ +drop table public.crashes_cris cascade; + +drop table public.crashes_edits cascade; + +drop table public.crashes cascade; diff --git a/atd-vzd/migrations/default/1715960004005_crashes/up.sql b/atd-vzd/migrations/default/1715960004005_crashes/up.sql new file mode 100644 index 000000000..c7e334c07 --- /dev/null +++ b/atd-vzd/migrations/default/1715960004005_crashes/up.sql @@ -0,0 +1,202 @@ +create table public.crashes_cris ( + id serial primary key, + active_school_zone_fl boolean, + at_intrsct_fl boolean, + case_id text, + cr3_processed_at timestamp with time zone, + cr3_stored_fl boolean not null default false, + crash_speed_limit integer, + crash_timestamp timestamp with time zone not null, + created_at timestamptz not null default now(), + created_by text not null default 'system', + cris_crash_id integer unique, + cris_schema_version text not null, + fhe_collsn_id integer references lookups.collsn (id) on update cascade on delete cascade, + intrsct_relat_id integer references lookups.intrsct_relat (id) on update cascade on delete cascade, + investigat_agency_id integer references lookups.agency (id) on update cascade on delete cascade, + investigator_narrative text, + is_deleted boolean not null default false, + is_temp_record boolean not null default false, + latitude numeric, + light_cond_id integer references lookups.light_cond (id) on update cascade on delete cascade, + longitude numeric, + medical_advisory_fl boolean, + obj_struck_id integer references lookups.obj_struck (id) on update cascade on delete cascade, + onsys_fl boolean, + private_dr_fl boolean, + road_constr_zone_fl boolean, + road_constr_zone_wrkr_fl boolean, + rpt_block_num text, + rpt_city_id integer references lookups.city (id) on update cascade on delete cascade, + rpt_cris_cnty_id integer references lookups.cnty (id) on update cascade on delete cascade, + rpt_hwy_num text, + rpt_hwy_sfx text, + rpt_rdwy_sys_id integer references lookups.rwy_sys (id) on update cascade on delete cascade, + rpt_ref_mark_dir text, + rpt_ref_mark_dist_uom text, + rpt_ref_mark_nbr text, + rpt_ref_mark_offset_amt numeric, + rpt_road_part_id integer references lookups.road_part (id) on update cascade on delete cascade, + rpt_sec_block_num text, + rpt_sec_hwy_num text, + rpt_sec_hwy_sfx text, + rpt_sec_rdwy_sys_id integer references lookups.rwy_sys (id) on update cascade on delete cascade, + rpt_sec_road_part_id integer references lookups.road_part (id) on update cascade on delete cascade, + rpt_sec_street_desc text, + rpt_sec_street_name text, + rpt_sec_street_pfx text, + rpt_sec_street_sfx text, + rpt_street_desc text, + rpt_street_name text, + rpt_street_pfx text, + rpt_street_sfx text, + rr_relat_fl boolean, + schl_bus_fl boolean, + surf_cond_id integer references lookups.surf_cond (id) on update cascade on delete cascade, + surf_type_id integer references lookups.surf_type (id) on update cascade on delete cascade, + thousand_damage_fl boolean, + toll_road_fl boolean, + traffic_cntl_id integer references lookups.traffic_cntl (id) on update cascade on delete cascade, + txdot_rptable_fl boolean, + updated_at timestamptz not null default now(), + updated_by text not null default 'system', + wthr_cond_id integer references lookups.wthr_cond (id) on update cascade on delete cascade +); + +create table public.crashes_edits ( + id integer primary key references public.crashes_cris (id) on update cascade on delete cascade, + active_school_zone_fl boolean, + at_intrsct_fl boolean, + case_id text, + cr3_processed_at timestamp with time zone, + cr3_stored_fl boolean, + crash_speed_limit integer, + crash_timestamp timestamp with time zone, + created_at timestamptz not null default now(), + created_by text not null default 'system', + cris_crash_id integer unique, + fhe_collsn_id integer references lookups.collsn (id) on update cascade on delete cascade, + intrsct_relat_id integer references lookups.intrsct_relat (id) on update cascade on delete cascade, + investigat_agency_id integer references lookups.agency (id) on update cascade on delete cascade, + investigator_narrative text, + is_deleted boolean, + is_temp_record boolean, + latitude numeric, + law_enforcement_ytd_fatality_num text, + light_cond_id integer references lookups.light_cond (id) on update cascade on delete cascade, + longitude numeric, + medical_advisory_fl boolean, + obj_struck_id integer references lookups.obj_struck (id) on update cascade on delete cascade, + onsys_fl boolean, + private_dr_fl boolean, + road_constr_zone_fl boolean, + road_constr_zone_wrkr_fl boolean, + rpt_block_num text, + rpt_city_id integer references lookups.city (id) on update cascade on delete cascade, + rpt_cris_cnty_id integer references lookups.cnty (id) on update cascade on delete cascade, + rpt_hwy_num text, + rpt_hwy_sfx text, + rpt_rdwy_sys_id integer references lookups.rwy_sys (id) on update cascade on delete cascade, + rpt_ref_mark_dir text, + rpt_ref_mark_dist_uom text, + rpt_ref_mark_nbr text, + rpt_ref_mark_offset_amt numeric, + rpt_road_part_id integer references lookups.road_part (id) on update cascade on delete cascade, + rpt_sec_block_num text, + rpt_sec_hwy_num text, + rpt_sec_hwy_sfx text, + rpt_sec_rdwy_sys_id integer references lookups.rwy_sys (id) on update cascade on delete cascade, + rpt_sec_road_part_id integer references lookups.road_part (id) on update cascade on delete cascade, + rpt_sec_street_desc text, + rpt_sec_street_name text, + rpt_sec_street_pfx text, + rpt_sec_street_sfx text, + rpt_street_desc text, + rpt_street_name text, + rpt_street_pfx text, + rpt_street_sfx text, + rr_relat_fl boolean, + schl_bus_fl boolean, + surf_cond_id integer references lookups.surf_cond (id) on update cascade on delete cascade, + surf_type_id integer references lookups.surf_type (id) on update cascade on delete cascade, + thousand_damage_fl boolean, + toll_road_fl boolean, + traffic_cntl_id integer references lookups.traffic_cntl (id) on update cascade on delete cascade, + txdot_rptable_fl boolean, + updated_at timestamptz not null default now(), + updated_by text not null default 'system', + wthr_cond_id integer references lookups.wthr_cond (id) on update cascade on delete cascade +); + +create table public.crashes ( + id integer primary key references public.crashes_cris (id) on update cascade on delete cascade, + active_school_zone_fl boolean, + address_primary text generated always as (build_crash_address(rpt_block_num, rpt_street_pfx, rpt_street_name, rpt_street_sfx)) stored, + address_secondary text generated always as (build_crash_address(rpt_sec_block_num, rpt_sec_street_pfx, rpt_sec_street_name, rpt_sec_street_sfx)) stored, + at_intrsct_fl boolean, + case_id text, + council_district integer, + cr3_processed_at timestamp with time zone, + cr3_stored_fl boolean not null default false, + crash_speed_limit integer, + crash_timestamp timestamp with time zone not null, + created_at timestamptz not null default now(), + created_by text not null default 'system', + cris_crash_id integer unique, + engineering_area integer references public.engineering_areas (area_id) on update cascade on delete set null, + fhe_collsn_id integer references lookups.collsn (id) on update cascade on delete cascade, + in_austin_full_purpose boolean, + intrsct_relat_id integer references lookups.intrsct_relat (id) on update cascade on delete cascade, + investigat_agency_id integer references lookups.agency (id) on update cascade on delete cascade, + investigator_narrative text, + is_deleted boolean not null default false, + is_temp_record boolean not null default false, + latitude numeric, + law_enforcement_ytd_fatality_num text, + light_cond_id integer references lookups.light_cond (id) on update cascade on delete cascade, + location_id text references public.atd_txdot_locations (location_id) on update cascade on delete set null, + longitude numeric, + medical_advisory_fl boolean, + obj_struck_id integer references lookups.obj_struck (id) on update cascade on delete cascade, + onsys_fl boolean, + position geometry(Point, 4326), + private_dr_fl boolean, + record_locator text unique not null generated always as (case when is_temp_record = true then 'T' || id::text else cris_crash_id::text end) stored, + road_constr_zone_fl boolean, + road_constr_zone_wrkr_fl boolean, + rpt_block_num text, + rpt_city_id integer references lookups.city (id) on update cascade on delete cascade, + rpt_cris_cnty_id integer references lookups.cnty (id) on update cascade on delete cascade, + rpt_hwy_num text, + rpt_hwy_sfx text, + rpt_rdwy_sys_id integer references lookups.rwy_sys (id) on update cascade on delete cascade, + rpt_ref_mark_dir text, + rpt_ref_mark_dist_uom text, + rpt_ref_mark_nbr text, + rpt_ref_mark_offset_amt numeric, + rpt_road_part_id integer references lookups.road_part (id) on update cascade on delete cascade, + rpt_sec_block_num text, + rpt_sec_hwy_num text, + rpt_sec_hwy_sfx text, + rpt_sec_rdwy_sys_id integer references lookups.rwy_sys (id) on update cascade on delete cascade, + rpt_sec_road_part_id integer references lookups.road_part (id) on update cascade on delete cascade, + rpt_sec_street_desc text, + rpt_sec_street_name text, + rpt_sec_street_pfx text, + rpt_sec_street_sfx text, + rpt_street_desc text, + rpt_street_name text, + rpt_street_pfx text, + rpt_street_sfx text, + rr_relat_fl boolean, + schl_bus_fl boolean, + surf_cond_id integer references lookups.surf_cond (id) on update cascade on delete cascade, + surf_type_id integer references lookups.surf_type (id) on update cascade on delete cascade, + thousand_damage_fl boolean, + toll_road_fl boolean, + traffic_cntl_id integer references lookups.traffic_cntl (id) on update cascade on delete cascade, + txdot_rptable_fl boolean, + updated_at timestamptz not null default now(), + updated_by text not null default 'system', + wthr_cond_id integer references lookups.wthr_cond (id) on update cascade on delete cascade +); diff --git a/atd-vzd/migrations/default/1715960005005_units/down.sql b/atd-vzd/migrations/default/1715960005005_units/down.sql new file mode 100644 index 000000000..c89bf7621 --- /dev/null +++ b/atd-vzd/migrations/default/1715960005005_units/down.sql @@ -0,0 +1,5 @@ +drop table public.units_cris cascade; + +drop table public.units_edits cascade; + +drop table public.units cascade; diff --git a/atd-vzd/migrations/default/1715960005005_units/up.sql b/atd-vzd/migrations/default/1715960005005_units/up.sql new file mode 100644 index 000000000..02c2fdb47 --- /dev/null +++ b/atd-vzd/migrations/default/1715960005005_units/up.sql @@ -0,0 +1,117 @@ +create table public.units_cris ( + id serial primary key, + autonomous_unit_id integer references lookups.autonomous_unit (id) on update cascade on delete cascade, + contrib_factr_1_id integer references lookups.contrib_factr (id) on update cascade on delete cascade, + contrib_factr_2_id integer references lookups.contrib_factr (id) on update cascade on delete cascade, + contrib_factr_3_id integer references lookups.contrib_factr (id) on update cascade on delete cascade, + contrib_factr_p1_id integer references lookups.contrib_factr (id) on update cascade on delete cascade, + contrib_factr_p2_id integer references lookups.contrib_factr (id) on update cascade on delete cascade, + crash_pk integer not null references public.crashes_cris (id) on update cascade on delete cascade, + created_at timestamptz not null default now(), + created_by text not null default 'system', + cris_crash_id integer references public.crashes_cris (cris_crash_id) on update cascade on delete cascade, + cris_schema_version text not null, + e_scooter_id integer references lookups.e_scooter (id) on update cascade on delete cascade, + first_harm_evt_inv_id integer references lookups.harm_evnt (id) on update cascade on delete cascade, + is_deleted boolean not null default false, + pbcat_pedalcyclist_id integer references lookups.pbcat_pedalcyclist (id) on update cascade on delete cascade, + pbcat_pedestrian_id integer references lookups.pbcat_pedestrian (id) on update cascade on delete cascade, + pedalcyclist_action_id integer references lookups.pedalcyclist_action (id) on update cascade on delete cascade, + pedestrian_action_id integer references lookups.pedestrian_action (id) on update cascade on delete cascade, + rpt_autonomous_level_engaged_id integer references lookups.autonomous_level_engaged (id) on update cascade on delete cascade, + unit_desc_id integer references lookups.unit_desc (id) on update cascade on delete cascade, + unit_nbr integer not null, + updated_at timestamptz not null default now(), + updated_by text not null default 'system', + veh_body_styl_id integer references lookups.veh_body_styl (id) on update cascade on delete cascade, + veh_damage_description1_id integer references lookups.veh_damage_description (id) on update cascade on delete cascade, + veh_damage_description2_id integer references lookups.veh_damage_description (id) on update cascade on delete cascade, + veh_damage_direction_of_force1_id integer references lookups.veh_direction_of_force (id) on update cascade on delete cascade, + veh_damage_direction_of_force2_id integer references lookups.veh_direction_of_force (id) on update cascade on delete cascade, + veh_damage_severity1_id integer references lookups.veh_damage_severity (id) on update cascade on delete cascade, + veh_damage_severity2_id integer references lookups.veh_damage_severity (id) on update cascade on delete cascade, + veh_make_id integer references lookups.veh_make (id) on update cascade on delete cascade, + veh_mod_id integer references lookups.veh_mod (id) on update cascade on delete cascade, + veh_mod_year integer, + veh_trvl_dir_id integer references lookups.trvl_dir (id) on update cascade on delete cascade, + vin text +); + +create table public.units_edits ( + id integer primary key references public.units_cris (id) on update cascade on delete cascade, + autonomous_unit_id integer references lookups.autonomous_unit (id) on update cascade on delete cascade, + contrib_factr_1_id integer references lookups.contrib_factr (id) on update cascade on delete cascade, + contrib_factr_2_id integer references lookups.contrib_factr (id) on update cascade on delete cascade, + contrib_factr_3_id integer references lookups.contrib_factr (id) on update cascade on delete cascade, + contrib_factr_p1_id integer references lookups.contrib_factr (id) on update cascade on delete cascade, + contrib_factr_p2_id integer references lookups.contrib_factr (id) on update cascade on delete cascade, + crash_pk integer references public.crashes_cris (id) on update cascade on delete cascade, + created_at timestamptz not null default now(), + created_by text not null default 'system', + cris_crash_id integer references public.crashes_cris (cris_crash_id) on update cascade on delete cascade, + e_scooter_id integer references lookups.e_scooter (id) on update cascade on delete cascade, + first_harm_evt_inv_id integer references lookups.harm_evnt (id) on update cascade on delete cascade, + is_deleted boolean, + movement_id integer references lookups.movt (id) on update cascade on delete cascade, + pbcat_pedalcyclist_id integer references lookups.pbcat_pedalcyclist (id) on update cascade on delete cascade, + pbcat_pedestrian_id integer references lookups.pbcat_pedestrian (id) on update cascade on delete cascade, + pedalcyclist_action_id integer references lookups.pedalcyclist_action (id) on update cascade on delete cascade, + pedestrian_action_id integer references lookups.pedestrian_action (id) on update cascade on delete cascade, + rpt_autonomous_level_engaged_id integer references lookups.autonomous_level_engaged (id) on update cascade on delete cascade, + unit_desc_id integer references lookups.unit_desc (id) on update cascade on delete cascade, + unit_nbr integer, + updated_at timestamptz not null default now(), + updated_by text not null default 'system', + veh_body_styl_id integer references lookups.veh_body_styl (id) on update cascade on delete cascade, + veh_damage_description1_id integer references lookups.veh_damage_description (id) on update cascade on delete cascade, + veh_damage_description2_id integer references lookups.veh_damage_description (id) on update cascade on delete cascade, + veh_damage_direction_of_force1_id integer references lookups.veh_direction_of_force (id) on update cascade on delete cascade, + veh_damage_direction_of_force2_id integer references lookups.veh_direction_of_force (id) on update cascade on delete cascade, + veh_damage_severity1_id integer references lookups.veh_damage_severity (id) on update cascade on delete cascade, + veh_damage_severity2_id integer references lookups.veh_damage_severity (id) on update cascade on delete cascade, + veh_make_id integer references lookups.veh_make (id) on update cascade on delete cascade, + veh_mod_id integer references lookups.veh_mod (id) on update cascade on delete cascade, + veh_mod_year integer, + veh_trvl_dir_id integer references lookups.trvl_dir (id) on update cascade on delete cascade, + vin text +); + +create table public.units ( + id integer primary key, + autonomous_unit_id integer references lookups.autonomous_unit (id) on update cascade on delete cascade, + contrib_factr_1_id integer references lookups.contrib_factr (id) on update cascade on delete cascade, + contrib_factr_2_id integer references lookups.contrib_factr (id) on update cascade on delete cascade, + contrib_factr_3_id integer references lookups.contrib_factr (id) on update cascade on delete cascade, + contrib_factr_p1_id integer references lookups.contrib_factr (id) on update cascade on delete cascade, + contrib_factr_p2_id integer references lookups.contrib_factr (id) on update cascade on delete cascade, + crash_pk integer not null references public.crashes (id) on update cascade on delete cascade, + created_at timestamptz not null default now(), + created_by text not null default 'system', + cris_crash_id integer references public.crashes (cris_crash_id) on update cascade on delete cascade, + e_scooter_id integer references lookups.e_scooter (id) on update cascade on delete cascade, + first_harm_evt_inv_id integer references lookups.harm_evnt (id) on update cascade on delete cascade, + is_deleted boolean not null default false, + movement_id integer references lookups.movt (id) on update cascade on delete cascade, + pbcat_pedalcyclist_id integer references lookups.pbcat_pedalcyclist (id) on update cascade on delete cascade, + pbcat_pedestrian_id integer references lookups.pbcat_pedestrian (id) on update cascade on delete cascade, + pedalcyclist_action_id integer references lookups.pedalcyclist_action (id) on update cascade on delete cascade, + pedestrian_action_id integer references lookups.pedestrian_action (id) on update cascade on delete cascade, + rpt_autonomous_level_engaged_id integer references lookups.autonomous_level_engaged (id) on update cascade on delete cascade, + unit_desc_id integer references lookups.unit_desc (id) on update cascade on delete cascade, + unit_nbr integer not null, + updated_at timestamptz not null default now(), + updated_by text not null default 'system', + veh_body_styl_id integer references lookups.veh_body_styl (id) on update cascade on delete cascade, + veh_damage_description1_id integer references lookups.veh_damage_description (id) on update cascade on delete cascade, + veh_damage_description2_id integer references lookups.veh_damage_description (id) on update cascade on delete cascade, + veh_damage_direction_of_force1_id integer references lookups.veh_direction_of_force (id) on update cascade on delete cascade, + veh_damage_direction_of_force2_id integer references lookups.veh_direction_of_force (id) on update cascade on delete cascade, + veh_damage_severity1_id integer references lookups.veh_damage_severity (id) on update cascade on delete cascade, + veh_damage_severity2_id integer references lookups.veh_damage_severity (id) on update cascade on delete cascade, + veh_make_id integer references lookups.veh_make (id) on update cascade on delete cascade, + veh_mod_id integer references lookups.veh_mod (id) on update cascade on delete cascade, + veh_mod_year integer, + veh_trvl_dir_id integer references lookups.trvl_dir (id) on update cascade on delete cascade, + vin text, + vz_mode_category_id integer references lookups.mode_category (id) on update cascade on delete cascade +); diff --git a/atd-vzd/migrations/default/1715960006005_people/down.sql b/atd-vzd/migrations/default/1715960006005_people/down.sql new file mode 100644 index 000000000..280b4bbfd --- /dev/null +++ b/atd-vzd/migrations/default/1715960006005_people/down.sql @@ -0,0 +1,5 @@ +drop table public.people_cris cascade; + +drop table public.people_edits cascade; + +drop table public.people cascade; diff --git a/atd-vzd/migrations/default/1715960006005_people/up.sql b/atd-vzd/migrations/default/1715960006005_people/up.sql new file mode 100644 index 000000000..1679a99f6 --- /dev/null +++ b/atd-vzd/migrations/default/1715960006005_people/up.sql @@ -0,0 +1,114 @@ +create table public.people_cris ( + id serial primary key, + created_at timestamptz not null default now(), + created_by text not null default 'system', + cris_crash_id integer references public.crashes_cris (cris_crash_id) on delete cascade on update cascade, + cris_schema_version text not null, + drvr_city_name text, + drvr_drg_cat_1_id integer references lookups.substnc_cat (id) on update cascade on delete cascade, + drvr_zip text, + is_deleted boolean not null default false, + is_primary_person boolean, + prsn_age integer, + prsn_alc_rslt_id integer references lookups.substnc_tst_result (id) on update cascade on delete cascade, + prsn_alc_spec_type_id integer references lookups.specimen_type (id) on update cascade on delete cascade, + prsn_bac_test_rslt text, + prsn_death_timestamp timestamptz, + prsn_drg_rslt_id integer references lookups.substnc_tst_result (id) on update cascade on delete cascade, + prsn_drg_spec_type_id integer references lookups.specimen_type (id) on update cascade on delete cascade, + prsn_ethnicity_id integer references lookups.drvr_ethncty (id) on update cascade on delete cascade, + prsn_exp_homelessness boolean not null default false, + prsn_first_name text, + prsn_gndr_id integer references lookups.gndr (id) on update cascade on delete cascade, + prsn_helmet_id integer references lookups.helmet (id) on update cascade on delete cascade, + prsn_injry_sev_id integer references lookups.injry_sev (id) on update cascade on delete cascade, + prsn_last_name text, + prsn_mid_name text, + prsn_name_sfx text, + prsn_nbr integer, + prsn_occpnt_pos_id integer references lookups.occpnt_pos (id) on update cascade on delete cascade, + prsn_rest_id integer references lookups.rest (id) on update cascade on delete cascade, + prsn_taken_by text, + prsn_taken_to text, + prsn_type_id integer references lookups.prsn_type (id) on update cascade on delete cascade, + unit_id integer not null references public.units_cris (id) on update cascade on delete cascade, + unit_nbr integer not null, + updated_at timestamptz not null default now(), + updated_by text not null default 'system' +); + +create table public.people_edits ( + id integer primary key references public.people_cris (id) on update cascade on delete cascade, + created_at timestamptz not null default now(), + created_by text not null default 'system', + drvr_city_name text, + drvr_drg_cat_1_id integer references lookups.substnc_cat (id) on update cascade on delete cascade, + drvr_zip text, + ems_id integer references public.ems__incidents (id) on update cascade on delete set null, + is_deleted boolean, + is_primary_person boolean, + prsn_age integer, + prsn_alc_rslt_id integer references lookups.substnc_tst_result (id) on update cascade on delete cascade, + prsn_alc_spec_type_id integer references lookups.specimen_type (id) on update cascade on delete cascade, + prsn_bac_test_rslt text, + prsn_death_timestamp timestamptz, + prsn_drg_rslt_id integer references lookups.substnc_tst_result (id) on update cascade on delete cascade, + prsn_drg_spec_type_id integer references lookups.specimen_type (id) on update cascade on delete cascade, + prsn_ethnicity_id integer references lookups.drvr_ethncty (id) on update cascade on delete cascade, + prsn_exp_homelessness boolean, + prsn_first_name text, + prsn_gndr_id integer references lookups.gndr (id) on update cascade on delete cascade, + prsn_helmet_id integer references lookups.helmet (id) on update cascade on delete cascade, + prsn_injry_sev_id integer references lookups.injry_sev (id) on update cascade on delete cascade, + prsn_last_name text, + prsn_mid_name text, + prsn_name_sfx text, + prsn_nbr integer, + prsn_occpnt_pos_id integer references lookups.occpnt_pos (id) on update cascade on delete cascade, + prsn_rest_id integer references lookups.rest (id) on update cascade on delete cascade, + prsn_taken_by text, + prsn_taken_to text, + prsn_type_id integer references lookups.prsn_type (id) on update cascade on delete cascade, + unit_id integer references public.units_cris (id) on update cascade on delete cascade, + updated_at timestamptz not null default now(), + updated_by text not null default 'system' +); + +create table public.people ( + id integer primary key, + created_at timestamptz not null default now(), + created_by text not null default 'system', + drvr_city_name text, + drvr_drg_cat_1_id integer references lookups.substnc_cat (id) on update cascade on delete cascade, + drvr_zip text, + ems_id integer references public.ems__incidents (id) on update cascade on delete set null, + est_comp_cost_crash_based integer generated always as (case when (prsn_injry_sev_id = 1) then 3000000 when (prsn_injry_sev_id = 2) then 250000 when (prsn_injry_sev_id = 3) then 200000 when (prsn_injry_sev_id = 4) then 3500000 else 20000 end) stored, + is_deleted boolean not null default false, + is_primary_person boolean, + prsn_age integer, + prsn_alc_rslt_id integer references lookups.substnc_tst_result (id) on update cascade on delete cascade, + prsn_alc_spec_type_id integer references lookups.specimen_type (id) on update cascade on delete cascade, + prsn_bac_test_rslt text, + prsn_death_timestamp timestamptz, + prsn_drg_rslt_id integer references lookups.substnc_tst_result (id) on update cascade on delete cascade, + prsn_drg_spec_type_id integer references lookups.specimen_type (id) on update cascade on delete cascade, + prsn_ethnicity_id integer references lookups.drvr_ethncty (id) on update cascade on delete cascade, + prsn_exp_homelessness boolean not null default false, + prsn_first_name text, + prsn_gndr_id integer references lookups.gndr (id) on update cascade on delete cascade, + prsn_helmet_id integer references lookups.helmet (id) on update cascade on delete cascade, + prsn_injry_sev_id integer references lookups.injry_sev (id) on update cascade on delete cascade, + prsn_last_name text, + prsn_mid_name text, + prsn_name_sfx text, + prsn_nbr integer, + prsn_occpnt_pos_id integer references lookups.occpnt_pos (id) on update cascade on delete cascade, + prsn_rest_id integer references lookups.rest (id) on update cascade on delete cascade, + prsn_taken_by text, + prsn_taken_to text, + prsn_type_id integer references lookups.prsn_type (id) on update cascade on delete cascade, + unit_id integer not null references public.units (id) on update cascade on delete cascade, + updated_at timestamptz not null default now(), + updated_by text not null default 'system', + years_of_life_lost integer generated always as (case when prsn_injry_sev_id = 4 then greatest(75 - prsn_age, 0) else 0 end) stored +); diff --git a/atd-vzd/migrations/default/1715960007005_charges/down.sql b/atd-vzd/migrations/default/1715960007005_charges/down.sql new file mode 100644 index 000000000..c37d3ff6f --- /dev/null +++ b/atd-vzd/migrations/default/1715960007005_charges/down.sql @@ -0,0 +1 @@ +drop table public.charges_cris cascade; diff --git a/atd-vzd/migrations/default/1715960007005_charges/up.sql b/atd-vzd/migrations/default/1715960007005_charges/up.sql new file mode 100644 index 000000000..74bb3fabd --- /dev/null +++ b/atd-vzd/migrations/default/1715960007005_charges/up.sql @@ -0,0 +1,13 @@ +create table public.charges_cris ( + id serial primary key, + charge text, + citation_nbr text, + crash_pk integer not null references public.crashes_cris (id) on update cascade on delete cascade, + created_at timestamptz not null default now(), + created_by text not null default 'system', + cris_crash_id integer not null references public.crashes_cris (cris_crash_id) on update cascade on delete cascade, + cris_schema_version text not null, + person_id integer not null references public.people_cris (id) on update cascade on delete cascade, + prsn_nbr integer not null, + unit_nbr numeric not null +); diff --git a/atd-vzd/migrations/default/1715960008005_table_constraints/down.sql b/atd-vzd/migrations/default/1715960008005_table_constraints/down.sql new file mode 100644 index 000000000..ed4798a6d --- /dev/null +++ b/atd-vzd/migrations/default/1715960008005_table_constraints/down.sql @@ -0,0 +1 @@ +select 0; diff --git a/atd-vzd/migrations/default/1715960008005_table_constraints/up.sql b/atd-vzd/migrations/default/1715960008005_table_constraints/up.sql new file mode 100644 index 000000000..32e82bd50 --- /dev/null +++ b/atd-vzd/migrations/default/1715960008005_table_constraints/up.sql @@ -0,0 +1,6 @@ +alter table public.units_cris add constraint unique_units_cris unique (crash_pk, unit_nbr); +alter table public.units add constraint unique_units unique (crash_pk, unit_nbr) deferrable initially deferred; +alter table public.people_cris add constraint unique_people_cris unique (unit_id, prsn_nbr); +alter table public.people_edits add constraint unique_people_edits unique (unit_id, prsn_nbr); +alter table public.people add constraint unique_people unique (unit_id, prsn_nbr) deferrable initially deferred; + diff --git a/atd-vzd/migrations/default/1715960009005_change_log/down.sql b/atd-vzd/migrations/default/1715960009005_change_log/down.sql new file mode 100644 index 000000000..67ecff670 --- /dev/null +++ b/atd-vzd/migrations/default/1715960009005_change_log/down.sql @@ -0,0 +1,17 @@ +drop table public.change_log_crashes_cris cascade; + +drop table public.change_log_crashes_edits cascade; + +drop table public.change_log_crashes cascade; + +drop table public.change_log_units_cris cascade; + +drop table public.change_log_units_edits cascade; + +drop table public.change_log_units cascade; + +drop table public.change_log_people_cris cascade; + +drop table public.change_log_people_edits cascade; + +drop table public.change_log_people cascade; diff --git a/atd-vzd/migrations/default/1715960009005_change_log/up.sql b/atd-vzd/migrations/default/1715960009005_change_log/up.sql new file mode 100644 index 000000000..d9bbe871f --- /dev/null +++ b/atd-vzd/migrations/default/1715960009005_change_log/up.sql @@ -0,0 +1,188 @@ +--- +--- crashes change log tables +--- + +create table public.change_log_crashes_cris ( + id serial primary key, + record_id integer not null references public.crashes_cris (id) on delete cascade on update cascade, + operation_type text not null, + record_json jsonb not null, + created_at timestamp with time zone default now(), + created_by text not null +); + +create index on public.change_log_crashes_cris (record_id); + + +create table public.change_log_crashes_edits ( + id serial primary key, + record_id integer not null references public.crashes_edits (id) on delete cascade on update cascade, + operation_type text not null, + record_json jsonb not null, + created_at timestamp with time zone default now(), + created_by text not null +); + +create index on public.change_log_crashes_edits (record_id); + + +create table public.change_log_crashes ( + id serial primary key, + record_id integer not null references public.crashes (id) on delete cascade on update cascade, + operation_type text not null, + record_json jsonb not null, + created_at timestamp with time zone default now(), + created_by text not null +); + +create index on public.change_log_crashes (record_id); + + +--- +--- units change log tables +--- + +create table public.change_log_units_cris ( + id serial primary key, + record_id integer not null references public.units_cris (id) on delete cascade on update cascade, + operation_type text not null, + record_json jsonb not null, + created_at timestamp with time zone default now(), + created_by text not null +); + +create index on public.change_log_units_cris (record_id); + + +create table public.change_log_units_edits ( + id serial primary key, + record_id integer not null references public.units_edits (id) on delete cascade on update cascade, + operation_type text not null, + record_json jsonb not null, + created_at timestamp with time zone default now(), + created_by text not null +); + +create index on public.change_log_units_edits (record_id); + + +create table public.change_log_units ( + id serial primary key, + record_id integer not null references public.units (id) on delete cascade on update cascade, + operation_type text not null, + record_json jsonb not null, + created_at timestamp with time zone default now(), + created_by text not null +); + +create index on public.change_log_units (record_id); + + +--- +--- people change log tables +--- + +create table public.change_log_people_cris ( + id serial primary key, + record_id integer not null references public.people_cris (id) on delete cascade on update cascade, + operation_type text not null, + record_json jsonb not null, + created_at timestamp with time zone default now(), + created_by text not null +); + +create index on public.change_log_people_cris (record_id); + + +create table public.change_log_people_edits ( + id serial primary key, + record_id integer not null references public.people_edits (id) on delete cascade on update cascade, + operation_type text not null, + record_json jsonb not null, + created_at timestamp with time zone default now(), + created_by text not null +); + +create index on public.change_log_people_edits (record_id); + + +create table public.change_log_people ( + id serial primary key, + record_id integer not null references public.people (id) on delete cascade on update cascade, + operation_type text not null, + record_json jsonb not null, + created_at timestamp with time zone default now(), + created_by text not null +); + +create index on public.change_log_people (record_id); + + +-- +-- Insert into change log using a dynamic change log table name +-- +create or replace function public.insert_change_log() +returns trigger +language plpgsql +as $$ +declare + update_stmt text := 'insert into public.'; + record_json jsonb; +begin + record_json = jsonb_build_object('new', to_jsonb(new), 'old', to_jsonb(old)); + update_stmt := format('insert into public.change_log_%I (record_id, operation_type, record_json, created_by) + values (%s, %L, %L, $1.%I)', TG_TABLE_NAME, new.id, TG_OP, record_json, 'updated_by'); + execute (update_stmt) using new; + return null; +END; +$$; + + +-- crashes triggers +create trigger insert_change_log_crashes_cris +after insert or update on public.crashes_cris +for each row +execute procedure public.insert_change_log(); + +create trigger insert_change_log_crashes_edits +after insert or update on public.crashes_edits +for each row +execute procedure public.insert_change_log(); + +create trigger insert_change_log_crashes +after insert or update on public.crashes +for each row +execute procedure public.insert_change_log(); + +-- units triggers +create trigger insert_change_log_units_cris +after insert or update on public.units_cris +for each row +execute procedure public.insert_change_log(); + +create trigger insert_change_log_units_edits +after insert or update on public.units_edits +for each row +execute procedure public.insert_change_log(); + +create trigger insert_change_log_units +after insert or update on public.units +for each row +execute procedure public.insert_change_log(); + +-- people triggers +create trigger insert_change_log_people_cris +after insert or update on public.people_cris +for each row +execute procedure public.insert_change_log(); + +create trigger insert_change_log_people_edits +after insert or update on public.people_edits +for each row +execute procedure public.insert_change_log(); + +create trigger insert_change_log_people +after insert or update on public.people +for each row +execute procedure public.insert_change_log(); + diff --git a/atd-vzd/migrations/default/1715960010005_audit_fields/down.sql b/atd-vzd/migrations/default/1715960010005_audit_fields/down.sql new file mode 100644 index 000000000..ed4798a6d --- /dev/null +++ b/atd-vzd/migrations/default/1715960010005_audit_fields/down.sql @@ -0,0 +1 @@ +select 0; diff --git a/atd-vzd/migrations/default/1715960010005_audit_fields/up.sql b/atd-vzd/migrations/default/1715960010005_audit_fields/up.sql new file mode 100644 index 000000000..f683d907c --- /dev/null +++ b/atd-vzd/migrations/default/1715960010005_audit_fields/up.sql @@ -0,0 +1,63 @@ +create or replace function public.set_updated_at_timestamp() +returns trigger +language plpgsql +as $function$ +begin + new.updated_at := now(); + return new; +end; +$function$; + +create trigger set_updated_at_timestamp_crashes_cris +before update on public.crashes_cris +for each row +execute procedure public.set_updated_at_timestamp(); + + +create trigger set_updated_at_timestamp_crashes_edits +before update on public.crashes_edits +for each row +execute procedure public.set_updated_at_timestamp(); + + +create trigger set_updated_at_timestamp_crashes +before update on public.crashes +for each row +execute procedure public.set_updated_at_timestamp(); + + +create trigger set_updated_at_timestamp_units_cris +before update on public.units_cris +for each row +execute procedure public.set_updated_at_timestamp(); + + +create trigger set_updated_at_timestamp_units_edits +before update on public.units_edits +for each row +execute procedure public.set_updated_at_timestamp(); + + +create trigger set_updated_at_timestamp_units +before update on public.units +for each row +execute procedure public.set_updated_at_timestamp(); + + +create trigger set_updated_at_timestamp_people_cris +before update on public.people_cris +for each row +execute procedure public.set_updated_at_timestamp(); + + +create trigger set_updated_at_timestamp_people_edits +before update on public.people_edits +for each row +execute procedure public.set_updated_at_timestamp(); + + +create trigger set_updated_at_timestamp_people +before update on public.people +for each row +execute procedure public.set_updated_at_timestamp(); + diff --git a/atd-vzd/migrations/default/1715960011005_cris_insert_triggers/down.sql b/atd-vzd/migrations/default/1715960011005_cris_insert_triggers/down.sql new file mode 100644 index 000000000..ed4798a6d --- /dev/null +++ b/atd-vzd/migrations/default/1715960011005_cris_insert_triggers/down.sql @@ -0,0 +1 @@ +select 0; diff --git a/atd-vzd/migrations/default/1715960011005_cris_insert_triggers/up.sql b/atd-vzd/migrations/default/1715960011005_cris_insert_triggers/up.sql new file mode 100644 index 000000000..456ce21c6 --- /dev/null +++ b/atd-vzd/migrations/default/1715960011005_cris_insert_triggers/up.sql @@ -0,0 +1,317 @@ +create or replace function public.crashes_cris_insert_rows() +returns trigger +language plpgsql +as +$$ +BEGIN + -- insert new combined / official record + INSERT INTO public.crashes ( + active_school_zone_fl, + at_intrsct_fl, + case_id, + cr3_processed_at, + cr3_stored_fl, + crash_speed_limit, + crash_timestamp, + created_by, + cris_crash_id, + fhe_collsn_id, + id, + intrsct_relat_id, + investigat_agency_id, + investigator_narrative, + is_deleted, + is_temp_record, + latitude, + light_cond_id, + longitude, + medical_advisory_fl, + obj_struck_id, + onsys_fl, + private_dr_fl, + road_constr_zone_fl, + road_constr_zone_wrkr_fl, + rpt_block_num, + rpt_city_id, + rpt_cris_cnty_id, + rpt_hwy_num, + rpt_hwy_sfx, + rpt_rdwy_sys_id, + rpt_ref_mark_dir, + rpt_ref_mark_dist_uom, + rpt_ref_mark_nbr, + rpt_ref_mark_offset_amt, + rpt_road_part_id, + rpt_sec_block_num, + rpt_sec_hwy_num, + rpt_sec_hwy_sfx, + rpt_sec_rdwy_sys_id, + rpt_sec_road_part_id, + rpt_sec_street_desc, + rpt_sec_street_name, + rpt_sec_street_pfx, + rpt_sec_street_sfx, + rpt_street_desc, + rpt_street_name, + rpt_street_pfx, + rpt_street_sfx, + rr_relat_fl, + schl_bus_fl, + surf_cond_id, + surf_type_id, + thousand_damage_fl, + toll_road_fl, + traffic_cntl_id, + txdot_rptable_fl, + updated_by, + wthr_cond_id + ) values ( + new.active_school_zone_fl, + new.at_intrsct_fl, + new.case_id, + new.cr3_processed_at, + new.cr3_stored_fl, + new.crash_speed_limit, + new.crash_timestamp, + new.created_by, + new.cris_crash_id, + new.fhe_collsn_id, + new.id, + new.intrsct_relat_id, + new.investigat_agency_id, + new.investigator_narrative, + new.is_deleted, + new.is_temp_record, + new.latitude, + new.light_cond_id, + new.longitude, + new.medical_advisory_fl, + new.obj_struck_id, + new.onsys_fl, + new.private_dr_fl, + new.road_constr_zone_fl, + new.road_constr_zone_wrkr_fl, + new.rpt_block_num, + new.rpt_city_id, + new.rpt_cris_cnty_id, + new.rpt_hwy_num, + new.rpt_hwy_sfx, + new.rpt_rdwy_sys_id, + new.rpt_ref_mark_dir, + new.rpt_ref_mark_dist_uom, + new.rpt_ref_mark_nbr, + new.rpt_ref_mark_offset_amt, + new.rpt_road_part_id, + new.rpt_sec_block_num, + new.rpt_sec_hwy_num, + new.rpt_sec_hwy_sfx, + new.rpt_sec_rdwy_sys_id, + new.rpt_sec_road_part_id, + new.rpt_sec_street_desc, + new.rpt_sec_street_name, + new.rpt_sec_street_pfx, + new.rpt_sec_street_sfx, + new.rpt_street_desc, + new.rpt_street_name, + new.rpt_street_pfx, + new.rpt_street_sfx, + new.rr_relat_fl, + new.schl_bus_fl, + new.surf_cond_id, + new.surf_type_id, + new.thousand_damage_fl, + new.toll_road_fl, + new.traffic_cntl_id, + new.txdot_rptable_fl, + new.updated_by, + new.wthr_cond_id + ); + -- insert new (editable) vz record (only record ID) + INSERT INTO public.crashes_edits (id) values (new.id); + + RETURN NULL; +END; +$$; + + +create or replace trigger insert_new_crashes_cris +after insert on public.crashes_cris +for each row +execute procedure public.crashes_cris_insert_rows(); + + +create or replace function public.units_cris_insert_rows() +returns trigger +language plpgsql +as +$$ +BEGIN + -- insert new combined / official record + INSERT INTO public.units ( + autonomous_unit_id, + contrib_factr_1_id, + contrib_factr_2_id, + contrib_factr_3_id, + contrib_factr_p1_id, + contrib_factr_p2_id, + crash_pk, + created_by, + cris_crash_id, + e_scooter_id, + first_harm_evt_inv_id, + id, + is_deleted, + pbcat_pedalcyclist_id, + pbcat_pedestrian_id, + pedalcyclist_action_id, + pedestrian_action_id, + rpt_autonomous_level_engaged_id, + unit_desc_id, + unit_nbr, + updated_by, + veh_body_styl_id, + veh_damage_description1_id, + veh_damage_description2_id, + veh_damage_direction_of_force1_id, + veh_damage_direction_of_force2_id, + veh_damage_severity1_id, + veh_damage_severity2_id, + veh_make_id, + veh_mod_id, + veh_mod_year, + veh_trvl_dir_id, + vin + ) values ( + new.autonomous_unit_id, + new.contrib_factr_1_id, + new.contrib_factr_2_id, + new.contrib_factr_3_id, + new.contrib_factr_p1_id, + new.contrib_factr_p2_id, + new.crash_pk, + new.created_by, + new.cris_crash_id, + new.e_scooter_id, + new.first_harm_evt_inv_id, + new.id, + new.is_deleted, + new.pbcat_pedalcyclist_id, + new.pbcat_pedestrian_id, + new.pedalcyclist_action_id, + new.pedestrian_action_id, + new.rpt_autonomous_level_engaged_id, + new.unit_desc_id, + new.unit_nbr, + new.updated_by, + new.veh_body_styl_id, + new.veh_damage_description1_id, + new.veh_damage_description2_id, + new.veh_damage_direction_of_force1_id, + new.veh_damage_direction_of_force2_id, + new.veh_damage_severity1_id, + new.veh_damage_severity2_id, + new.veh_make_id, + new.veh_mod_id, + new.veh_mod_year, + new.veh_trvl_dir_id, + new.vin + ); + -- insert new (editable) vz record (only record ID) + INSERT INTO public.units_edits (id) values (new.id); + + RETURN NULL; +END; +$$; + + +create or replace trigger insert_new_units_cris +after insert on public.units_cris +for each row +execute procedure public.units_cris_insert_rows(); + + +create or replace function public.people_cris_insert_rows() +returns trigger +language plpgsql +as +$$ +BEGIN + -- insert new combined / official record + INSERT INTO public.people ( + created_by, + drvr_city_name, + drvr_drg_cat_1_id, + drvr_zip, + id, + is_deleted, + is_primary_person, + prsn_age, + prsn_alc_rslt_id, + prsn_alc_spec_type_id, + prsn_bac_test_rslt, + prsn_death_timestamp, + prsn_drg_rslt_id, + prsn_drg_spec_type_id, + prsn_ethnicity_id, + prsn_exp_homelessness, + prsn_first_name, + prsn_gndr_id, + prsn_helmet_id, + prsn_injry_sev_id, + prsn_last_name, + prsn_mid_name, + prsn_name_sfx, + prsn_nbr, + prsn_occpnt_pos_id, + prsn_rest_id, + prsn_taken_by, + prsn_taken_to, + prsn_type_id, + unit_id, + updated_by + ) values ( + new.created_by, + new.drvr_city_name, + new.drvr_drg_cat_1_id, + new.drvr_zip, + new.id, + new.is_deleted, + new.is_primary_person, + new.prsn_age, + new.prsn_alc_rslt_id, + new.prsn_alc_spec_type_id, + new.prsn_bac_test_rslt, + new.prsn_death_timestamp, + new.prsn_drg_rslt_id, + new.prsn_drg_spec_type_id, + new.prsn_ethnicity_id, + new.prsn_exp_homelessness, + new.prsn_first_name, + new.prsn_gndr_id, + new.prsn_helmet_id, + new.prsn_injry_sev_id, + new.prsn_last_name, + new.prsn_mid_name, + new.prsn_name_sfx, + new.prsn_nbr, + new.prsn_occpnt_pos_id, + new.prsn_rest_id, + new.prsn_taken_by, + new.prsn_taken_to, + new.prsn_type_id, + new.unit_id, + new.updated_by + ); + -- insert new (editable) vz record (only record ID) + INSERT INTO public.people_edits (id) values (new.id); + + RETURN NULL; +END; +$$; + + +create or replace trigger insert_new_people_cris +after insert on public.people_cris +for each row +execute procedure public.people_cris_insert_rows(); + diff --git a/atd-vzd/migrations/default/1715960012005_cris_update_triggers/down.sql b/atd-vzd/migrations/default/1715960012005_cris_update_triggers/down.sql new file mode 100644 index 000000000..ed4798a6d --- /dev/null +++ b/atd-vzd/migrations/default/1715960012005_cris_update_triggers/down.sql @@ -0,0 +1 @@ +select 0; diff --git a/atd-vzd/migrations/default/1715960012005_cris_update_triggers/up.sql b/atd-vzd/migrations/default/1715960012005_cris_update_triggers/up.sql new file mode 100644 index 000000000..5c6ed1780 --- /dev/null +++ b/atd-vzd/migrations/default/1715960012005_cris_update_triggers/up.sql @@ -0,0 +1,161 @@ +-- +-- handle a cris crashes update by updating the +-- unified crashes record from cris + vz values +-- +create or replace function public.crashes_cris_update() +returns trigger +language plpgsql +as $$ +declare + new_cris_jb jsonb := to_jsonb (new); + old_cris_jb jsonb := to_jsonb (old); + edit_record_jb jsonb; + column_name text; + updates_todo text [] := '{}'; + update_stmt text := 'update public.crashes set '; +begin + -- get corresponding the VZ record as jsonb + SELECT to_jsonb(crashes_edits) INTO edit_record_jb from public.crashes_edits where public.crashes_edits.id = new.id; + + -- for every key in the cris json object + for column_name in select jsonb_object_keys(new_cris_jb) loop + -- ignore audit fields + continue when column_name in ('created_at', 'updated_at', 'created_by', 'updated_by'); + -- if the new value doesn't match the old + if(new_cris_jb -> column_name <> old_cris_jb -> column_name) then + -- see if the vz record has a value for this field + if (edit_record_jb ->> column_name is null) then + -- this value is not overridden by VZ + -- so update the unified record with this new value + updates_todo := updates_todo || format('%I = $1.%I', column_name, column_name); + end if; + end if; + end loop; + if(array_length(updates_todo, 1) > 0) then + -- set audit field updated_by to match cris record + updates_todo := updates_todo || format('%I = $1.%I', 'updated_by', 'updated_by'); + -- complete the update statement by joining all `set` clauses together + update_stmt := update_stmt + || array_to_string(updates_todo, ',') + || format(' where public.crashes.id = %s', new.id); + raise debug 'Updating crashes record from CRIS update'; + execute (update_stmt) using new; + else + raise debug 'No changes to unified record needed'; + end if; + return null; +end; +$$; + +create trigger update_crashes_from_crashes_cris_update +after update on public.crashes_cris for each row +execute procedure public.crashes_cris_update(); + + +-- +-- handle a cris units update by updating the +-- unified units record from cris + vz values +-- +create or replace function public.units_cris_update() +returns trigger +language plpgsql +as $$ +declare + new_cris_jb jsonb := to_jsonb (new); + old_cris_jb jsonb := to_jsonb (old); + edit_record_jb jsonb; + column_name text; + updates_todo text [] := '{}'; + update_stmt text := 'update public.units set '; +begin + -- get corresponding the VZ record as jsonb + SELECT to_jsonb(units_edits) INTO edit_record_jb from public.units_edits where public.units_edits.id = new.id; + + -- for every key in the cris json object + for column_name in select jsonb_object_keys(new_cris_jb) loop + -- ignore audit fields + continue when column_name in ('created_at', 'updated_at', 'created_by', 'updated_by'); + -- if the new value doesn't match the old + if(new_cris_jb -> column_name <> old_cris_jb -> column_name) then + -- see if the vz record has a value for this field + if (edit_record_jb ->> column_name is null) then + -- this value is not overridden by VZ + -- so update the unified record with this new value + updates_todo := updates_todo || format('%I = $1.%I', column_name, column_name); + end if; + end if; + end loop; + if(array_length(updates_todo, 1) > 0) then + -- set audit field updated_by to match cris record + updates_todo := updates_todo || format('%I = $1.%I', 'updated_by', 'updated_by'); + -- complete the update statement by joining all `set` clauses together + update_stmt := update_stmt + || array_to_string(updates_todo, ',') + || format(' where public.units.id = %s', new.id); + raise debug 'Updating units record from CRIS update'; + execute (update_stmt) using new; + else + raise debug 'No changes to unified record needed'; + end if; + return null; +end; +$$; + +create trigger update_units_from_units_cris_update +after update on public.units_cris for each row +execute procedure public.units_cris_update(); + + +-- +-- handle a cris people update by updating the +-- unified people record from cris + vz values +-- +create or replace function public.people_cris_update() +returns trigger +language plpgsql +as $$ +declare + new_cris_jb jsonb := to_jsonb (new); + old_cris_jb jsonb := to_jsonb (old); + edit_record_jb jsonb; + column_name text; + updates_todo text [] := '{}'; + update_stmt text := 'update public.people set '; +begin + -- get corresponding the VZ record as jsonb + SELECT to_jsonb(people_edits) INTO edit_record_jb from public.people_edits where public.people_edits.id = new.id; + + -- for every key in the cris json object + for column_name in select jsonb_object_keys(new_cris_jb) loop + -- ignore audit fields + continue when column_name in ('created_at', 'updated_at', 'created_by', 'updated_by'); + -- if the new value doesn't match the old + if(new_cris_jb -> column_name <> old_cris_jb -> column_name) then + -- see if the vz record has a value for this field + if (edit_record_jb ->> column_name is null) then + -- this value is not overridden by VZ + -- so update the unified record with this new value + updates_todo := updates_todo || format('%I = $1.%I', column_name, column_name); + end if; + end if; + end loop; + if(array_length(updates_todo, 1) > 0) then + -- set audit field updated_by to match cris record + updates_todo := updates_todo || format('%I = $1.%I', 'updated_by', 'updated_by'); + -- complete the update statement by joining all `set` clauses together + update_stmt := update_stmt + || array_to_string(updates_todo, ',') + || format(' where public.people.id = %s', new.id); + raise debug 'Updating people record from CRIS update'; + execute (update_stmt) using new; + else + raise debug 'No changes to unified record needed'; + end if; + return null; +end; +$$; + +create trigger update_people_from_people_cris_update +after update on public.people_cris for each row +execute procedure public.people_cris_update(); + diff --git a/atd-vzd/migrations/default/1715960013005_edits_update_triggers/down.sql b/atd-vzd/migrations/default/1715960013005_edits_update_triggers/down.sql new file mode 100644 index 000000000..ed4798a6d --- /dev/null +++ b/atd-vzd/migrations/default/1715960013005_edits_update_triggers/down.sql @@ -0,0 +1 @@ +select 0; diff --git a/atd-vzd/migrations/default/1715960013005_edits_update_triggers/up.sql b/atd-vzd/migrations/default/1715960013005_edits_update_triggers/up.sql new file mode 100644 index 000000000..9ed721fee --- /dev/null +++ b/atd-vzd/migrations/default/1715960013005_edits_update_triggers/up.sql @@ -0,0 +1,140 @@ +-- +-- handle an crashes_edits update by updating the +-- unified crashes record from cris + edit values +-- +create or replace function public.crashes_edits_update() +returns trigger +language plpgsql +as $$ +declare + new_edits_jb jsonb := to_jsonb (new); + cris_record_jb jsonb; + column_name text; + updates_todo text [] := '{}'; + update_stmt text := 'update public.crashes set '; +begin + -- get corresponding the cris record as jsonb + SELECT to_jsonb(crashes_cris) INTO cris_record_jb from public.crashes_cris where public.crashes_cris.id = new.id; + -- for every key in the vz json object + for column_name in select jsonb_object_keys(new_edits_jb) loop + -- ignore audit fields, except updated_by + continue when column_name in ('created_at', 'updated_at', 'created_by'); + -- create a set statement for the column + if cris_record_jb ? column_name then + -- if this column exists on the cris table, coalesce vz + cris values + updates_todo := updates_todo + || format('%I = coalesce($1.%I, cris_record.%I)', column_name, column_name, column_name); + else + updates_todo := updates_todo + || format('%I = $1.%I', column_name, column_name); + end if; + end loop; + -- join all `set` clauses together + update_stmt := update_stmt + || array_to_string(updates_todo, ',') + || format(' from (select * from public.crashes_cris where public.crashes_cris.id = %s) as cris_record', new.id) + || format(' where public.crashes.id = %s ', new.id); + raise debug 'Updating unified crashes record from edit update'; + execute (update_stmt) using new; + return null; +end; +$$; + +create trigger update_crashes_from_crashes_edits_update +after update on public.crashes_edits for each row +execute procedure public.crashes_edits_update(); + + +-- +-- handle an units_edits update by updating the +-- unified units record from cris + edit values +-- +create or replace function public.units_edits_update() +returns trigger +language plpgsql +as $$ +declare + new_edits_jb jsonb := to_jsonb (new); + cris_record_jb jsonb; + column_name text; + updates_todo text [] := '{}'; + update_stmt text := 'update public.units set '; +begin + -- get corresponding the cris record as jsonb + SELECT to_jsonb(units_cris) INTO cris_record_jb from public.units_cris where public.units_cris.id = new.id; + -- for every key in the vz json object + for column_name in select jsonb_object_keys(new_edits_jb) loop + -- ignore audit fields, except updated_by + continue when column_name in ('created_at', 'updated_at', 'created_by'); + -- create a set statement for the column + if cris_record_jb ? column_name then + -- if this column exists on the cris table, coalesce vz + cris values + updates_todo := updates_todo + || format('%I = coalesce($1.%I, cris_record.%I)', column_name, column_name, column_name); + else + updates_todo := updates_todo + || format('%I = $1.%I', column_name, column_name); + end if; + end loop; + -- join all `set` clauses together + update_stmt := update_stmt + || array_to_string(updates_todo, ',') + || format(' from (select * from public.units_cris where public.units_cris.id = %s) as cris_record', new.id) + || format(' where public.units.id = %s ', new.id); + raise debug 'Updating unified units record from edit update'; + execute (update_stmt) using new; + return null; +end; +$$; + +create trigger update_units_from_units_edits_update +after update on public.units_edits for each row +execute procedure public.units_edits_update(); + + +-- +-- handle an people_edits update by updating the +-- unified people record from cris + edit values +-- +create or replace function public.people_edits_update() +returns trigger +language plpgsql +as $$ +declare + new_edits_jb jsonb := to_jsonb (new); + cris_record_jb jsonb; + column_name text; + updates_todo text [] := '{}'; + update_stmt text := 'update public.people set '; +begin + -- get corresponding the cris record as jsonb + SELECT to_jsonb(people_cris) INTO cris_record_jb from public.people_cris where public.people_cris.id = new.id; + -- for every key in the vz json object + for column_name in select jsonb_object_keys(new_edits_jb) loop + -- ignore audit fields, except updated_by + continue when column_name in ('created_at', 'updated_at', 'created_by'); + -- create a set statement for the column + if cris_record_jb ? column_name then + -- if this column exists on the cris table, coalesce vz + cris values + updates_todo := updates_todo + || format('%I = coalesce($1.%I, cris_record.%I)', column_name, column_name, column_name); + else + updates_todo := updates_todo + || format('%I = $1.%I', column_name, column_name); + end if; + end loop; + -- join all `set` clauses together + update_stmt := update_stmt + || array_to_string(updates_todo, ',') + || format(' from (select * from public.people_cris where public.people_cris.id = %s) as cris_record', new.id) + || format(' where public.people.id = %s ', new.id); + raise debug 'Updating unified people record from edit update'; + execute (update_stmt) using new; + return null; +end; +$$; + +create trigger update_people_from_people_edits_update +after update on public.people_edits for each row +execute procedure public.people_edits_update(); + diff --git a/atd-vzd/migrations/default/1715960014005_units_set_crash_id/down.sql b/atd-vzd/migrations/default/1715960014005_units_set_crash_id/down.sql new file mode 100644 index 000000000..ed4798a6d --- /dev/null +++ b/atd-vzd/migrations/default/1715960014005_units_set_crash_id/down.sql @@ -0,0 +1 @@ +select 0; diff --git a/atd-vzd/migrations/default/1715960014005_units_set_crash_id/up.sql b/atd-vzd/migrations/default/1715960014005_units_set_crash_id/up.sql new file mode 100644 index 000000000..1431811c7 --- /dev/null +++ b/atd-vzd/migrations/default/1715960014005_units_set_crash_id/up.sql @@ -0,0 +1,29 @@ +-- +-- handle a unit record insert by setting +-- the crash_pk column based on the cris_crash_id +-- +create or replace function public.units_cris_set_unit_id() +returns trigger +language plpgsql +as $$ +DECLARE + crash_record record; +BEGIN + if new.crash_pk is not null then + -- a user may manually create a unit record through a + -- nested Hasura mutation (eg when creating a temp record) + -- in which case the unit record will already have a crash_pk + return new; + end if; + SELECT INTO crash_record * + FROM public.crashes_cris where cris_crash_id = new.cris_crash_id; + new.crash_pk = crash_record.id; + RETURN new; +END; +$$; + +create trigger set_units_cris_crash_id +before insert on public.units_cris +for each row +execute procedure public.units_cris_set_unit_id(); + diff --git a/atd-vzd/migrations/default/1715960015005_people_set_unit_id/down.sql b/atd-vzd/migrations/default/1715960015005_people_set_unit_id/down.sql new file mode 100644 index 000000000..ed4798a6d --- /dev/null +++ b/atd-vzd/migrations/default/1715960015005_people_set_unit_id/down.sql @@ -0,0 +1 @@ +select 0; diff --git a/atd-vzd/migrations/default/1715960015005_people_set_unit_id/up.sql b/atd-vzd/migrations/default/1715960015005_people_set_unit_id/up.sql new file mode 100644 index 000000000..718ead40a --- /dev/null +++ b/atd-vzd/migrations/default/1715960015005_people_set_unit_id/up.sql @@ -0,0 +1,29 @@ +-- +-- handle a people record insert by setting +-- the unit_id column based on the cris_crash_id and unit_nbr +-- +create or replace function public.people_cris_set_unit_id() +returns trigger +language plpgsql +as $$ +DECLARE + unit_record record; +BEGIN + if new.unit_id is not null then + -- a user may manually create a person record through a + -- nested Hasura mutation (eg when creating a temp record) + -- in which case the record will already have a unit_id + return new; + end if; + SELECT INTO unit_record * + FROM public.units_cris where cris_crash_id = new.cris_crash_id and unit_nbr = new.unit_nbr; + new.unit_id = unit_record.id; + RETURN new; +END; +$$; + +create trigger set_person_cris_unit_id +before insert on public.people_cris +for each row +execute procedure public.people_cris_set_unit_id(); + diff --git a/atd-vzd/migrations/default/1715960016005_charges_set_person_id/down.sql b/atd-vzd/migrations/default/1715960016005_charges_set_person_id/down.sql new file mode 100644 index 000000000..ed4798a6d --- /dev/null +++ b/atd-vzd/migrations/default/1715960016005_charges_set_person_id/down.sql @@ -0,0 +1 @@ +select 0; diff --git a/atd-vzd/migrations/default/1715960016005_charges_set_person_id/up.sql b/atd-vzd/migrations/default/1715960016005_charges_set_person_id/up.sql new file mode 100644 index 000000000..afaf94841 --- /dev/null +++ b/atd-vzd/migrations/default/1715960016005_charges_set_person_id/up.sql @@ -0,0 +1,30 @@ +-- +-- handle a charges record insert by setting the person_id column +-- and crash_pk column based on the cris_crash_id and unit_nbr +-- and prsn_nbr +-- +create or replace function public.charges_cris_set_person_id_and_crash_pk() +returns trigger +language plpgsql +as $$ +DECLARE + person_record record; +begin + select into person_record people_cris.id as person_id, units.crash_pk as crash_pk + from public.people_cris + left join public.units on public.units.id = people_cris.unit_id + where + people_cris.cris_crash_id = new.cris_crash_id + and people_cris.unit_nbr = new.unit_nbr + and people_cris.prsn_nbr = new.prsn_nbr; + new.person_id = person_record.person_id; + new.crash_pk = person_record.crash_pk; + RETURN new; +END; +$$; + +create trigger set_charges_cris_person_id_and_crash_pk +before insert on public.charges_cris +for each row +execute procedure public.charges_cris_set_person_id_and_crash_pk(); + diff --git a/atd-vzd/migrations/default/1715960017005_crash_reference_layer_triggers/down.sql b/atd-vzd/migrations/default/1715960017005_crash_reference_layer_triggers/down.sql new file mode 100644 index 000000000..ed4798a6d --- /dev/null +++ b/atd-vzd/migrations/default/1715960017005_crash_reference_layer_triggers/down.sql @@ -0,0 +1 @@ +select 0; diff --git a/atd-vzd/migrations/default/1715960017005_crash_reference_layer_triggers/up.sql b/atd-vzd/migrations/default/1715960017005_crash_reference_layer_triggers/up.sql new file mode 100644 index 000000000..295165a2f --- /dev/null +++ b/atd-vzd/migrations/default/1715960017005_crash_reference_layer_triggers/up.sql @@ -0,0 +1,111 @@ +-- +-- add missing geometry index to jurisdictions +-- +drop index if exists atd_jurisdictions_geom_idx; +create index atd_jurisdictions_geom_idx on atd_jurisdictions +using gist (geometry); + +-- +-- Handle various spatial attribute associations when +-- unified crash record is inserted or updated +-- +create or replace function public.crashes_set_spatial_attributes() +returns trigger +language plpgsql +as $$ +begin + if (new.latitude is not null and new.longitude is not null) then + -- save lat/lon into geometry col + new.position = st_setsrid(st_makepoint(new.longitude, new.latitude), 4326); + -- + -- get location polygon id + -- + if (new.rpt_road_part_id != 2 and upper(ltrim(new.rpt_hwy_num)) in ('35', '183','183A','1','290','71','360','620','45','130')) then + -- use level 5 polygon + new.location_id = ( + select + location_id + from + public.atd_txdot_locations + where + location_group = 2 -- level 5 + and st_contains(geometry, new.position) + limit 1); + else + -- use the other polygons + new.location_id = ( + select + location_id + from + public.atd_txdot_locations + where + location_group = 1 -- not level 5 + and st_contains(geometry, new.position) + limit 1); + end if; + + raise debug 'found location: % compared to previous location: %', new.location_id, old.location_id; + -- + -- check if in austin full purpose jurisdiction + -- + new.in_austin_full_purpose = st_contains((select geometry from atd_jurisdictions where id = 5), new.position); + raise debug 'in austin full purpose: % compared to previous: %', new.in_austin_full_purpose, old.in_austin_full_purpose; + -- + -- get council district + -- + new.council_district = ( + select + council_district + from + public.council_districts + where + st_contains(geometry, new.position) + limit 1); + raise debug 'council_district: % compared to previous: %', new.council_district, old.council_district; + -- + -- get engineering area + -- + new.engineering_area = ( + select + area_id + from + public.engineering_areas + where + st_contains(geometry, new.position) + limit 1); + raise debug 'engineering_area: % compared to previous: %', new.engineering_area, old.engineering_area; + else + raise debug 'setting location id and council district to null'; + -- nullify position column + new.position = null; + -- reset location id + new.location_id = null; + -- use city id to determine full purpose jurisdiction + new.in_austin_full_purpose = coalesce(new.rpt_city_id = 22, false); + raise debug 'setting in_austin_full_purpose based on city id: %', new.in_austin_full_purpose; + -- reset council district + new.council_district = null; + -- reset engineering area + new.engineering_area = null; + end if; + return new; +end; +$$; + + +create trigger crashes_set_spatial_attributes_on_insert +before insert on public.crashes +for each row +execute procedure public.crashes_set_spatial_attributes(); + +create trigger crashes_set_spatial_attributes_on_update +before update on public.crashes +for each row +when ( + new.latitude is distinct from old.latitude + or new.longitude is distinct from old.longitude + or new.rpt_road_part_id is distinct from old.rpt_road_part_id + or new.rpt_hwy_num is distinct from old.rpt_hwy_num +) +execute procedure public.crashes_set_spatial_attributes(); + diff --git a/atd-vzd/migrations/default/1715960018005_lookup_table_seeds/down.sql b/atd-vzd/migrations/default/1715960018005_lookup_table_seeds/down.sql new file mode 100644 index 000000000..ed4798a6d --- /dev/null +++ b/atd-vzd/migrations/default/1715960018005_lookup_table_seeds/down.sql @@ -0,0 +1 @@ +select 0; diff --git a/atd-vzd/migrations/default/1715960018005_lookup_table_seeds/up.sql b/atd-vzd/migrations/default/1715960018005_lookup_table_seeds/up.sql new file mode 100644 index 000000000..3b850d4ff --- /dev/null +++ b/atd-vzd/migrations/default/1715960018005_lookup_table_seeds/up.sql @@ -0,0 +1,11066 @@ +insert into lookups.agency (id, label, source) values (8, 'ABERNATHY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (9, 'ABILENE CHRISTIAN UNIVERSITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (10, 'ABILENE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (12, 'ADDISON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (13, 'ALAMO COMMUNITY COLLEGE DISTRICT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (14, 'ALAMO HEIGHTS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (15, 'ALAMO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (16, 'ALBA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (17, 'ALBANY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (18, 'ALDINE ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (19, 'ALEDO ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (20, 'ALICE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (21, 'ALIEF ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (22, 'ALLEN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (23, 'ALPINE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (24, 'ALTO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (25, 'ALTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (26, 'ALVARADO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (28, 'ALVIN COMMUNITY COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (29, 'ALVIN ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (30, 'ALVIN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (31, 'AMARILLO AIRPORT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (32, 'AMARILLO COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (33, 'AMARILLO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (40, 'ANDREWS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (41, 'ANGELINA COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (42, 'ANGELINA COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (43, 'ANGELO STATE UNIVERSITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (44, 'ANGLETON ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (45, 'ANGLETON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (46, 'ANSON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (47, 'ANTHONY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (48, 'ANTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (49, 'ARANSAS COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (53, 'ARANSAS PASS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (54, 'ARCHER CITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (55, 'ARCHER COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (56, 'ARCOLA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (57, 'ARGYLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (59, 'ARLINGTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (60, 'ARMSTRONG COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (61, 'ARP POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (67, 'ATHENS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (68, 'ATLANTA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (69, 'AUBREY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (70, 'AUSTIN COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (71, 'AUSTIN COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (73, 'AUSTIN ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (74, 'AUSTIN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (76, 'AZLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (77, 'BAILEY COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (78, 'BAIRD CITY MARSHAL''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (79, 'BALCH SPRINGS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (80, 'BALCONES HEIGHTS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (81, 'BALLINGER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (83, 'BANDERA COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (84, 'BANDERA CITY MARSHAL''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (85, 'BANGS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (86, 'BARBERS HILL ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (88, 'BARTLETT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (89, 'BARTONVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (90, 'BASTROP COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (91, 'BASTROP POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (92, 'BAY CITY ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (93, 'BAY CITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (94, 'BAYLOR COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (95, 'BAYLOR SCOTT & WHITE HEALTH PUBLIC SAFETY', 'cris'); +insert into lookups.agency (id, label, source) values (98, 'BAYLOR UNIVERSITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (99, 'BAYOU VISTA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (100, 'BAYTOWN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (103, 'BEAUMONT ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (104, 'BEAUMONT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (105, 'BEDFORD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (106, 'BEE COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (107, 'BEEVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (108, 'BELL COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (109, 'BELLAIRE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (110, 'BELLMEAD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (111, 'BELLS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (112, 'BELLVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (113, 'BELTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (114, 'BENAVIDES POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (115, 'BENBROOK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (117, 'BERTRAM POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (118, 'BEVERLY HILLS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (120, 'BEXAR COUNTY LAW ENFORCEMENT', 'cris'); +insert into lookups.agency (id, label, source) values (122, 'BIG SANDY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (123, 'BIG SPRING POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (124, 'BISHOP POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (126, 'BLANCO COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (127, 'BLANCO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (128, 'BLINN COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (133, 'BLUE MOUND POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (135, 'BOERNE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (136, 'BONHAM POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (137, 'BOOKER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (138, 'BORDEN COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (140, 'BORGER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (142, 'BOVINA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (144, 'BOWIE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (145, 'BOYD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (146, 'BRACKETTVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (147, 'BRADY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (148, 'BRAZORIA COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (149, 'BRAZORIA COUNTY CONSTABLE PRECINCT 2', 'cris'); +insert into lookups.agency (id, label, source) values (150, 'BRAZORIA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (151, 'BRAZOS COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (153, 'BRAZOSPORT COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (154, 'BRECKENRIDGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (155, 'BREMOND POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (156, 'BRENHAM POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (157, 'BREWSTER COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (159, 'BRIDGE CITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (160, 'BRIDGEPORT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (161, 'BRISCOE COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (163, 'BROOKHAVEN COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (164, 'BROOKS COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (165, 'BROOKSHIRE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (166, 'BROOKSIDE VILLAGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (167, 'BROWN COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (168, 'BROWNFIELD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (170, 'BROWNSBORO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (171, 'BROWNSVILLE ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (172, 'BROWNSVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (173, 'BRUCEVILLE-EDDY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (174, 'BRYAN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (177, 'BUFFALO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (179, 'BULLARD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (180, 'BULVERDE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (183, 'BURKBURNETT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (184, 'BURLESON COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (185, 'BURLESON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (186, 'BURNET COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (187, 'BURNET POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (188, 'BURTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (189, 'CACTUS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (190, 'CADDO MILLS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (191, 'CALDWELL COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (194, 'CALDWELL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (195, 'CALHOUN COUNTY ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (196, 'CALHOUN COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (197, 'CALLAHAN COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (198, 'CALVERT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (202, 'CAMERON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (208, 'CANEY CITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (209, 'CANTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (210, 'CANYON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (212, 'CARRIZO SPRINGS CISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (214, 'CARROLLTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (215, 'CARSON COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (216, 'CARTHAGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (218, 'CASTLE HILLS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (219, 'CASTLEBERRY ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (220, 'CASTRO COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (221, 'CASTROVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (222, 'CEDAR HILL ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (223, 'CEDAR HILL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (224, 'CEDAR PARK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (225, 'CEDAR VALLEY COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (226, 'CELESTE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (227, 'CELINA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (228, 'CENTER ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (229, 'CENTER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (232, 'CENTRAL TEXAS COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (234, 'CHAMBERS COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (235, 'CHANDLER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (236, 'CHAPEL HILL NORTHEAST ISD POLICE DEPARTMENT (TITUS)', 'cris'); +insert into lookups.agency (id, label, source) values (240, 'CHILDRESS COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (241, 'CHILDRESS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (242, 'CHILLICOTHE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (243, 'CHINA GROVE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (244, 'CHINA SPRING ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (247, 'CIBOLO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (248, 'CISCO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (252, 'ANNA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (257, 'BOGATA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (261, 'HUDSON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (262, 'LEFORS CITY MARSHAL''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (268, 'PALM VALLEY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (274, 'SANSOM PARK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (275, 'STAR HARBOR POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (277, 'PENITAS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (280, 'CLARKSVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (282, 'CLAY COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (283, 'CLEAR LAKE SHORES POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (284, 'CLEBURNE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (285, 'CLEVELAND ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (286, 'CLEVELAND POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (287, 'CLIFTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (288, 'CLINT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (289, 'CLUTE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (290, 'CLYDE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (292, 'COCHRAN COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (293, 'COCKRELL HILL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (294, 'COFFEE CITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (295, 'COKE COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (297, 'COLEMAN COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (299, 'COLEMAN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (300, 'COLLEGE OF THE MAINLAND CAMPUS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (301, 'COLLEGE STATION POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (302, 'COLLEYVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (303, 'COLLIN COUNTY COMMUNITY DISTRICT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (304, 'COLLIN COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (306, 'COLLINGSWORTH COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (307, 'COLLINSVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (308, 'COLORADO CITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (309, 'COLORADO COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (311, 'COLUMBUS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (312, 'COMAL COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (313, 'COMANCHE COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (314, 'COMANCHE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (315, 'COMBES POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (316, 'COMBINE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (320, 'CONCHO COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (321, 'CONCORDIA UNIVERSITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (322, 'CONNALLY ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (324, 'CONROE ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (325, 'CONROE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (334, 'DENTON COUNTY CONSTABLE PRECINCT 6', 'cris'); +insert into lookups.agency (id, label, source) values (511, 'BLANCO COUNTY CONSTABLE PRECINCT 1', 'cris'); +insert into lookups.agency (id, label, source) values (512, 'BRAZORIA COUNTY CONSTABLE PRECINCT 1', 'cris'); +insert into lookups.agency (id, label, source) values (522, 'WHARTON COUNTY CONSTABLE PRECINCT 1', 'cris'); +insert into lookups.agency (id, label, source) values (659, 'SAN JACINTO COUNTY CONSTABLE PRECINCT 2', 'cris'); +insert into lookups.agency (id, label, source) values (795, 'FALLS COUNTY CONSTABLE PRECINCT 3', 'cris'); +insert into lookups.agency (id, label, source) values (798, 'LAMAR COUNTY CONSTABLE PRECINCT 3', 'cris'); +insert into lookups.agency (id, label, source) values (923, 'DENTON COUNTY CONSTABLE PRECINCT 4', 'cris'); +insert into lookups.agency (id, label, source) values (931, 'NUECES COUNTY CONSTABLE PRECINCT 4', 'cris'); +insert into lookups.agency (id, label, source) values (933, 'VAN ZANDT COUNTY CONSTABLE PRECINCT 4', 'cris'); +insert into lookups.agency (id, label, source) values (1030, 'EL PASO COUNTY CONSTABLE PRECINCT 6', 'cris'); +insert into lookups.agency (id, label, source) values (1105, 'CONVERSE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1107, 'COOLIDGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1110, 'COPPELL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1112, 'COPPERAS COVE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1113, 'CORINTH POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1114, 'CORPUS CHRISTI ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1115, 'CORPUS CHRISTI POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1116, 'CORRIGAN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1118, 'CORSICANA ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1119, 'CORSICANA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1121, 'COTTLE COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1122, 'COTTONWOOD SHORES POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1128, 'WILLIAMSON COUNTY CONSTABLE PRECINCT 1', 'cris'); +insert into lookups.agency (id, label, source) values (1141, 'CRANDALL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1144, 'CRANE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1145, 'CRAWFORD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1146, 'CROCKETT COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1147, 'CROCKETT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1148, 'CROSBY COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1150, 'CROSBYTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1151, 'CROSS PLAINS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1153, 'CROWELL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1154, 'CROWLEY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1157, 'CRYSTAL CITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1158, 'CUERO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1159, 'CULBERSON COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1160, 'CUMBY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1161, 'CUNEY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1162, 'CUT AND SHOOT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1163, 'DAINGERFIELD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1164, 'DAISETTA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1165, 'DALHART POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1166, 'DALLAM COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1167, 'DALLAS CITY MARSHAL''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1168, 'DALLAS COUNTY COMMUNITY COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1169, 'DALLAS COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1173, 'DALLAS FT WORTH AIRPORT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1174, 'DALLAS ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1176, 'DALWORTHINGTON GARDENS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1177, 'DANBURY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1179, 'DALLAS AREA RAPID TRANSIT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1181, 'DAWSON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1184, 'DAYTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1185, 'DEKALB POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1186, 'DE LEON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1187, 'DESOTO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1188, 'DEAF SMITH COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1189, 'DECATUR POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1190, 'DEER PARK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1191, 'DEL RIO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1192, 'DELTA COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1193, 'DENISON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1194, 'DENTON COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1196, 'DENTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1197, 'DENVER CITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1199, 'DEVINE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1200, 'DEWITT COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1201, 'DIBOLL ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1202, 'DIBOLL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1203, 'DICKENS COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1204, 'DICKINSON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1205, 'DILLEY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1206, 'DIMMIT COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1207, 'DIMMITT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1211, 'DONLEY COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1213, 'DONNA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1214, 'DOUBLE OAK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1218, 'DRISCOLL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1219, 'DUBLIN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1220, 'DUMAS ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1221, 'DUMAS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1223, 'DUNCANVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1224, 'DUVAL COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1225, 'EAGLE LAKE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1226, 'EAGLE PASS ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1227, 'EAGLE PASS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1228, 'EARLY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1229, 'EARTH POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1230, 'EAST CENTRAL ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1231, 'EAST MOUNTAIN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1232, 'EAST TAWAKONI POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1236, 'EASTLAND POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1240, 'ECTOR COUNTY ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1241, 'ECTOR POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1242, 'EDCOUCH POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1245, 'EDGEWOOD ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1248, 'EDINBURG POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1249, 'EDNA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1250, 'EDWARDS COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1251, 'EL CAMPO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1252, 'EL CENIZO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1256, 'EL PASO COMMUNITY COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1258, 'EL PASO ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1259, 'EL PASO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1260, 'EL PASO COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1262, 'ELECTRA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1263, 'ELGIN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1265, 'ELLIS COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1266, 'ELLIS COUNTY CONSTABLE PRECINCT 2', 'cris'); +insert into lookups.agency (id, label, source) values (1269, 'ELMENDORF POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1270, 'ELSA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1271, 'EMORY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1273, 'ENNIS ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1274, 'ENNIS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1275, 'ERATH COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1277, 'ESCOBARES POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1278, 'ESTELLINE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1279, 'EULESS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1280, 'EUSTACE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1281, 'EVERMAN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1283, 'FAIR OAKS RANCH POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1284, 'FAIRFIELD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1285, 'FAIRVIEW POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1287, 'FALFURRIAS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1289, 'FANNIN COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1290, 'FARMERS BRANCH POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1291, 'FARMERSVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1292, 'FARWELL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1294, 'FAYETTE COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1295, 'FERRIS ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1296, 'FERRIS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1299, 'FISHER COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1300, 'FLATONIA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1301, 'FLORENCE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1302, 'FLORESVILLE ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1303, 'FLORESVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1304, 'FLOWER MOUND POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1305, 'FLOYD COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1306, 'FLOYDADA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1309, 'FOREST HILL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1310, 'FORNEY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1312, 'FORT BEND COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1315, 'FORT BEND ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1317, 'FORT STOCKTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1318, 'FORT WORTH POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1320, 'FRANKLIN COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1321, 'FRANKLIN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1322, 'FRANKSTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1323, 'FREDERICKSBURG POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1324, 'FREEPORT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1325, 'FREER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1326, 'FREESTONE COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1327, 'FRENSHIP ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1328, 'FRIENDSWOOD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1329, 'FRIO COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1330, 'FRIONA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1331, 'FRISCO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1332, 'FRITCH POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1334, 'FULSHEAR POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1335, 'GAINES COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1337, 'GAINESVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1338, 'GALENA PARK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1339, 'GALVESTON COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1340, 'GALVESTON ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1341, 'GALVESTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1342, 'GANADO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1343, 'GARDEN RIDGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1344, 'GARLAND POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1345, 'GARRETT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1347, 'GARRISON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1348, 'GARZA COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1349, 'GATESVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1350, 'GEORGE WEST POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1351, 'GEORGETOWN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1352, 'GIDDINGS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1353, 'GILLESPIE COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1354, 'GILMER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1355, 'GLADEWATER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1356, 'GLASSCOCK COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1357, 'GLEN ROSE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1359, 'GLENN HEIGHTS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1360, 'GODLEY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1362, 'GOLIAD COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1364, 'GONZALES COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1366, 'GONZALES POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1369, 'GORMAN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1370, 'GRAHAM POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1371, 'GRANBURY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1372, 'GRAND PRAIRIE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1373, 'GRAND SALINE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1374, 'GRANDVIEW POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1376, 'GRANGER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1377, 'GRANITE SHOALS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1378, 'GRAPELAND POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1379, 'GRAPEVINE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1380, 'GRAY COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1382, 'GRAYSON COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1383, 'GREENVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1386, 'GREGORY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1387, 'GREY FOREST POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1389, 'GRIMES COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1390, 'GROESBECK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1391, 'GROVES POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1392, 'GROVETON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1395, 'GUADALUPE COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1397, 'GUN BARREL CITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1398, 'GUNTER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1401, 'HALL COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1402, 'HALLETTSVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1403, 'HALLSVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1404, 'HALTOM CITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1405, 'HAMILTON COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1406, 'HAMILTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1407, 'HAMLIN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1409, 'HANSFORD COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1411, 'HARDEMAN COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1415, 'HARKER HEIGHTS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1416, 'HARLANDALE ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1417, 'HARLINGEN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1418, 'HARRIS COUNTY CONSTABLE PRECINCT 7', 'cris'); +insert into lookups.agency (id, label, source) values (1419, 'HARRIS COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1422, 'HARTLEY COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1423, 'HASKELL COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1424, 'HASKELL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1426, 'HAWKINS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1427, 'HAWLEY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1428, 'HAYS COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1430, 'HAYS COUNTY CONSTABLE PRECINCT 4', 'cris'); +insert into lookups.agency (id, label, source) values (1431, 'HEARNE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1434, 'HEDWIG VILLAGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1435, 'HELOTES POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1436, 'HEMPHILL COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1437, 'HEMPHILL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1439, 'HEMPSTEAD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1441, 'HENDERSON COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1443, 'HENDERSON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1445, 'HEREFORD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1446, 'HEWITT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1447, 'HICKORY CREEK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1448, 'HICO CITY MARSHAL''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1452, 'HIDALGO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1455, 'HIGHLAND PARK DEPARTMENT OF PUBLIC SAFETY', 'cris'); +insert into lookups.agency (id, label, source) values (1456, 'HIGHLAND VILLAGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1459, 'HILL COUNTRY VILLAGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1462, 'HILLSBORO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1464, 'HITCHCOCK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1466, 'HOLIDAY LAKES POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1467, 'HOLLAND POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1468, 'HOLLIDAY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1469, 'HOLLYWOOD PARK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1470, 'HONDO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1471, 'HONEY GROVE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1472, 'HOOD COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1474, 'HOOKS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1475, 'HOPKINS COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1476, 'HORIZON CITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1477, 'HORSESHOE BAY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1478, 'HOUSTON CHRISTIAN UNIVERSITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1479, 'HOUSTON COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1480, 'HOUSTON COMMUNITY COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1483, 'HOUSTON ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1487, 'HOWARD COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1489, 'HOWE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1490, 'HUBBARD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1491, 'HUDSON ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1492, 'HUDSON OAKS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1493, 'HUDSPETH COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1494, 'HUGHES SPRINGS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1495, 'HUMBLE ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1496, 'HUMBLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1500, 'HUNTINGTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1502, 'HUNTSVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1503, 'HURST POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1504, 'HUTCHINS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1505, 'HUTCHINSON COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1506, 'HUTTO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1507, 'IDALOU POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1511, 'INGLESIDE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1512, 'INGRAM POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1513, 'IOWA COLONY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1514, 'IOWA PARK CISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1515, 'IOWA PARK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1517, 'IRION COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1518, 'IRVING POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1519, 'ITALY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1520, 'ITASCA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1521, 'JACINTO CITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1523, 'JACKSBORO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1524, 'JACKSON COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1526, 'JACKSONVILLE ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1527, 'JACKSONVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1528, 'JAMAICA BEACH POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1529, 'JARRELL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1531, 'JASPER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1533, 'JEFF DAVIS COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1536, 'JEFFERSON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1537, 'JERSEY VILLAGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1538, 'JEWETT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1539, 'JIM HOGG COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1543, 'JOHNSON CITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1544, 'JOHNSON COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1545, 'JONES COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1546, 'JONES CREEK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1547, 'JONESTOWN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1548, 'JOSEPHINE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1550, 'JOSHUA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1551, 'JOURDANTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1552, 'JUDSON ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1553, 'JUNCTION POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1554, 'JUSTIN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1556, 'KARNES CITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1557, 'KARNES COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1558, 'KATY ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1559, 'KATY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1562, 'KAUFMAN ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1563, 'KAUFMAN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1564, 'KEENE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1565, 'KELLER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1567, 'KEMAH POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1569, 'KEMP POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1571, 'KEMPNER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1572, 'KENDALL COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1575, 'KENEDY COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1576, 'KENEDY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1578, 'KENNEDALE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1579, 'KENT COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1580, 'KERENS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1581, 'KERMIT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1582, 'KERR COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1583, 'KERRVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1585, 'KILGORE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1586, 'KILLEEN ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1587, 'KILLEEN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1588, 'KIMBLE COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1589, 'KING COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1590, 'KINGSVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1591, 'KINNEY COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1592, 'KIRBY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1593, 'KIRBYVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1594, 'KLEBERG COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1596, 'KLEIN ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1597, 'KNOX CITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1598, 'KNOX COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1599, 'KOSSE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1600, 'KOUNTZE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1602, 'NORTHEAST POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1603, 'KRUM POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1604, 'KYLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1605, 'LA FERIA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1606, 'LA GRANGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1607, 'LA GRULLA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1608, 'LA JOYA ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1609, 'LA JOYA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1612, 'LA MARQUE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1614, 'LA PORTE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1615, 'LA SALLE COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1616, 'LA VERNIA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1617, 'LA VILLA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1619, 'LACOSTE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1620, 'LACY LAKEVIEW POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1621, 'LADONIA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1622, 'LAGO VISTA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1623, 'LAGUNA VISTA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1626, 'LAKE DALLAS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1627, 'LAKE JACKSON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1628, 'LAKE WORTH POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1629, 'LAKEPORT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1630, 'LAKESIDE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1632, 'LAKEVIEW POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1633, 'LAKEWAY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1634, 'LAMAR COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1635, 'LAMAR UNIVERSITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1637, 'LAMESA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1639, 'LAMPASAS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1640, 'LANCASTER ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1641, 'LANCASTER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1642, 'LAREDO COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1643, 'LAREDO ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1644, 'LAREDO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1645, 'LAVACA COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1647, 'LAVON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1648, 'LEAGUE CITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1649, 'LEANDER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1650, 'LEE COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1652, 'LEON COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1654, 'LEON VALLEY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1656, 'LEONARD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1658, 'LEVELLAND POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1659, 'LEWISVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1661, 'LEXINGTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1662, 'LIBERTY COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1664, 'LIBERTY HILL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1665, 'LIBERTY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1666, 'LIBERTY EYLAU ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1669, 'LINDALE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1670, 'LINDEN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1671, 'LINDSAY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1672, 'LIPAN CITY MARSHAL''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1673, 'LIPSCOMB COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1674, 'LITTLE ELM POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1675, 'LITTLE RIVER ACADEMY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1676, 'LITTLEFIELD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1678, 'LIVE OAK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1679, 'LIVERPOOL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1680, 'LIVINGSTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1681, 'LLANO COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1682, 'LLANO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1683, 'LOCKHART POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1684, 'LOCKNEY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1685, 'LOG CABIN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1687, 'LOMETA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1688, 'LONE OAK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1689, 'LONE STAR COLLEGE SYSTEM DISTRICT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1690, 'LONE STAR POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1691, 'LONGVIEW POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1693, 'LORENA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1694, 'LORENZO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1695, 'LOS FRESNOS CISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1696, 'LOS FRESNOS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1698, 'LOTT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1699, 'LOVING COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1704, 'LUBBOCK INTERNATIONAL AIRPORT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1705, 'LUBBOCK ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1706, 'LUBBOCK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1708, 'LUFKIN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1709, 'LULING POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1710, 'LUMBERTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1711, 'LYFORD CISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1712, 'LYFORD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1713, 'LYNN COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1714, 'LYTLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1715, 'MABANK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1716, 'MADISON COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1719, 'MADISONVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1720, 'MAGNOLIA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1722, 'MALAKOFF POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1723, 'MALONE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1724, 'MANOR POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1725, 'MANSFIELD ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1726, 'MANSFIELD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1727, 'MANVEL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1728, 'MARBLE FALLS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1729, 'MARFA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1734, 'MARION POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1736, 'MARLIN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1740, 'MARSHALL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1741, 'MART POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1742, 'MARTIN COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1743, 'MARTINDALE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1744, 'MASON COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1748, 'MATHIS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1749, 'MAUD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1750, 'MAVERICK COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1752, 'MAYPEARL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1753, 'MCALLEN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1755, 'MCALLEN ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1757, 'MCCULLOCH COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1758, 'MCGREGOR POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1759, 'MCKINNEY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1762, 'MCLENNAN COMMUNITY COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1764, 'MEADOWS PLACE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1765, 'MEDINA COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1766, 'MELISSA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1767, 'MEMORIAL VILLAGES POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1768, 'MEMPHIS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1769, 'MENARD COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1771, 'MERCEDES POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1772, 'MERIDIAN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1773, 'MERKEL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1774, 'MESQUITE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1775, 'METRO TRANSIT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1776, 'MEXIA ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1777, 'MEXIA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1780, 'MIDLAND COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1782, 'MIDLAND POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1783, 'MIDLOTHIAN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1784, 'MIDWESTERN STATE UNIVERSITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1785, 'MILAM COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1786, 'MILES POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1787, 'MILFORD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1788, 'MILLS COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1789, 'MINEOLA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1790, 'MINERAL WELLS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1791, 'MISSION POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1792, 'MISSOURI CITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1793, 'MITCHELL COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1794, 'MONAHANS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1796, 'MONT BELVIEU POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1797, 'MONTAGUE COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1798, 'MONTGOMERY COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1800, 'MONTGOMERY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1801, 'MOODY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1802, 'MOORE COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1804, 'MORGAN''S POINT RESORT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1805, 'MORGAN''S POINT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1808, 'MOTLEY COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1809, 'MOULTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1811, 'MOUNT ENTERPRISE CITY MARSHAL''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1812, 'MOUNT PLEASANT ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1813, 'MOUNT PLEASANT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1814, 'MOUNT VERNON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1815, 'MOUNTAIN VIEW COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1816, 'MUENSTER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1817, 'MULESHOE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1818, 'MUNDAY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1820, 'MURPHY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1821, 'MUSTANG RIDGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1822, 'NORTH FOREST ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1823, 'NACOGDOCHES COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1825, 'NACOGDOCHES POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1826, 'NAPLES POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1828, 'NASH POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1830, 'NASSAU BAY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1831, 'NATALIA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1832, 'NAVARRO COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1833, 'NAVARRO COLLEGE DEPARTMENT OF PUBLIC SAFETY', 'cris'); +insert into lookups.agency (id, label, source) values (1834, 'NAVASOTA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1835, 'NAZARETH CITY MARSHAL''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1836, 'NEDERLAND POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1838, 'NEEDVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1839, 'NEW BOSTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1841, 'NEW BRAUNFELS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1842, 'NEW CANEY ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1843, 'NEW DEAL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1845, 'NEW LONDON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1846, 'NEW SUMMERFIELD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1849, 'NEWTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1850, 'NIXON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1851, 'NOCONA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1853, 'NOLANVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1855, 'NORMANGEE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1858, 'NORTH EAST ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1859, 'NORTH LAKE COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1860, 'NORTH RICHLAND HILLS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1863, 'NORTHLAKE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1864, 'NORTHSIDE ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1865, 'NUECES COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1866, 'OAK POINT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1867, 'OAK RIDGE NORTH POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1868, 'OAK RIDGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1869, 'OAKWOOD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1870, 'OCHILTREE COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1873, 'ODESSA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1874, 'O''DONNELL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1877, 'OLMOS PARK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1878, 'OLNEY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1879, 'OLTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1880, 'OMAHA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1881, 'ONALASKA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1883, 'ORANGE GROVE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1884, 'ORANGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1885, 'ORE CITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1888, 'OVERTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1889, 'OVILLA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1890, 'OYSTER CREEK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1892, 'PADUCAH POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1894, 'PALACIOS ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1895, 'PALACIOS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1896, 'PALESTINE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1897, 'PALMER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1898, 'PALMHURST POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1899, 'PALMVIEW POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1901, 'PAMPA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1902, 'PANHANDLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1904, 'PANORAMA VILLAGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1905, 'PANTEGO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1907, 'PARIS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1909, 'PARKER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1910, 'PARMER COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1911, 'PASADENA ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1912, 'PASADENA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1913, 'PATTON VILLAGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1914, 'PAYNE SPRINGS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1915, 'SOUTH PADRE ISLAND POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1917, 'PEARLAND POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1918, 'PEARSALL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1919, 'PECOS COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1920, 'PECOS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1921, 'PELICAN BAY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1922, 'PERRYTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1923, 'PETERSBURG POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1924, 'PFLUGERVILLE ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1925, 'PFLUGERVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1926, 'PHARR POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1929, 'PILOT POINT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1930, 'PINE FOREST POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1931, 'PINEHURST POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1932, 'PINELAND POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1935, 'PITTSBURG POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1937, 'PLAINVIEW POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1938, 'PLANO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1940, 'PLEASANTON ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1941, 'PLEASANTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1942, 'POINT COMFORT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1943, 'POINT ISABEL ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1944, 'POINT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1946, 'PONDER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1947, 'PORT ARANSAS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1948, 'PORT ARTHUR POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1949, 'PORT ISABEL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1950, 'PORT LAVACA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1951, 'PORT NECHES POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1953, 'PORT OF BROWNSVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1954, 'PORT OF CORPUS CHRISTI AUTHORITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1955, 'PORT OF GALVESTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1956, 'PORT OF HOUSTON AUTHORITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1957, 'PORTLAND POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1960, 'POTEET POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1961, 'POTH POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1963, 'POTTSBORO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1964, 'PRAIRIE VIEW A&M UNIVERSITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1965, 'PRAIRIE VIEW POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1966, 'PREMONT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1967, 'PRESIDIO COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1968, 'PRESIDIO ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1969, 'PRESIDIO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1970, 'PRIMERA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1971, 'PRINCETON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1972, 'PROGRESO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1973, 'PROSPER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1975, 'QUEEN CITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1976, 'QUINLAN ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1977, 'QUINLAN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1978, 'QUITMAN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1979, 'RAINS COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1980, 'RAINS ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1981, 'RALLS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1983, 'RANDALL COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1985, 'RANGER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1988, 'RAYMONDVILLE ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1989, 'RAYMONDVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1990, 'REAGAN COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1991, 'REAL COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1992, 'RED OAK ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1993, 'RED OAK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (1994, 'RED RIVER COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (1997, 'REFUGIO COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2001, 'REFUGIO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2005, 'RENO POLICE DEPARTMENT (LAMAR)', 'cris'); +insert into lookups.agency (id, label, source) values (2006, 'RHOME POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2008, 'RICE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2010, 'RICE UNIVERSITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2011, 'RICHARDSON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2013, 'RICHLAND HILLS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2014, 'RICHMOND POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2015, 'RICHWOOD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2016, 'RIESEL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2019, 'RIO GRANDE CITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2020, 'RIO HONDO ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2021, 'RIO HONDO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2022, 'RIO VISTA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2023, 'RISING STAR POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2024, 'RIVER OAKS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2025, 'ROANOKE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2027, 'ROBERTS COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2030, 'ROBINSON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2031, 'ROBSTOWN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2032, 'ROCKDALE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2033, 'ROCKPORT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2034, 'ROCKWALL COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2035, 'ROCKWALL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2036, 'ROGERS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2037, 'ROLLINGWOOD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2038, 'ROMA ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2039, 'ROMA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2040, 'ROMAN FOREST POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2041, 'ROPESVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2042, 'ROSCOE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2043, 'ROSE CITY MARSHAL''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2044, 'ROSEBUD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2045, 'ROSENBERG POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2047, 'ROUND ROCK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2049, 'ROWLETT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2051, 'ROYSE CITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2053, 'RUNAWAY BAY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2057, 'RUSK COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2058, 'RUSK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2059, 'SABINAL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2061, 'SABINE COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2062, 'SACHSE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2063, 'SAGINAW POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2064, 'SAINT JO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2065, 'SAM HOUSTON STATE UNIVERSITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2067, 'SAN ANGELO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2068, 'SAN ANTONIO ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2070, 'SAN ANTONIO PARK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2073, 'SAN AUGUSTINE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2075, 'SAN BENITO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2076, 'SAN DIEGO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2077, 'SAN ELIZARIO CITY MARSHAL''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2078, 'SAN FELIPE DEL RIO CISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2079, 'SAN FELIPE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2080, 'SAN JACINTO COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2081, 'SAN JACINTO COLLEGE DISTRICT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2083, 'SAN JUAN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2084, 'SAN MARCOS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2085, 'SAN PATRICIO COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2087, 'SAN SABA COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2088, 'SAN SABA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2089, 'SANGER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2090, 'SANTA ANNA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2091, 'SANTA FE ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2092, 'SANTA ROSA ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2093, 'SANTA ROSA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2094, 'SANTA FE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2095, 'SAVOY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2098, 'SCHERTZ POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2099, 'SCHLEICHER COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2100, 'SCHULENBURG POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2103, 'SEABROOK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2104, 'SEADRIFT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2105, 'SEAGOVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2106, 'SEAGRAVES POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2107, 'SEALY ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2108, 'SEALY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2109, 'SEGUIN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2110, 'SELMA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2111, 'SEMINOLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2112, 'SEVEN POINTS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2113, 'SEYMOUR POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2114, 'SHACKELFORD COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2116, 'SHALLOWATER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2117, 'SHAMROCK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2118, 'SHAVANO PARK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2121, 'SHENANDOAH POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2123, 'SHERMAN COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2124, 'SHERMAN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2125, 'SHINER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2126, 'SHOREACRES POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2127, 'SILSBEE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2129, 'SINTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2131, 'SLATON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2133, 'SMITH COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2135, 'SMITHVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2137, 'SNYDER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2138, 'SOCORRO ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2139, 'SOCORRO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2140, 'SOMERSET ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2142, 'SOMERSET POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2143, 'SOMERVELL COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2144, 'SOMERVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2146, 'SONORA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2147, 'SOURLAKE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2148, 'SOUTH HOUSTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2149, 'SOUTH PLAINS COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2151, 'SOUTHSIDE PLACE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2152, 'SOUTHERN METHODIST UNIVERSITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2154, 'SOUTHLAKE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2155, 'SOUTHMAYD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2156, 'SOUTHSIDE ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2160, 'SOUTHWESTERN UNIVERSITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2161, 'SPEARMAN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2162, 'SPLENDORA ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2163, 'SPLENDORA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2164, 'SPRING BRANCH ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2166, 'SPRING ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2167, 'SPRING VALLEY VILLAGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2168, 'SPRINGTOWN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2169, 'SPUR POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2170, 'ST EDWARD''S UNIVERSITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2171, 'ST MARY''S UNIVERSITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2173, 'STAFFORD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2174, 'STAGECOACH POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2175, 'STAMFORD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2176, 'STANTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2179, 'STEPHEN F AUSTIN STATE UNIVERSITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2180, 'STEPHENS COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2181, 'STEPHENVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2182, 'STERLING COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2183, 'STINNETT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2184, 'STONEWALL COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2186, 'STRATFORD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2188, 'SUDAN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2189, 'SUGAR LAND POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2190, 'SUL ROSS STATE UNIVERSITY DEPARTMENT OF PUBLIC SAFETY', 'cris'); +insert into lookups.agency (id, label, source) values (2191, 'SULLIVAN CITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2193, 'SULPHUR SPRINGS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2194, 'SUNDOWN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2196, 'SUNRAY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2197, 'SUNRISE BEACH VILLAGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2199, 'SUNSET VALLEY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2200, 'SURFSIDE BEACH POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2201, 'SUTTON COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2202, 'SWEENY ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2203, 'SWEENY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2204, 'SWEETWATER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2205, 'SWISHER COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2207, 'TAFT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2208, 'TAHOKA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2210, 'TALTY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2211, 'TARLETON STATE UNIVERSITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2212, 'TARRANT COUNTY HOSPITAL DISTRICT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2213, 'TARRANT COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2214, 'TARRANT COUNTY COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2215, 'TATUM POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2218, 'TAYLOR POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2219, 'TEAGUE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2220, 'TEMPLE COLLEGE DEPARTMENT OF PUBLIC SAFETY', 'cris'); +insert into lookups.agency (id, label, source) values (2221, 'TEMPLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2222, 'TENAHA CITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2223, 'TERRELL COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2224, 'TERRELL HILLS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2226, 'TERRELL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2228, 'TEXARKANA COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2230, 'TEXARKANA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2231, 'TEXAS A&M UNIVERSITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2232, 'TEXAS A&M UNIVERSITY AT KINGSVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2233, 'TEXAS A&M INTERN UNIVERSITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2235, 'TEXAS A&M UNIVERSITY AT COMMERCE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2236, 'TEXAS A&M UNIVERSITY AT CORPUS CHRISTI POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2239, 'TEXAS CITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2256, 'TEXAS LUTHERAN UNIVERSITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2257, 'TEXAS MEDICAL CENTER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2258, 'TEXAS SOUTHERN UNIVERSITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2259, 'TEXAS STATE TECHNICAL COLLEGE POLICE DEPARTMENT - HARLINGEN', 'cris'); +insert into lookups.agency (id, label, source) values (2260, 'TEXAS STATE TECHNICAL COLLEGE POLICE DEPARTMENT - WACO', 'cris'); +insert into lookups.agency (id, label, source) values (2261, 'TEXAS STATE UNIVERSITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2262, 'TEXAS TECH UNIVERSITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2264, 'TEXAS WOMAN''S UNIVERSITY DEPARTMENT OF PUBLIC SAFETY', 'cris'); +insert into lookups.agency (id, label, source) values (2265, 'TEXLINE CITY MARSHAL''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2267, 'BEE CAVE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2269, 'THE COLONY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2270, 'THORNDALE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2272, 'THORNTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2273, 'THRALL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2274, 'THREE RIVERS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2275, 'THROCKMORTON COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2276, 'TIKI ISLAND POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2279, 'TIMPSON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2280, 'TIOGA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2282, 'TOLAR POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2283, 'TOM BEAN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2284, 'TOM GREEN COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2286, 'TOMBALL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2287, 'TOOL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2289, 'THOMPSONS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2290, 'RANCHO VIEJO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2292, 'TRAVIS COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2293, 'TRENTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2294, 'TRINIDAD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2295, 'TRINITY COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2296, 'TRINITY COUNTY CONSTABLE PRECINCT 3', 'cris'); +insert into lookups.agency (id, label, source) values (2297, 'TRINITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2299, 'TRINITY VALLEY COMMUNITY COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2300, 'TROPHY CLUB POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2302, 'TROUP POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2303, 'TROY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2305, 'TULIA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2306, 'TEXAS A&M UNIVERSITY AT TEXARKANA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2307, 'TEXAS A&M UNIVERSITY AT SAN ANTONIO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2311, 'TYE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2314, 'TYLER ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2315, 'TYLER JUNIOR COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2316, 'TYLER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2318, 'UNIVERSITY OF HOUSTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2319, 'UNIVERSITY OF HOUSTON - DOWNTOWN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2320, 'UNIVERSITY OF MARY HARDIN BAYLOR POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2321, 'UNIVERSITY OF NORTH TEXAS HEALTH SCIENCE CENTER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2323, 'UNIVERSITY OF TEXAS AT TYLER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2324, 'UNIVERSITY OF TEXAS AT ARLINGTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2325, 'UNIVERSITY OF TEXAS AT DALLAS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2326, 'UNIVERSITY OF TEXAS AT SAN ANTONIO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2328, 'UNIVERSAL CITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2329, 'UNIVERSITY OF HOUSTON - CLEAR LAKE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2330, 'UNIVERSITY OF NORTH TEXAS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2333, 'UNIVERSITY OF TEXAS HEALTH SCIENCE CENTER AT SAN ANTONIO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2334, 'UNIVERSITY OF TEXAS MEDICAL BRANCH AT GALVESTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2335, 'UNIVERSITY OF TEXAS OF THE PERMIAN BASIN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2337, 'UNIVERSITY OF TEXAS AT AUSTIN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2339, 'UNIVERSITY OF TEXAS SOUTHWESTERN MEDICAL CENTER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2341, 'UNIVERSITY PARK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2343, 'UPTON COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2345, 'UNIVERSITY OF TEXAS HEALTH SCIENCE CENTER AT TYLER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2347, 'UVALDE COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2348, 'UVALDE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2349, 'VAL VERDE COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2350, 'VALLEY INTERNATIONAL AIRPORT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2351, 'VALLEY MILLS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2352, 'VALLEY VIEW POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2353, 'VAN ALSTYNE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2356, 'VAN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2357, 'VAN ZANDT COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2360, 'VENUS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2362, 'VERNON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2364, 'VICTORIA COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2365, 'VICTORIA COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2366, 'VICTORIA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2368, 'VIDOR POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2370, 'SALADO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2371, 'WACO ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2372, 'WACO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2373, 'WAELDER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2374, 'WAKE VILLAGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2377, 'WALLER COUNTY CONSTABLE PRECINCT 2', 'cris'); +insert into lookups.agency (id, label, source) values (2378, 'WALLER COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2379, 'WALLER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2380, 'WALLIS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2383, 'WASHINGTON COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2384, 'WASKOM POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2385, 'WATAUGA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2386, 'WAXAHACHIE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2388, 'WEATHERFORD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2389, 'WEBB COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2391, 'WEBSTER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2392, 'WEIMAR POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2394, 'WELLS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2396, 'WESLACO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2397, 'WEST COLUMBIA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2398, 'WEST LAKE HILLS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2399, 'WEST ORANGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2400, 'WEST POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2401, 'WEST TAWAKONI POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2402, 'WEST TEXAS A&M UNIVERSITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2406, 'WEST UNIVERSITY PLACE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2410, 'WESTOVER HILLS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2411, 'WESTWORTH VILLAGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2412, 'WHARTON COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2414, 'WHARTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2415, 'WHEELER COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2416, 'WHITE DEER CITY MARSHAL''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2417, 'WHITE OAK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2418, 'WHITE SETTLEMENT ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2419, 'WHITE SETTLEMENT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2420, 'WHITEHOUSE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2421, 'WHITESBORO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2422, 'WHITEWRIGHT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2423, 'WHITNEY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2424, 'WICHITA COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2426, 'WICHITA FALLS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2429, 'WILLACY COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2430, 'WILLIAMSON COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2432, 'WILLIS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2433, 'WILLOW PARK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2434, 'WILLS POINT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2435, 'WILMER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2437, 'WILSON COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2439, 'WINDCREST POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2442, 'WINK POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2443, 'WINKLER COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2445, 'WINNSBORO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2446, 'WINONA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2447, 'WINTERS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2450, 'WOLFE CITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2451, 'WOLFFORTH POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2452, 'WOOD COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2453, 'WOODBRANCH POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2455, 'WOODSBORO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2457, 'WOODVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2458, 'WOODWAY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2459, 'WORTHAM POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2460, 'WYLIE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2461, 'YOAKUM COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2462, 'YOAKUM POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2463, 'YORKTOWN POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2464, 'YOUNG COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2465, 'ZAPATA COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2467, 'ZAVALA COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (2468, 'ZAVALLA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2469, 'HOUSTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2471, 'DALLAS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2473, 'SAN ANTONIO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2495, 'ATASCOSA COUNTY CONSTABLE PRECINCT 3', 'cris'); +insert into lookups.agency (id, label, source) values (2499, 'AUSTIN COUNTY CONSTABLE PRECINCT 3', 'cris'); +insert into lookups.agency (id, label, source) values (2507, 'BANDERA COUNTY CONSTABLE PRECINCT 4', 'cris'); +insert into lookups.agency (id, label, source) values (2518, 'BELL COUNTY CONSTABLE PRECINCT 4', 'cris'); +insert into lookups.agency (id, label, source) values (2521, 'BEXAR COUNTY CONSTABLE PRECINCT 3', 'cris'); +insert into lookups.agency (id, label, source) values (2535, 'BRAZORIA COUNTY CONSTABLE PRECINCT 3', 'cris'); +insert into lookups.agency (id, label, source) values (2536, 'BRAZORIA COUNTY CONSTABLE PRECINCT 4', 'cris'); +insert into lookups.agency (id, label, source) values (2550, 'BROWNWOOD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2555, 'BURNET COUNTY CONSTABLE PRECINCT 1', 'cris'); +insert into lookups.agency (id, label, source) values (2557, 'BURNET COUNTY CONSTABLE PRECINCT 4', 'cris'); +insert into lookups.agency (id, label, source) values (2586, 'CHEROKEE COUNTY CONSTABLE PRECINCT 3', 'cris'); +insert into lookups.agency (id, label, source) values (2590, 'COCHRAN COUNTY CONSTABLE PRECINCT 1', 'cris'); +insert into lookups.agency (id, label, source) values (2594, 'COLLIN COUNTY CONSTABLE PRECINCT 1', 'cris'); +insert into lookups.agency (id, label, source) values (2596, 'COLLIN COUNTY CONSTABLE PRECINCT 4', 'cris'); +insert into lookups.agency (id, label, source) values (2602, 'COMAL COUNTY CONSTABLE PRECINCT 2', 'cris'); +insert into lookups.agency (id, label, source) values (2609, 'COMMERCE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (2656, 'DUVAL COUNTY CONSTABLE PRECINCT 4', 'cris'); +insert into lookups.agency (id, label, source) values (2666, 'EL PASO COUNTY CONSTABLE PRECINCT 1', 'cris'); +insert into lookups.agency (id, label, source) values (2667, 'EL PASO COUNTY CONSTABLE PRECINCT 2', 'cris'); +insert into lookups.agency (id, label, source) values (2668, 'EL PASO COUNTY CONSTABLE PRECINCT 3', 'cris'); +insert into lookups.agency (id, label, source) values (2669, 'EL PASO COUNTY CONSTABLE PRECINCT 4', 'cris'); +insert into lookups.agency (id, label, source) values (2670, 'EL PASO COUNTY CONSTABLE PRECINCT 5', 'cris'); +insert into lookups.agency (id, label, source) values (2671, 'EL PASO COUNTY CONSTABLE PRECINCT 7', 'cris'); +insert into lookups.agency (id, label, source) values (2678, 'FALLS COUNTY CONSTABLE PRECINCT 1', 'cris'); +insert into lookups.agency (id, label, source) values (2689, 'FORT BEND COUNTY CONSTABLE PRECINCT 2', 'cris'); +insert into lookups.agency (id, label, source) values (2690, 'FORT BEND COUNTY CONSTABLE PRECINCT 3', 'cris'); +insert into lookups.agency (id, label, source) values (2691, 'FORT BEND COUNTY CONSTABLE PRECINCT 4', 'cris'); +insert into lookups.agency (id, label, source) values (2713, 'GONZALES COUNTY CONSTABLE PRECINCT 1', 'cris'); +insert into lookups.agency (id, label, source) values (2715, 'GONZALES COUNTY CONSTABLE PRECINCT 3', 'cris'); +insert into lookups.agency (id, label, source) values (2716, 'GONZALES COUNTY CONSTABLE PRECINCT 4', 'cris'); +insert into lookups.agency (id, label, source) values (2719, 'GRAYSON COUNTY CONSTABLE PRECINCT 1', 'cris'); +insert into lookups.agency (id, label, source) values (2741, 'HARRIS COUNTY CONSTABLE PRECINCT 1', 'cris'); +insert into lookups.agency (id, label, source) values (2742, 'HARRIS COUNTY CONSTABLE PRECINCT 2', 'cris'); +insert into lookups.agency (id, label, source) values (2743, 'HARRIS COUNTY CONSTABLE PRECINCT 3', 'cris'); +insert into lookups.agency (id, label, source) values (2744, 'HARRIS COUNTY CONSTABLE PRECINCT 4', 'cris'); +insert into lookups.agency (id, label, source) values (2745, 'HARRIS COUNTY CONSTABLE PRECINCT 5', 'cris'); +insert into lookups.agency (id, label, source) values (2746, 'HARRIS COUNTY CONSTABLE PRECINCT 6', 'cris'); +insert into lookups.agency (id, label, source) values (2747, 'HARRIS COUNTY CONSTABLE PRECINCT 8', 'cris'); +insert into lookups.agency (id, label, source) values (2752, 'HAYS COUNTY CONSTABLE PRECINCT 1', 'cris'); +insert into lookups.agency (id, label, source) values (2753, 'HAYS COUNTY CONSTABLE PRECINCT 2', 'cris'); +insert into lookups.agency (id, label, source) values (2755, 'HAYS COUNTY CONSTABLE PRECINCT 5', 'cris'); +insert into lookups.agency (id, label, source) values (2768, 'HILL COUNTY CONSTABLE PRECINCT 4', 'cris'); +insert into lookups.agency (id, label, source) values (2779, 'HOUSTON COUNTY CONSTABLE PRECINCT 2', 'cris'); +insert into lookups.agency (id, label, source) values (2789, 'HUNT COUNTY CONSTABLE PRECINCT 4', 'cris'); +insert into lookups.agency (id, label, source) values (2831, 'KENDALL COUNTY CONSTABLE PRECINCT 4', 'cris'); +insert into lookups.agency (id, label, source) values (2838, 'KINNEY COUNTY CONSTABLE', 'cris'); +insert into lookups.agency (id, label, source) values (2839, 'KLEBERG COUNTY CONSTABLE PRECINCT 1', 'cris'); +insert into lookups.agency (id, label, source) values (2850, 'LAMAR COUNTY CONSTABLE PRECINCT 2', 'cris'); +insert into lookups.agency (id, label, source) values (2870, 'LIBERTY COUNTY CONSTABLE PRECINCT 2', 'cris'); +insert into lookups.agency (id, label, source) values (2871, 'LIBERTY COUNTY CONSTABLE PRECINCT 3', 'cris'); +insert into lookups.agency (id, label, source) values (2872, 'LIBERTY COUNTY CONSTABLE PRECINCT 4', 'cris'); +insert into lookups.agency (id, label, source) values (2873, 'LIBERTY COUNTY CONSTABLE PRECINCT 5', 'cris'); +insert into lookups.agency (id, label, source) values (2874, 'LIBERTY COUNTY CONSTABLE PRECINCT 6', 'cris'); +insert into lookups.agency (id, label, source) values (2885, 'LUBBOCK COUNTY CONSTABLE PRECINCT 1', 'cris'); +insert into lookups.agency (id, label, source) values (2887, 'LUBBOCK COUNTY CONSTABLE PRECINCT 3', 'cris'); +insert into lookups.agency (id, label, source) values (2920, 'MONTGOMERY COUNTY CONSTABLE PRECINCT 1', 'cris'); +insert into lookups.agency (id, label, source) values (2921, 'MONTGOMERY COUNTY CONSTABLE PRECINCT 2', 'cris'); +insert into lookups.agency (id, label, source) values (2922, 'MONTGOMERY COUNTY CONSTABLE PRECINCT 3', 'cris'); +insert into lookups.agency (id, label, source) values (2923, 'MONTGOMERY COUNTY CONSTABLE PRECINCT 4', 'cris'); +insert into lookups.agency (id, label, source) values (2924, 'MONTGOMERY COUNTY CONSTABLE PRECINCT 5', 'cris'); +insert into lookups.agency (id, label, source) values (2939, 'NUECES COUNTY CONSTABLE PRECINCT 1', 'cris'); +insert into lookups.agency (id, label, source) values (2940, 'NUECES COUNTY CONSTABLE PRECINCT 2', 'cris'); +insert into lookups.agency (id, label, source) values (2941, 'NUECES COUNTY CONSTABLE PRECINCT 3', 'cris'); +insert into lookups.agency (id, label, source) values (2942, 'NUECES COUNTY CONSTABLE PRECINCT 5', 'cris'); +insert into lookups.agency (id, label, source) values (2946, 'OCHILTREE COUNTY CONSTABLE', 'cris'); +insert into lookups.agency (id, label, source) values (3037, 'SMITH COUNTY CONSTABLE PRECINCT 5', 'cris'); +insert into lookups.agency (id, label, source) values (3056, 'TARRANT COUNTY CONSTABLE PRECINCT 4', 'cris'); +insert into lookups.agency (id, label, source) values (3060, 'TARRANT COUNTY CONSTABLE PRECINCT 8', 'cris'); +insert into lookups.agency (id, label, source) values (3067, 'TEXAS STATE TECHNICAL COLLEGE POLICE DEPARTMENT - SWEETWATER', 'cris'); +insert into lookups.agency (id, label, source) values (3073, 'TRAVIS COUNTY CONSTABLE PRECINCT 1', 'cris'); +insert into lookups.agency (id, label, source) values (3074, 'TRAVIS COUNTY CONSTABLE PRECINCT 2', 'cris'); +insert into lookups.agency (id, label, source) values (3075, 'TRAVIS COUNTY CONSTABLE PRECINCT 3', 'cris'); +insert into lookups.agency (id, label, source) values (3076, 'TRAVIS COUNTY CONSTABLE PRECINCT 4', 'cris'); +insert into lookups.agency (id, label, source) values (3078, 'TRINITY COUNTY CONSTABLE PRECINCT 1', 'cris'); +insert into lookups.agency (id, label, source) values (3079, 'TRINITY COUNTY CONSTABLE PRECINCT 2', 'cris'); +insert into lookups.agency (id, label, source) values (3080, 'TRINITY COUNTY CONSTABLE PRECINCT 4', 'cris'); +insert into lookups.agency (id, label, source) values (3086, 'UNIVERSITY OF TEXAS AT EL PASO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3087, 'UNIVERSITY OF TEXAS AT HOUSTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3112, 'WALKER COUNTY CONSTABLE PRECINCT 4', 'cris'); +insert into lookups.agency (id, label, source) values (3113, 'WALLER COUNTY CONSTABLE PRECINCT 1', 'cris'); +insert into lookups.agency (id, label, source) values (3114, 'WALLER COUNTY CONSTABLE PRECINCT 3', 'cris'); +insert into lookups.agency (id, label, source) values (3122, 'WEBB COUNTY CONSTABLE PRECINCT 1', 'cris'); +insert into lookups.agency (id, label, source) values (3123, 'WEBB COUNTY CONSTABLE PRECINCT 3', 'cris'); +insert into lookups.agency (id, label, source) values (3125, 'WHARTON COUNTY CONSTABLE PRECINCT 2', 'cris'); +insert into lookups.agency (id, label, source) values (3126, 'WHARTON COUNTY CONSTABLE PRECINCT 3', 'cris'); +insert into lookups.agency (id, label, source) values (3149, 'WOOD COUNTY CONSTABLE PRECINCT 2', 'cris'); +insert into lookups.agency (id, label, source) values (3164, 'BUDA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3165, 'SOUTHWEST ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3166, 'BUCKHOLTS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3167, 'EASTFIELD COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3168, 'LAREDO AIRPORT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3169, 'LOWER COLORADO RIVER AUTHORITY', 'cris'); +insert into lookups.agency (id, label, source) values (3170, 'MONTGOMERY ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3171, 'PANOLA COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3172, 'TEXAS PARKS & WILDLIFE - STATE PARKS', 'cris'); +insert into lookups.agency (id, label, source) values (3173, 'VINTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3174, 'WHITE RIVER WATER DISTRICT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3175, 'RENO POLICE DEPARTMENT (PARKER,TARRANT)', 'cris'); +insert into lookups.agency (id, label, source) values (3176, 'FATE DEPARTMENT OF PUBLIC SAFETY', 'cris'); +insert into lookups.agency (id, label, source) values (3177, 'DALLAS COUNTY SCHOOLS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3178, 'DALWORTHINGTON GARDENS DEPARTMENT OF PUBLIC SAFETY', 'cris'); +insert into lookups.agency (id, label, source) values (3179, 'HEATH DEPARTMENT OF PUBLIC SAFETY', 'cris'); +insert into lookups.agency (id, label, source) values (3181, 'HUGHES SPRINGS ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3183, 'WAYLAND BAPTIST UNIVERSITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3184, 'ALABAMA-COUSHATTA TRIBE OF TEXAS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3185, 'ECTOR COUNTY HOSPITAL DISTRICT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3186, 'SAN ANGELO REGIONAL AIRPORT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3187, 'VAN ZANDT COUNTY FIRE MARSHAL''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (3189, 'CAMERON COUNTY PARK RANGER DIVISION', 'cris'); +insert into lookups.agency (id, label, source) values (3190, 'CYPRESS-FAIRBANKS ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3191, 'MILANO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3193, 'SOUTH TEXAS COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3194, 'UNIVERSITY OF HOUSTON DEPARTMENT OF PUBLIC SAFETY', 'cris'); +insert into lookups.agency (id, label, source) values (3195, 'AUBREY ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3196, 'TODD MISSION POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3198, 'BRAZOSPORT ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3200, 'DALHART ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3201, 'ENCINAL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3202, 'GOOSE CREEK CONSOLIDATED ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3203, 'GRAYSON COUNTY COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3204, 'HALLSVILLE ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3208, 'MABANK ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3209, 'PALESTINE CITY MARSHAL''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (3210, 'SLATON ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3211, 'TEXAS A&M UNIVERSITY AT CENTRAL TEXAS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3212, 'UNIVERSITY OF ST THOMAS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3214, 'VEGA CITY MARSHAL''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (3215, 'VON ORMY CITY MARSHAL''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (3217, 'BASTROP ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3218, 'ARGYLE ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3220, 'MIDLAND COUNTY HOSPITAL DISTRICT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3221, 'UNIVERSITY OF TEXAS RIO GRANDE VALLEY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3222, 'FARMERSVILLE ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3223, 'CISCO COLLEGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3224, 'WALLER COUNTY DISTRICT ATTORNEY''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (3225, 'LOS INDIOS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3226, 'REAL COUNTY CONSTABLE''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (3227, 'CORPUS CHRISTI INTERNATIONAL AIRPORT PUBLIC SAFETY', 'cris'); +insert into lookups.agency (id, label, source) values (3229, 'PROSPER ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3230, 'IVANHOE CITY MARSHAL''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (3231, 'EUSTACE ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3232, 'NORTH LAMAR ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3233, 'CANUTILLO INDEPENDENT SCHOOL DISTRICT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3234, 'CITY OF OAK RIDGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3235, 'SOUTHWESTERN BAPTIST THEOLOGICAL SEMINARY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3236, 'GONZALES ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3237, 'HICO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3238, 'JOSHUA ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3239, 'DIMMITT ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3240, 'WHITEWRIGHT ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3241, 'VON ORMY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3242, 'HITCHCOCK ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3243, 'BRIARCLIFF POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3244, 'HONEY GROVE ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3245, 'ELM RIDGE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3246, 'BELLS ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3247, 'DUNCANVILLE ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3248, 'RICHLAND POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3249, 'KRUM ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3250, 'UNIVERSITY OF NORTH TEXAS AT DALLAS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3251, 'VALLEY VIEW ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3252, 'BEEVILLE ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3253, 'ODEM POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3254, 'HOWE ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3255, 'MELISSA ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3256, 'OAK POINT DEPARTMENT OF PUBLIC SAFETY', 'cris'); +insert into lookups.agency (id, label, source) values (3257, 'ELLIS COUNTY CONSTABLE PRECINCT 3', 'cris'); +insert into lookups.agency (id, label, source) values (3258, 'DALLAS COUNTY CONSTABLE PRECINCT 2', 'cris'); +insert into lookups.agency (id, label, source) values (3259, 'WHITESBORO ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3260, 'ANNA ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3261, 'ALVARADO ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3262, 'KAUFMAN COUNTY CONSTABLE PRECINCT 2', 'cris'); +insert into lookups.agency (id, label, source) values (3263, 'WEBB COUNTY CONSTABLE PRECINCT 2', 'cris'); +insert into lookups.agency (id, label, source) values (3264, 'OLDHAM COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (3265, 'TEAGUE ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3266, 'VENUS ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3267, 'LIBERTY HILL ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3268, 'OUR LADY OF THE LAKE UNIVERSITY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3269, 'TRINITY ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3270, 'DODD CITY ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3271, 'FORT BEND COUNTY CONSTABLE PRECINCT 1', 'cris'); +insert into lookups.agency (id, label, source) values (3272, 'PHARR-SAN JUAN-ALAMO ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3273, 'LONDON ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3274, 'SUNNYVALE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3275, 'SEYMOUR ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3276, 'LUBBOCK COUNTY WATER CONTROL AND IMPROVEMENT DISTRICT #1 POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3277, 'COCKRELL HILL CITY MARSHAL''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (3278, 'CITY VIEW ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3279, 'FORNEY ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3280, 'MANOR ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3281, 'PECOS BARSTOW TOYAH ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3282, 'ALMA POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3283, 'FREER INDEPENDENT SCHOOL DISTRICT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3284, 'SANDY OAKS MARSHAL''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (3285, 'CROWLEY ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3286, 'COLUMBIA-BRAZORIA ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3287, 'WALKER COUNTY CONSTABLE PRECINCT 3', 'cris'); +insert into lookups.agency (id, label, source) values (3288, 'LAMAR CONSOLIDATED ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3289, 'DELTA COUNTY CONSTABLE OFFICE PRECINCT 5', 'cris'); +insert into lookups.agency (id, label, source) values (3290, 'MCMULLEN COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (3291, 'CAMERON COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (3293, 'UNIVERSITY MEDICAL CENTER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3294, 'SAN MARCOS MARSHAL''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (3295, 'WASHINGTON COUNTY CONSTABLE PCT. 1', 'cris'); +insert into lookups.agency (id, label, source) values (3296, 'LAKE TRAVIS ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3297, 'SHELBY COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (3298, 'FREESTONE COUNTY CONSTABLE OFFICE PRECINCT 2', 'cris'); +insert into lookups.agency (id, label, source) values (3299, 'JEFFERSON COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (3300, 'CROSS ROADS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3301, 'GUADALUPE COUNTY CONSTABLE PRECINCT 1', 'cris'); +insert into lookups.agency (id, label, source) values (3302, 'A+ CHARTER SCHOOLS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3303, 'GALVESTON COUNTY CONSTABLE PRECINCT 4', 'cris'); +insert into lookups.agency (id, label, source) values (3304, 'BURKBURNETT INDEPENDENT SCHOOL DISTRICT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3305, 'LOCKNEY POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3306, 'JOHNSON COUNTY CONSTABLE OFFICE PRECINCT 1', 'cris'); +insert into lookups.agency (id, label, source) values (3307, 'KRUGERVILLE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3308, 'WEST INDEPENDENT SCHOOL DISTRICT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3309, 'PLUM GROVE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3310, 'WASHINGTON COUNTY CONSTABLE OFFICE PRECINCT 2', 'cris'); +insert into lookups.agency (id, label, source) values (3311, 'AMARILLO ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3312, 'CHARLOTTE POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3313, 'CENTER POINT ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3314, 'SULPHUR SPRINGS ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3315, 'SHERMAN ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3316, 'DALLAS COUNTY CONSTABLE PRECINCT 5', 'cris'); +insert into lookups.agency (id, label, source) values (3318, 'FULTON POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3319, 'FLOUR BLUFF ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3320, 'LUBBOCK COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (3321, 'METHODIST HEALTH SYSTEMS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3322, 'WEST ORANGE-COVE CONSOLIDATED ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3323, 'POLK COUNTY CONSTABLE PRECINCT 1', 'cris'); +insert into lookups.agency (id, label, source) values (3324, 'LAREDO INTERNATIONAL AIRPORT PD', 'cris'); +insert into lookups.agency (id, label, source) values (3325, 'SANDY OAKS POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3326, 'STOCKDALE MARSHAL''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (3327, 'SAINT HEDWIG MARSHAL''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (3328, 'NEEDVILLE ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3329, 'SANTA CLARA MARSHAL''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (3330, 'TERRY COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (3331, 'KICKAPOO TRIBAL POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3332, 'EASTLAND COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (3333, 'HUFFMAN ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3334, 'TEXAS TECH EL PASO POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3335, 'IDALOU ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3336, 'HILL COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (3337, 'CRANDALL ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3338, 'EAGLE MOUNTAIN-SAGINAW ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3339, 'WALKER COUNTY SHERIFF''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (3340, 'EDGEWOOD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3341, 'SMILEY CITY MARSHAL''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (3342, 'SHEPHERD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3343, 'HEMPSTEAD ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3344, 'HALE CENTER POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3345, 'SALADO INDEPENDENT SCHOOL DISTRICT POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3346, 'WILLS POINT ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3347, 'MAUD ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3348, 'FROST POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3349, 'SCURRY-ROSSER ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3350, 'JARRELL ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3351, 'PORT ARTHUR ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3352, 'COOPER ISD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (3353, 'BLANCO COUNTY CONSTABLE OFFICE PRECINCT 4', 'cris'); +insert into lookups.agency (id, label, source) values (3354, 'GRIMES COUNTY CONSTABLE OFFICE PRECINCT 2', 'cris'); +insert into lookups.agency (id, label, source) values (9999, 'REQUIRES INTERPRETATION', 'cris'); +insert into lookups.agency (id, label, source) values (10000, 'DEPARTMENT OF PUBLIC SAFETY, STATE OF TEXAS', 'cris'); +insert into lookups.agency (id, label, source) values (10001, 'DEPARTMENT OF TRANSPORTATION, STATE OF TEXAS', 'cris'); +insert into lookups.agency (id, label, source) values (10002, 'NATIONAL HIGHWAY TRAFFIC SAFETY ADMINISTRATION', 'cris'); +insert into lookups.agency (id, label, source) values (10003, 'FEDERAL HIGHWAY ADMINISTRATION', 'cris'); +insert into lookups.agency (id, label, source) values (10004, 'US AIR FORCE LEGAL OPERATIONS AGENCY', 'cris'); +insert into lookups.agency (id, label, source) values (10005, 'US ARMY MEDICAL COMMAND', 'cris'); +insert into lookups.agency (id, label, source) values (10006, 'US CONSUMER PRODUCT SAFETY COMMISSION', 'cris'); +insert into lookups.agency (id, label, source) values (10007, 'FORT HOOD CIVIL POLICE LIAISON', 'cris'); +insert into lookups.agency (id, label, source) values (10008, 'JOINT BASE SAN ANTONIO FORT SAM HOUSTON POLICE', 'cris'); +insert into lookups.agency (id, label, source) values (10009, 'TEXAS ARMY NATIONAL GUARD', 'cris'); +insert into lookups.agency (id, label, source) values (10010, 'FEDERAL MOTOR CARRIER SAFETY ADMINISTRATION', 'cris'); +insert into lookups.agency (id, label, source) values (10011, 'NATIONAL INSTITUTE FOR OCCUPATIONAL SAFETY AND HEALTH', 'cris'); +insert into lookups.agency (id, label, source) values (10012, 'UNION PACIFIC RAILROAD POLICE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (10100, 'DATA ENTRY VENDOR', 'cris'); +insert into lookups.agency (id, label, source) values (10101, 'APPLICATION VERIFICATION AGENCY', 'cris'); +insert into lookups.agency (id, label, source) values (10107, 'TEXAS A&M TRANSPORTATION INSTITUTE', 'cris'); +insert into lookups.agency (id, label, source) values (10108, 'UNIVERSITY OF TEXAS CENTER FOR TRANSPORTATION RESEARCH', 'cris'); +insert into lookups.agency (id, label, source) values (10109, 'CENTRAL TEXAS REGIONAL MOBILITY AUTHORITY (CTRMA)', 'cris'); +insert into lookups.agency (id, label, source) values (10110, 'ABILENE METROPOLITAN PLANNING ORGANIZATION', 'cris'); +insert into lookups.agency (id, label, source) values (10111, 'ALAMO REGIONAL MOBILITY AUTHORITY', 'cris'); +insert into lookups.agency (id, label, source) values (10112, 'AMARILLO METROPOLITAN PLANNING ORGANIZATION', 'cris'); +insert into lookups.agency (id, label, source) values (10113, 'BROWNSVILLE METROPOLITAN PLANNING ORGANIZATION', 'cris'); +insert into lookups.agency (id, label, source) values (10114, 'BRYAN-COLLEGE STATION METROPOLITAN PLANNING ORGANIZATION', 'cris'); +insert into lookups.agency (id, label, source) values (10115, 'CAMERON COUNTY REGIONAL MOBILITY AUTHORITY', 'cris'); +insert into lookups.agency (id, label, source) values (10116, 'CAMINO REAL REGIONAL MOBILITY AUTHORITY', 'cris'); +insert into lookups.agency (id, label, source) values (10117, 'CAPITAL AREA METROPOLITAN PLANNING ORGANIZATION (CAMPO)', 'cris'); +insert into lookups.agency (id, label, source) values (10118, 'CORPUS CHRISTIMETROPOLITAN PLANNING ORGANIZATION', 'cris'); +insert into lookups.agency (id, label, source) values (10119, 'EL PASO METROPOLITAN PLANNING ORGANIZATION', 'cris'); +insert into lookups.agency (id, label, source) values (10120, 'GRAYSON COUNTY REGIONAL MOBILITY AUTHORITY', 'cris'); +insert into lookups.agency (id, label, source) values (10121, 'HARLINGEN-SAN BENITO METROPOLITAN PLANNING ORGANIZATION', 'cris'); +insert into lookups.agency (id, label, source) values (10122, 'HIDALGO COUNTY METROPOLITAN PLANNING ORGANIZATION', 'cris'); +insert into lookups.agency (id, label, source) values (10123, 'HIDALGO COUNTY REGIONAL MOBILITY AUTHORITY', 'cris'); +insert into lookups.agency (id, label, source) values (10124, 'HOUSTON-GALVESTON AREA COUNCIL (H-GAC)', 'cris'); +insert into lookups.agency (id, label, source) values (10125, 'KILLEEN-TEMPLE METROPOLITAN PLANNING ORGANIZATION', 'cris'); +insert into lookups.agency (id, label, source) values (10126, 'LAREDO METROPOLITAN PLANNING ORGANIZATION', 'cris'); +insert into lookups.agency (id, label, source) values (10127, 'LONGVIEW METROPOLITAN PLANNING ORGANIZATION', 'cris'); +insert into lookups.agency (id, label, source) values (10128, 'LUBBOCK METROPOLITAN PLANNING ORGANIZATION', 'cris'); +insert into lookups.agency (id, label, source) values (10129, 'MIDLAND-ODESSA METROPOLITAN PLANNING ORGANIZATION', 'cris'); +insert into lookups.agency (id, label, source) values (10130, 'NORTH CENTRAL TEXAS COUNCIL OF GOVERNMENTS (NCTCOG)', 'cris'); +insert into lookups.agency (id, label, source) values (10131, 'NORTH EAST TEXAS REGIONAL MOBILITY AUTHORITY', 'cris'); +insert into lookups.agency (id, label, source) values (10132, 'SAN ANGELO METROPOLITAN PLANNING ORGANIZATION', 'cris'); +insert into lookups.agency (id, label, source) values (10133, 'SAN ANTONIO-BEXAR COUNTY METROPOLITAN PLANNING ORGANIZATION', 'cris'); +insert into lookups.agency (id, label, source) values (10134, 'SHERMAN-DENISON METROPOLITAN PLANNING ORGANIZATION', 'cris'); +insert into lookups.agency (id, label, source) values (10135, 'SOUTH EAST TEXAS REGIONAL PLANNING COMMISSION', 'cris'); +insert into lookups.agency (id, label, source) values (10136, 'SULPHUR SPRINGS REGIONAL MOBILITY AUTHORITY', 'cris'); +insert into lookups.agency (id, label, source) values (10137, 'TEXARKANA METROPOLITAN PLANNING ORGANIZATION', 'cris'); +insert into lookups.agency (id, label, source) values (10138, 'TYLER AREA METROPOLITAN PLANNING ORGANIZATION', 'cris'); +insert into lookups.agency (id, label, source) values (10139, 'VICTORIA METROPOLITAN PLANNING ORGANIZATION', 'cris'); +insert into lookups.agency (id, label, source) values (10140, 'WACO METROPOLITAN PLANNING ORGANIZATION', 'cris'); +insert into lookups.agency (id, label, source) values (10141, 'WICHITA FALLS METROPOLITAN PLANNING ORGANIZATION', 'cris'); +insert into lookups.agency (id, label, source) values (10142, 'CITY OF LUFKIN', 'cris'); +insert into lookups.agency (id, label, source) values (10143, 'NORTH TEXAS TOLLWAY AUTHORITY', 'cris'); +insert into lookups.agency (id, label, source) values (10144, 'UNIVERSITY OF SAN ANTONIO', 'cris'); +insert into lookups.agency (id, label, source) values (10145, 'ALAMO AREA MPO', 'cris'); +insert into lookups.agency (id, label, source) values (10146, 'UNIVERSITY OF TEXAS AT EL PASO', 'cris'); +insert into lookups.agency (id, label, source) values (10147, 'BRAZOS VALLEY COUNCIL OF GOVERNMENTS', 'cris'); +insert into lookups.agency (id, label, source) values (10148, 'TEXAS ALCOHOLIC BEVERAGE COMMISSION', 'cris'); +insert into lookups.agency (id, label, source) values (10150, 'CITY OF NORTH RICHLAND HILLS', 'cris'); +insert into lookups.agency (id, label, source) values (10151, 'CITY OF COLLEGE STATION', 'cris'); +insert into lookups.agency (id, label, source) values (10152, 'HARRIS COUNTY ATTORNEYS OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (10153, 'CITY OF BRYAN', 'cris'); +insert into lookups.agency (id, label, source) values (10154, 'HIDALGO COUNTY DISTRICT ATTORNEY', 'cris'); +insert into lookups.agency (id, label, source) values (10155, 'CITY OF MCKINNEY', 'cris'); +insert into lookups.agency (id, label, source) values (10156, 'CITY OF SUGAR LAND', 'cris'); +insert into lookups.agency (id, label, source) values (10157, 'TRAVIS COUNTY COMMUNITY SUPERVISION AND CORRECTIONS DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (10158, 'TRAVIS COUNTY DISTRICT ATTORNEY''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (10159, 'CITY OF HOUSTON', 'cris'); +insert into lookups.agency (id, label, source) values (10160, 'HARRIS COUNTY ENGINEERING DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (10161, 'CITY OF MIDLAND', 'cris'); +insert into lookups.agency (id, label, source) values (10162, 'CITY OF CEDAR PARK', 'cris'); +insert into lookups.agency (id, label, source) values (10163, 'BRIAR-RENO FIRE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (10164, 'BRAZOS COUNTY JUSTICE OF THE PEACE PRECINCT 2', 'cris'); +insert into lookups.agency (id, label, source) values (10165, 'CITY OF AUSTIN - AUSTIN ENERGY', 'cris'); +insert into lookups.agency (id, label, source) values (10166, 'CITY OF RICHARDSON', 'cris'); +insert into lookups.agency (id, label, source) values (10167, 'CITY OF CELINA', 'cris'); +insert into lookups.agency (id, label, source) values (10168, 'NUECES COUNTY MEDICAL EXAMINER''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (10169, 'HELP DESK', 'cris'); +insert into lookups.agency (id, label, source) values (10170, 'TRAVIS COUNTY-TNR-TE', 'cris'); +insert into lookups.agency (id, label, source) values (10171, 'ECTOR COUNTY PUBLIC WORKS DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (10172, 'TEXAS DEPARTMENT OF MOTOR VEHICLES', 'cris'); +insert into lookups.agency (id, label, source) values (10173, 'TEXAS OFFICE OF ATTORNEY GENERAL', 'cris'); +insert into lookups.agency (id, label, source) values (10174, 'TEXAS DEPARTMENT OF INSURANCE', 'cris'); +insert into lookups.agency (id, label, source) values (10175, 'WILLIAMSON COUNTY ATTORNEY''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (10176, 'CASS COUNTY DISTRICT ATTORNEY''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (10177, 'CITY OF AUSTIN - TRANSPORTATION DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (10178, 'CITY OF CORPUS CHRISTI STREET OPERATIONS', 'cris'); +insert into lookups.agency (id, label, source) values (10179, 'TEXAS DEPARTMENT OF CRIMINAL JUSTICE', 'cris'); +insert into lookups.agency (id, label, source) values (10180, 'ORANGE COUNTY - RISK MANAGEMENT', 'cris'); +insert into lookups.agency (id, label, source) values (10181, 'CITY OF SAN ANTONIO TRANSPORTATION AND CAPITAL IMPROVEMENTS', 'cris'); +insert into lookups.agency (id, label, source) values (10182, 'BEXAR COUNTY DISTRICT ATTORNEY', 'cris'); +insert into lookups.agency (id, label, source) values (10183, 'CITY OF CORPUS CHRISTI', 'cris'); +insert into lookups.agency (id, label, source) values (10184, 'CITY OF WACO', 'cris'); +insert into lookups.agency (id, label, source) values (10185, 'FORT BEND COUNTY', 'cris'); +insert into lookups.agency (id, label, source) values (10186, 'WILLIAMSON COUNTY OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (10187, 'CITY OF FRISCO', 'cris'); +insert into lookups.agency (id, label, source) values (10188, 'CITY OF MISSOURI CITY', 'cris'); +insert into lookups.agency (id, label, source) values (10189, 'MCLENNAN COUNTY DISTRICT ATTORNEY''S OFFICE IN WACO', 'cris'); +insert into lookups.agency (id, label, source) values (10190, 'DALLAS COUNTY', 'cris'); +insert into lookups.agency (id, label, source) values (10191, 'HARRIS COUNTY DISTRICT ATTORNEY', 'cris'); +insert into lookups.agency (id, label, source) values (10192, 'CITY OF ALLEN', 'cris'); +insert into lookups.agency (id, label, source) values (10193, 'TRAVIS COUNTY ATTORNEY''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (10194, 'CITY OF EL PASO', 'cris'); +insert into lookups.agency (id, label, source) values (10195, 'CITY OF DALLAS', 'cris'); +insert into lookups.agency (id, label, source) values (10196, 'CITY OF GRAND PRAIRIE', 'cris'); +insert into lookups.agency (id, label, source) values (10197, 'CITY OF BALCH SPRINGS', 'cris'); +insert into lookups.agency (id, label, source) values (10198, 'TRAVIS COUNTY JUSTICE OF THE PEACE', 'cris'); +insert into lookups.agency (id, label, source) values (10199, 'CITY OF ABILENE ENGINEERING', 'cris'); +insert into lookups.agency (id, label, source) values (10200, 'EXTRACT USERS', 'cris'); +insert into lookups.agency (id, label, source) values (10201, 'FORT BEND COUNTY EMS', 'cris'); +insert into lookups.agency (id, label, source) values (10202, 'CITY OF EAGLE PASS', 'cris'); +insert into lookups.agency (id, label, source) values (10203, 'HILL COUNTY JUSTICE OF THE PEACE PRECINCT 4', 'cris'); +insert into lookups.agency (id, label, source) values (10204, 'POLK COUNTY CRIMINAL DISTRICT ATTORNEY', 'cris'); +insert into lookups.agency (id, label, source) values (10205, 'CITY OF BROWNSVILLE', 'cris'); +insert into lookups.agency (id, label, source) values (10206, 'SAM HOUSTON STATE UNIVERSITY - OFFICE OF COMPLIANCE AND INSURANCE', 'cris'); +insert into lookups.agency (id, label, source) values (10207, 'FLINT-GRESHAM VOLUNTEER FIRE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (10208, 'BALCH SPRINGS FIRE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (10210, 'KEMAH MUNICIPAL COURT', 'cris'); +insert into lookups.agency (id, label, source) values (10211, 'HARRIS COUNTY INSTITUTE OF FORENSIC SCIENCES', 'cris'); +insert into lookups.agency (id, label, source) values (10212, 'MONTGOMERY COUNTY DISTRICT ATTORNEY''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (10213, 'COLLIN COUNTY MEDICAL EXAMINER''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (10214, 'HENDERSON COUNTY DISTRICT ATTORNEY''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (10215, 'KERR COUNTY DISTRICT ATTORNEY''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (10216, 'CITY OF LUBBOCK', 'cris'); +insert into lookups.agency (id, label, source) values (10217, 'FORT BEND COUNTY TOLL ROAD AUTHORITY', 'cris'); +insert into lookups.agency (id, label, source) values (10218, 'FARMERS BRANCH FIRE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (10219, 'GALVESTON COUNTY DISTRICT ATTORNEY''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (10220, 'CITY OF CARROLLTON', 'cris'); +insert into lookups.agency (id, label, source) values (10221, 'CITY OF MESQUITE', 'cris'); +insert into lookups.agency (id, label, source) values (10222, 'CITY OF ARLINGTON', 'cris'); +insert into lookups.agency (id, label, source) values (10223, 'TOM GREEN COUNTY', 'cris'); +insert into lookups.agency (id, label, source) values (10224, 'FORT BEND COUNTY DISTRICT ATTORNEY''S OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (10225, 'PORTER FIRE DEPARTMENT', 'cris'); +insert into lookups.agency (id, label, source) values (10226, 'LUBBOCK COUNTY MEDICAL EXAMINER OFFICE', 'cris'); +insert into lookups.agency (id, label, source) values (10227, 'MONTGOMERY COUNTY FORENSIC SERVICES', 'cris'); +insert into lookups.city (id, label, source) values (1, 'ABERNATHY', 'cris'); +insert into lookups.city (id, label, source) values (2, 'ABILENE', 'cris'); +insert into lookups.city (id, label, source) values (3, 'ADDISON', 'cris'); +insert into lookups.city (id, label, source) values (4, 'ALAMO', 'cris'); +insert into lookups.city (id, label, source) values (5, 'ALAMO HEIGHTS', 'cris'); +insert into lookups.city (id, label, source) values (6, 'ALICE', 'cris'); +insert into lookups.city (id, label, source) values (7, 'ALLEN', 'cris'); +insert into lookups.city (id, label, source) values (8, 'ALPINE', 'cris'); +insert into lookups.city (id, label, source) values (9, 'ALTON', 'cris'); +insert into lookups.city (id, label, source) values (10, 'ALVARADO', 'cris'); +insert into lookups.city (id, label, source) values (11, 'ALVIN', 'cris'); +insert into lookups.city (id, label, source) values (12, 'AMARILLO', 'cris'); +insert into lookups.city (id, label, source) values (13, 'ANDREWS', 'cris'); +insert into lookups.city (id, label, source) values (14, 'ANGLETON', 'cris'); +insert into lookups.city (id, label, source) values (15, 'ANSON', 'cris'); +insert into lookups.city (id, label, source) values (16, 'ANTHONY', 'cris'); +insert into lookups.city (id, label, source) values (17, 'ARANSAS PASS', 'cris'); +insert into lookups.city (id, label, source) values (18, 'ARGYLE', 'cris'); +insert into lookups.city (id, label, source) values (19, 'ARLINGTON', 'cris'); +insert into lookups.city (id, label, source) values (20, 'ATHENS', 'cris'); +insert into lookups.city (id, label, source) values (21, 'ATLANTA', 'cris'); +insert into lookups.city (id, label, source) values (22, 'AUSTIN', 'cris'); +insert into lookups.city (id, label, source) values (23, 'AZLE', 'cris'); +insert into lookups.city (id, label, source) values (24, 'BALCH SPRINGS', 'cris'); +insert into lookups.city (id, label, source) values (25, 'BALCONES HEIGHTS', 'cris'); +insert into lookups.city (id, label, source) values (26, 'BALLINGER', 'cris'); +insert into lookups.city (id, label, source) values (27, 'BASTROP', 'cris'); +insert into lookups.city (id, label, source) values (28, 'BAY CITY', 'cris'); +insert into lookups.city (id, label, source) values (29, 'BAYTOWN', 'cris'); +insert into lookups.city (id, label, source) values (30, 'BEAUMONT', 'cris'); +insert into lookups.city (id, label, source) values (31, 'BEDFORD', 'cris'); +insert into lookups.city (id, label, source) values (32, 'BEEVILLE', 'cris'); +insert into lookups.city (id, label, source) values (33, 'BELLAIRE', 'cris'); +insert into lookups.city (id, label, source) values (34, 'BELLMEAD', 'cris'); +insert into lookups.city (id, label, source) values (35, 'BELLVILLE', 'cris'); +insert into lookups.city (id, label, source) values (36, 'BELTON', 'cris'); +insert into lookups.city (id, label, source) values (37, 'BENBROOK', 'cris'); +insert into lookups.city (id, label, source) values (38, 'BIG LAKE', 'cris'); +insert into lookups.city (id, label, source) values (39, 'BIG SPRING', 'cris'); +insert into lookups.city (id, label, source) values (40, 'BISHOP', 'cris'); +insert into lookups.city (id, label, source) values (41, 'BOERNE', 'cris'); +insert into lookups.city (id, label, source) values (42, 'BONHAM', 'cris'); +insert into lookups.city (id, label, source) values (43, 'BORGER', 'cris'); +insert into lookups.city (id, label, source) values (44, 'BOWIE', 'cris'); +insert into lookups.city (id, label, source) values (45, 'BRADY', 'cris'); +insert into lookups.city (id, label, source) values (46, 'BRAZORIA', 'cris'); +insert into lookups.city (id, label, source) values (47, 'BRECKENRIDGE', 'cris'); +insert into lookups.city (id, label, source) values (48, 'BRENHAM', 'cris'); +insert into lookups.city (id, label, source) values (49, 'BRIDGE CITY', 'cris'); +insert into lookups.city (id, label, source) values (50, 'BRIDGEPORT', 'cris'); +insert into lookups.city (id, label, source) values (51, 'BROOKSHIRE', 'cris'); +insert into lookups.city (id, label, source) values (52, 'BROWNFIELD', 'cris'); +insert into lookups.city (id, label, source) values (53, 'BROWNSVILLE', 'cris'); +insert into lookups.city (id, label, source) values (54, 'BROWNWOOD', 'cris'); +insert into lookups.city (id, label, source) values (55, 'BRYAN', 'cris'); +insert into lookups.city (id, label, source) values (56, 'BUDA', 'cris'); +insert into lookups.city (id, label, source) values (57, 'BUNKER HILL VILLAGE', 'cris'); +insert into lookups.city (id, label, source) values (58, 'BURKBURNETT', 'cris'); +insert into lookups.city (id, label, source) values (59, 'BURLESON', 'cris'); +insert into lookups.city (id, label, source) values (60, 'BURNET', 'cris'); +insert into lookups.city (id, label, source) values (61, 'CACTUS', 'cris'); +insert into lookups.city (id, label, source) values (62, 'CALDWELL', 'cris'); +insert into lookups.city (id, label, source) values (63, 'CAMERON', 'cris'); +insert into lookups.city (id, label, source) values (64, 'CANTON', 'cris'); +insert into lookups.city (id, label, source) values (65, 'CANYON', 'cris'); +insert into lookups.city (id, label, source) values (66, 'CARRIZO SPRINGS', 'cris'); +insert into lookups.city (id, label, source) values (67, 'CARROLLTON', 'cris'); +insert into lookups.city (id, label, source) values (68, 'CARTHAGE', 'cris'); +insert into lookups.city (id, label, source) values (69, 'CASTLE HILLS', 'cris'); +insert into lookups.city (id, label, source) values (70, 'CASTROVILLE', 'cris'); +insert into lookups.city (id, label, source) values (71, 'CEDAR HILL', 'cris'); +insert into lookups.city (id, label, source) values (72, 'CEDAR PARK', 'cris'); +insert into lookups.city (id, label, source) values (73, 'CENTER', 'cris'); +insert into lookups.city (id, label, source) values (74, 'CHILDRESS', 'cris'); +insert into lookups.city (id, label, source) values (75, 'CIBOLO', 'cris'); +insert into lookups.city (id, label, source) values (76, 'CISCO', 'cris'); +insert into lookups.city (id, label, source) values (77, 'CLARKSVILLE', 'cris'); +insert into lookups.city (id, label, source) values (78, 'CLEBURNE', 'cris'); +insert into lookups.city (id, label, source) values (79, 'CLEVELAND', 'cris'); +insert into lookups.city (id, label, source) values (80, 'CLIFTON', 'cris'); +insert into lookups.city (id, label, source) values (81, 'CLUTE', 'cris'); +insert into lookups.city (id, label, source) values (82, 'CLYDE', 'cris'); +insert into lookups.city (id, label, source) values (83, 'COCKRELL HILL', 'cris'); +insert into lookups.city (id, label, source) values (84, 'COLEMAN', 'cris'); +insert into lookups.city (id, label, source) values (85, 'COLLEGE STATION', 'cris'); +insert into lookups.city (id, label, source) values (86, 'COLLEYVILLE', 'cris'); +insert into lookups.city (id, label, source) values (87, 'COLORADO CITY', 'cris'); +insert into lookups.city (id, label, source) values (88, 'COLUMBUS', 'cris'); +insert into lookups.city (id, label, source) values (89, 'COMANCHE', 'cris'); +insert into lookups.city (id, label, source) values (90, 'COMBES', 'cris'); +insert into lookups.city (id, label, source) values (91, 'COMMERCE', 'cris'); +insert into lookups.city (id, label, source) values (92, 'CONROE', 'cris'); +insert into lookups.city (id, label, source) values (93, 'CONVERSE', 'cris'); +insert into lookups.city (id, label, source) values (94, 'COPPELL', 'cris'); +insert into lookups.city (id, label, source) values (95, 'COPPERAS COVE', 'cris'); +insert into lookups.city (id, label, source) values (96, 'CORINTH', 'cris'); +insert into lookups.city (id, label, source) values (97, 'CORPUS CHRISTI', 'cris'); +insert into lookups.city (id, label, source) values (98, 'CORSICANA', 'cris'); +insert into lookups.city (id, label, source) values (99, 'COTULLA', 'cris'); +insert into lookups.city (id, label, source) values (100, 'CRANDALL', 'cris'); +insert into lookups.city (id, label, source) values (101, 'CRANE', 'cris'); +insert into lookups.city (id, label, source) values (102, 'CROCKETT', 'cris'); +insert into lookups.city (id, label, source) values (103, 'CROWLEY', 'cris'); +insert into lookups.city (id, label, source) values (104, 'CRYSTAL CITY', 'cris'); +insert into lookups.city (id, label, source) values (105, 'CUERO', 'cris'); +insert into lookups.city (id, label, source) values (106, 'DALHART', 'cris'); +insert into lookups.city (id, label, source) values (107, 'DALLAS', 'cris'); +insert into lookups.city (id, label, source) values (108, 'DAYTON', 'cris'); +insert into lookups.city (id, label, source) values (109, 'DESOTO', 'cris'); +insert into lookups.city (id, label, source) values (110, 'DECATUR', 'cris'); +insert into lookups.city (id, label, source) values (111, 'DEER PARK', 'cris'); +insert into lookups.city (id, label, source) values (112, 'DEL RIO', 'cris'); +insert into lookups.city (id, label, source) values (113, 'DENISON', 'cris'); +insert into lookups.city (id, label, source) values (114, 'DENTON', 'cris'); +insert into lookups.city (id, label, source) values (115, 'DENVER CITY', 'cris'); +insert into lookups.city (id, label, source) values (116, 'DEVINE', 'cris'); +insert into lookups.city (id, label, source) values (117, 'DIBOLL', 'cris'); +insert into lookups.city (id, label, source) values (118, 'DICKINSON', 'cris'); +insert into lookups.city (id, label, source) values (119, 'DILLEY', 'cris'); +insert into lookups.city (id, label, source) values (120, 'DIMMITT', 'cris'); +insert into lookups.city (id, label, source) values (121, 'DONNA', 'cris'); +insert into lookups.city (id, label, source) values (122, 'DUBLIN', 'cris'); +insert into lookups.city (id, label, source) values (123, 'DUMAS', 'cris'); +insert into lookups.city (id, label, source) values (124, 'DUNCANVILLE', 'cris'); +insert into lookups.city (id, label, source) values (125, 'EAGLE LAKE', 'cris'); +insert into lookups.city (id, label, source) values (126, 'EAGLE PASS', 'cris'); +insert into lookups.city (id, label, source) values (127, 'EARLY', 'cris'); +insert into lookups.city (id, label, source) values (128, 'EASTLAND', 'cris'); +insert into lookups.city (id, label, source) values (129, 'EDCOUCH', 'cris'); +insert into lookups.city (id, label, source) values (130, 'EDEN', 'cris'); +insert into lookups.city (id, label, source) values (131, 'EDGECLIFF VILLAGE', 'cris'); +insert into lookups.city (id, label, source) values (132, 'EDINBURG', 'cris'); +insert into lookups.city (id, label, source) values (133, 'EDNA', 'cris'); +insert into lookups.city (id, label, source) values (134, 'EL CAMPO', 'cris'); +insert into lookups.city (id, label, source) values (135, 'EL LAGO', 'cris'); +insert into lookups.city (id, label, source) values (136, 'EL PASO', 'cris'); +insert into lookups.city (id, label, source) values (137, 'ELECTRA', 'cris'); +insert into lookups.city (id, label, source) values (138, 'ELGIN', 'cris'); +insert into lookups.city (id, label, source) values (139, 'ELSA', 'cris'); +insert into lookups.city (id, label, source) values (140, 'ENNIS', 'cris'); +insert into lookups.city (id, label, source) values (141, 'EULESS', 'cris'); +insert into lookups.city (id, label, source) values (142, 'EVERMAN', 'cris'); +insert into lookups.city (id, label, source) values (143, 'FAIR OAKS RANCH', 'cris'); +insert into lookups.city (id, label, source) values (144, 'FAIRFIELD', 'cris'); +insert into lookups.city (id, label, source) values (145, 'FAIRVIEW', 'cris'); +insert into lookups.city (id, label, source) values (146, 'FALFURRIAS', 'cris'); +insert into lookups.city (id, label, source) values (147, 'FARMERS BRANCH', 'cris'); +insert into lookups.city (id, label, source) values (148, 'FARMERSVILLE', 'cris'); +insert into lookups.city (id, label, source) values (149, 'FERRIS', 'cris'); +insert into lookups.city (id, label, source) values (150, 'FLORESVILLE', 'cris'); +insert into lookups.city (id, label, source) values (151, 'FLOWER MOUND', 'cris'); +insert into lookups.city (id, label, source) values (152, 'FLOYDADA', 'cris'); +insert into lookups.city (id, label, source) values (153, 'FOREST HILL', 'cris'); +insert into lookups.city (id, label, source) values (154, 'FORNEY', 'cris'); +insert into lookups.city (id, label, source) values (155, 'FORT STOCKTON', 'cris'); +insert into lookups.city (id, label, source) values (156, 'FORT WORTH', 'cris'); +insert into lookups.city (id, label, source) values (157, 'FREDERICKSBURG', 'cris'); +insert into lookups.city (id, label, source) values (158, 'FREEPORT', 'cris'); +insert into lookups.city (id, label, source) values (159, 'FREER', 'cris'); +insert into lookups.city (id, label, source) values (160, 'FRIENDSWOOD', 'cris'); +insert into lookups.city (id, label, source) values (161, 'FRIONA', 'cris'); +insert into lookups.city (id, label, source) values (162, 'FRISCO', 'cris'); +insert into lookups.city (id, label, source) values (163, 'GAINESVILLE', 'cris'); +insert into lookups.city (id, label, source) values (164, 'GALENA PARK', 'cris'); +insert into lookups.city (id, label, source) values (165, 'GALVESTON', 'cris'); +insert into lookups.city (id, label, source) values (166, 'GARLAND', 'cris'); +insert into lookups.city (id, label, source) values (167, 'GATESVILLE', 'cris'); +insert into lookups.city (id, label, source) values (168, 'GEORGE WEST', 'cris'); +insert into lookups.city (id, label, source) values (169, 'GEORGETOWN', 'cris'); +insert into lookups.city (id, label, source) values (170, 'GIDDINGS', 'cris'); +insert into lookups.city (id, label, source) values (171, 'GILMER', 'cris'); +insert into lookups.city (id, label, source) values (172, 'GLADEWATER', 'cris'); +insert into lookups.city (id, label, source) values (173, 'GLENN HEIGHTS', 'cris'); +insert into lookups.city (id, label, source) values (174, 'GONZALES', 'cris'); +insert into lookups.city (id, label, source) values (175, 'GRAHAM', 'cris'); +insert into lookups.city (id, label, source) values (176, 'GRANBURY', 'cris'); +insert into lookups.city (id, label, source) values (177, 'GRAND PRAIRIE', 'cris'); +insert into lookups.city (id, label, source) values (178, 'GRAND SALINE', 'cris'); +insert into lookups.city (id, label, source) values (179, 'GRAPEVINE', 'cris'); +insert into lookups.city (id, label, source) values (180, 'GREENVILLE', 'cris'); +insert into lookups.city (id, label, source) values (181, 'GROESBECK', 'cris'); +insert into lookups.city (id, label, source) values (182, 'GROVES', 'cris'); +insert into lookups.city (id, label, source) values (183, 'GUN BARREL CITY', 'cris'); +insert into lookups.city (id, label, source) values (184, 'HALLETTSVILLE', 'cris'); +insert into lookups.city (id, label, source) values (185, 'HALLSVILLE', 'cris'); +insert into lookups.city (id, label, source) values (186, 'HALTOM CITY', 'cris'); +insert into lookups.city (id, label, source) values (187, 'HAMILTON', 'cris'); +insert into lookups.city (id, label, source) values (188, 'HARKER HEIGHTS', 'cris'); +insert into lookups.city (id, label, source) values (189, 'HARLINGEN', 'cris'); +insert into lookups.city (id, label, source) values (190, 'HASKELL', 'cris'); +insert into lookups.city (id, label, source) values (191, 'HEARNE', 'cris'); +insert into lookups.city (id, label, source) values (192, 'HEATH', 'cris'); +insert into lookups.city (id, label, source) values (193, 'HELOTES', 'cris'); +insert into lookups.city (id, label, source) values (194, 'HEMPSTEAD', 'cris'); +insert into lookups.city (id, label, source) values (195, 'HENDERSON', 'cris'); +insert into lookups.city (id, label, source) values (196, 'HENRIETTA', 'cris'); +insert into lookups.city (id, label, source) values (197, 'HEREFORD', 'cris'); +insert into lookups.city (id, label, source) values (198, 'HEWITT', 'cris'); +insert into lookups.city (id, label, source) values (199, 'HIDALGO', 'cris'); +insert into lookups.city (id, label, source) values (200, 'HIGHLAND PARK', 'cris'); +insert into lookups.city (id, label, source) values (201, 'HIGHLAND VILLAGE', 'cris'); +insert into lookups.city (id, label, source) values (202, 'HILLSBORO', 'cris'); +insert into lookups.city (id, label, source) values (203, 'HITCHCOCK', 'cris'); +insert into lookups.city (id, label, source) values (204, 'HOLLYWOOD PARK', 'cris'); +insert into lookups.city (id, label, source) values (205, 'HONDO', 'cris'); +insert into lookups.city (id, label, source) values (206, 'HOOKS', 'cris'); +insert into lookups.city (id, label, source) values (207, 'HORIZON CITY', 'cris'); +insert into lookups.city (id, label, source) values (208, 'HOUSTON', 'cris'); +insert into lookups.city (id, label, source) values (209, 'HOWE', 'cris'); +insert into lookups.city (id, label, source) values (210, 'HUDSON', 'cris'); +insert into lookups.city (id, label, source) values (211, 'HUMBLE', 'cris'); +insert into lookups.city (id, label, source) values (212, 'HUNTERS CREEK VILLAGE', 'cris'); +insert into lookups.city (id, label, source) values (213, 'HUNTSVILLE', 'cris'); +insert into lookups.city (id, label, source) values (214, 'HURST', 'cris'); +insert into lookups.city (id, label, source) values (215, 'HUTCHINS', 'cris'); +insert into lookups.city (id, label, source) values (216, 'INGLESIDE', 'cris'); +insert into lookups.city (id, label, source) values (217, 'IOWA PARK', 'cris'); +insert into lookups.city (id, label, source) values (218, 'IRVING', 'cris'); +insert into lookups.city (id, label, source) values (219, 'JACINTO CITY', 'cris'); +insert into lookups.city (id, label, source) values (220, 'JACKSBORO', 'cris'); +insert into lookups.city (id, label, source) values (221, 'JACKSONVILLE', 'cris'); +insert into lookups.city (id, label, source) values (222, 'JASPER', 'cris'); +insert into lookups.city (id, label, source) values (223, 'JERSEY VILLAGE', 'cris'); +insert into lookups.city (id, label, source) values (224, 'JOSHUA', 'cris'); +insert into lookups.city (id, label, source) values (225, 'JOURDANTON', 'cris'); +insert into lookups.city (id, label, source) values (226, 'JUNCTION', 'cris'); +insert into lookups.city (id, label, source) values (227, 'KARNES CITY', 'cris'); +insert into lookups.city (id, label, source) values (228, 'KATY', 'cris'); +insert into lookups.city (id, label, source) values (229, 'KAUFMAN', 'cris'); +insert into lookups.city (id, label, source) values (230, 'KEENE', 'cris'); +insert into lookups.city (id, label, source) values (231, 'KELLER', 'cris'); +insert into lookups.city (id, label, source) values (232, 'KENNEDALE', 'cris'); +insert into lookups.city (id, label, source) values (233, 'KERMIT', 'cris'); +insert into lookups.city (id, label, source) values (234, 'KERRVILLE', 'cris'); +insert into lookups.city (id, label, source) values (235, 'KILGORE', 'cris'); +insert into lookups.city (id, label, source) values (236, 'KILLEEN', 'cris'); +insert into lookups.city (id, label, source) values (237, 'KINGSVILLE', 'cris'); +insert into lookups.city (id, label, source) values (238, 'KIRBY', 'cris'); +insert into lookups.city (id, label, source) values (239, 'KYLE', 'cris'); +insert into lookups.city (id, label, source) values (240, 'LA FERIA', 'cris'); +insert into lookups.city (id, label, source) values (241, 'LA GRANGE', 'cris'); +insert into lookups.city (id, label, source) values (242, 'LA JOYA', 'cris'); +insert into lookups.city (id, label, source) values (243, 'LA MARQUE', 'cris'); +insert into lookups.city (id, label, source) values (244, 'LA PORTE', 'cris'); +insert into lookups.city (id, label, source) values (245, 'LACY-LAKEVIEW', 'cris'); +insert into lookups.city (id, label, source) values (246, 'LAGO VISTA', 'cris'); +insert into lookups.city (id, label, source) values (247, 'LAKE DALLAS', 'cris'); +insert into lookups.city (id, label, source) values (248, 'LAKE JACKSON', 'cris'); +insert into lookups.city (id, label, source) values (249, 'LAKE WORTH', 'cris'); +insert into lookups.city (id, label, source) values (250, 'LAKEWAY', 'cris'); +insert into lookups.city (id, label, source) values (251, 'LAMESA', 'cris'); +insert into lookups.city (id, label, source) values (252, 'LAMPASAS', 'cris'); +insert into lookups.city (id, label, source) values (253, 'LANCASTER', 'cris'); +insert into lookups.city (id, label, source) values (254, 'LAREDO', 'cris'); +insert into lookups.city (id, label, source) values (255, 'LEAGUE CITY', 'cris'); +insert into lookups.city (id, label, source) values (256, 'LEANDER', 'cris'); +insert into lookups.city (id, label, source) values (257, 'LEON VALLEY', 'cris'); +insert into lookups.city (id, label, source) values (258, 'LEVELLAND', 'cris'); +insert into lookups.city (id, label, source) values (259, 'LEWISVILLE', 'cris'); +insert into lookups.city (id, label, source) values (260, 'LIBERTY', 'cris'); +insert into lookups.city (id, label, source) values (261, 'LINDALE', 'cris'); +insert into lookups.city (id, label, source) values (262, 'LITTLE ELM', 'cris'); +insert into lookups.city (id, label, source) values (263, 'LITTLEFIELD', 'cris'); +insert into lookups.city (id, label, source) values (264, 'LIVE OAK', 'cris'); +insert into lookups.city (id, label, source) values (265, 'LIVINGSTON', 'cris'); +insert into lookups.city (id, label, source) values (266, 'LLANO', 'cris'); +insert into lookups.city (id, label, source) values (267, 'LOCKHART', 'cris'); +insert into lookups.city (id, label, source) values (268, 'LONGVIEW', 'cris'); +insert into lookups.city (id, label, source) values (269, 'LOS FRESNOS', 'cris'); +insert into lookups.city (id, label, source) values (270, 'LUBBOCK', 'cris'); +insert into lookups.city (id, label, source) values (271, 'LUCAS', 'cris'); +insert into lookups.city (id, label, source) values (272, 'LUFKIN', 'cris'); +insert into lookups.city (id, label, source) values (273, 'LULING', 'cris'); +insert into lookups.city (id, label, source) values (274, 'LUMBERTON', 'cris'); +insert into lookups.city (id, label, source) values (275, 'LYTLE', 'cris'); +insert into lookups.city (id, label, source) values (276, 'MADISONVILLE', 'cris'); +insert into lookups.city (id, label, source) values (277, 'MANSFIELD', 'cris'); +insert into lookups.city (id, label, source) values (278, 'MANVEL', 'cris'); +insert into lookups.city (id, label, source) values (279, 'MARBLE FALLS', 'cris'); +insert into lookups.city (id, label, source) values (280, 'MARLIN', 'cris'); +insert into lookups.city (id, label, source) values (281, 'MARSHALL', 'cris'); +insert into lookups.city (id, label, source) values (282, 'MATHIS', 'cris'); +insert into lookups.city (id, label, source) values (283, 'MCALLEN', 'cris'); +insert into lookups.city (id, label, source) values (284, 'MCGREGOR', 'cris'); +insert into lookups.city (id, label, source) values (285, 'MCKINNEY', 'cris'); +insert into lookups.city (id, label, source) values (286, 'MEADOW', 'cris'); +insert into lookups.city (id, label, source) values (287, 'MERCEDES', 'cris'); +insert into lookups.city (id, label, source) values (288, 'MERKEL', 'cris'); +insert into lookups.city (id, label, source) values (289, 'MESQUITE', 'cris'); +insert into lookups.city (id, label, source) values (290, 'MEXIA', 'cris'); +insert into lookups.city (id, label, source) values (291, 'MIDLAND', 'cris'); +insert into lookups.city (id, label, source) values (292, 'MIDLOTHIAN', 'cris'); +insert into lookups.city (id, label, source) values (293, 'MINEOLA', 'cris'); +insert into lookups.city (id, label, source) values (294, 'MINERAL WELLS', 'cris'); +insert into lookups.city (id, label, source) values (295, 'MISSION', 'cris'); +insert into lookups.city (id, label, source) values (296, 'MISSOURI CITY', 'cris'); +insert into lookups.city (id, label, source) values (297, 'MONAHANS', 'cris'); +insert into lookups.city (id, label, source) values (298, 'MONT BELVIEU', 'cris'); +insert into lookups.city (id, label, source) values (299, 'MORGAN''S POINT RESORT', 'cris'); +insert into lookups.city (id, label, source) values (300, 'MOUNT PLEASANT', 'cris'); +insert into lookups.city (id, label, source) values (301, 'MULESHOE', 'cris'); +insert into lookups.city (id, label, source) values (302, 'MURPHY', 'cris'); +insert into lookups.city (id, label, source) values (303, 'NACOGDOCHES', 'cris'); +insert into lookups.city (id, label, source) values (304, 'NASSAU BAY', 'cris'); +insert into lookups.city (id, label, source) values (305, 'NAVASOTA', 'cris'); +insert into lookups.city (id, label, source) values (306, 'NEDERLAND', 'cris'); +insert into lookups.city (id, label, source) values (307, 'NEEDVILLE', 'cris'); +insert into lookups.city (id, label, source) values (308, 'NEW BOSTON', 'cris'); +insert into lookups.city (id, label, source) values (309, 'NEW BRAUNFELS', 'cris'); +insert into lookups.city (id, label, source) values (310, 'NOCONA', 'cris'); +insert into lookups.city (id, label, source) values (311, 'NOLANVILLE', 'cris'); +insert into lookups.city (id, label, source) values (312, 'NORTH RICHLAND HILLS', 'cris'); +insert into lookups.city (id, label, source) values (313, 'OAK RIDGE NORTH', 'cris'); +insert into lookups.city (id, label, source) values (314, 'ODEM', 'cris'); +insert into lookups.city (id, label, source) values (315, 'ODESSA', 'cris'); +insert into lookups.city (id, label, source) values (316, 'OLNEY', 'cris'); +insert into lookups.city (id, label, source) values (317, 'ORANGE', 'cris'); +insert into lookups.city (id, label, source) values (318, 'OVILLA', 'cris'); +insert into lookups.city (id, label, source) values (319, 'PALACIOS', 'cris'); +insert into lookups.city (id, label, source) values (320, 'PALESTINE', 'cris'); +insert into lookups.city (id, label, source) values (321, 'PALMVIEW', 'cris'); +insert into lookups.city (id, label, source) values (322, 'PAMPA', 'cris'); +insert into lookups.city (id, label, source) values (323, 'CHULA VISTA', 'cris'); +insert into lookups.city (id, label, source) values (324, 'PARIS', 'cris'); +insert into lookups.city (id, label, source) values (325, 'PASADENA', 'cris'); +insert into lookups.city (id, label, source) values (326, 'PEARLAND', 'cris'); +insert into lookups.city (id, label, source) values (327, 'PEARSALL', 'cris'); +insert into lookups.city (id, label, source) values (328, 'PECOS', 'cris'); +insert into lookups.city (id, label, source) values (329, 'PERRYTON', 'cris'); +insert into lookups.city (id, label, source) values (330, 'PFLUGERVILLE', 'cris'); +insert into lookups.city (id, label, source) values (331, 'PHARR', 'cris'); +insert into lookups.city (id, label, source) values (332, 'PILOT POINT', 'cris'); +insert into lookups.city (id, label, source) values (333, 'PINEY POINT VILLAGE', 'cris'); +insert into lookups.city (id, label, source) values (334, 'PITTSBURG', 'cris'); +insert into lookups.city (id, label, source) values (335, 'PLAINVIEW', 'cris'); +insert into lookups.city (id, label, source) values (336, 'PLANO', 'cris'); +insert into lookups.city (id, label, source) values (337, 'PLEASANTON', 'cris'); +insert into lookups.city (id, label, source) values (338, 'PORT ARANSAS', 'cris'); +insert into lookups.city (id, label, source) values (339, 'PORT ARTHUR', 'cris'); +insert into lookups.city (id, label, source) values (340, 'PORT ISABEL', 'cris'); +insert into lookups.city (id, label, source) values (341, 'PORT LAVACA', 'cris'); +insert into lookups.city (id, label, source) values (342, 'PORT NECHES', 'cris'); +insert into lookups.city (id, label, source) values (343, 'PORTLAND', 'cris'); +insert into lookups.city (id, label, source) values (344, 'POST', 'cris'); +insert into lookups.city (id, label, source) values (345, 'POTEET', 'cris'); +insert into lookups.city (id, label, source) values (346, 'PRAIRIE VIEW', 'cris'); +insert into lookups.city (id, label, source) values (347, 'PREMONT', 'cris'); +insert into lookups.city (id, label, source) values (348, 'PRESIDIO', 'cris'); +insert into lookups.city (id, label, source) values (349, 'PRIMERA', 'cris'); +insert into lookups.city (id, label, source) values (350, 'PRINCETON', 'cris'); +insert into lookups.city (id, label, source) values (351, 'PROGRESO', 'cris'); +insert into lookups.city (id, label, source) values (352, 'QUANAH', 'cris'); +insert into lookups.city (id, label, source) values (353, 'RANGER', 'cris'); +insert into lookups.city (id, label, source) values (354, 'RAYMONDVILLE', 'cris'); +insert into lookups.city (id, label, source) values (355, 'RED OAK', 'cris'); +insert into lookups.city (id, label, source) values (356, 'REFUGIO', 'cris'); +insert into lookups.city (id, label, source) values (357, 'RICHARDSON', 'cris'); +insert into lookups.city (id, label, source) values (358, 'RICHLAND HILLS', 'cris'); +insert into lookups.city (id, label, source) values (359, 'RICHMOND', 'cris'); +insert into lookups.city (id, label, source) values (360, 'RICHWOOD', 'cris'); +insert into lookups.city (id, label, source) values (361, 'RIO BRAVO', 'cris'); +insert into lookups.city (id, label, source) values (362, 'RIO GRANDE CITY', 'cris'); +insert into lookups.city (id, label, source) values (363, 'RIVER OAKS', 'cris'); +insert into lookups.city (id, label, source) values (364, 'ROANOKE', 'cris'); +insert into lookups.city (id, label, source) values (365, 'ROBINSON', 'cris'); +insert into lookups.city (id, label, source) values (366, 'ROBSTOWN', 'cris'); +insert into lookups.city (id, label, source) values (367, 'ROCKDALE', 'cris'); +insert into lookups.city (id, label, source) values (368, 'ROCKPORT', 'cris'); +insert into lookups.city (id, label, source) values (369, 'ROCKWALL', 'cris'); +insert into lookups.city (id, label, source) values (370, 'ROMA', 'cris'); +insert into lookups.city (id, label, source) values (371, 'ROSENBERG', 'cris'); +insert into lookups.city (id, label, source) values (372, 'ROUND ROCK', 'cris'); +insert into lookups.city (id, label, source) values (373, 'ROWLETT', 'cris'); +insert into lookups.city (id, label, source) values (374, 'ROYSE CITY', 'cris'); +insert into lookups.city (id, label, source) values (375, 'RUSK', 'cris'); +insert into lookups.city (id, label, source) values (376, 'SACHSE', 'cris'); +insert into lookups.city (id, label, source) values (377, 'SAGINAW', 'cris'); +insert into lookups.city (id, label, source) values (378, 'SAN ANGELO', 'cris'); +insert into lookups.city (id, label, source) values (379, 'SAN ANTONIO', 'cris'); +insert into lookups.city (id, label, source) values (380, 'SAN BENITO', 'cris'); +insert into lookups.city (id, label, source) values (381, 'SAN DIEGO', 'cris'); +insert into lookups.city (id, label, source) values (382, 'SAN JUAN', 'cris'); +insert into lookups.city (id, label, source) values (383, 'SAN MARCOS', 'cris'); +insert into lookups.city (id, label, source) values (384, 'SAN SABA', 'cris'); +insert into lookups.city (id, label, source) values (385, 'SANGER', 'cris'); +insert into lookups.city (id, label, source) values (386, 'SANSOM PARK', 'cris'); +insert into lookups.city (id, label, source) values (387, 'SANTA FE', 'cris'); +insert into lookups.city (id, label, source) values (388, 'SANTA ROSA', 'cris'); +insert into lookups.city (id, label, source) values (389, 'SCHERTZ', 'cris'); +insert into lookups.city (id, label, source) values (390, 'SCHULENBURG', 'cris'); +insert into lookups.city (id, label, source) values (391, 'SEABROOK', 'cris'); +insert into lookups.city (id, label, source) values (392, 'SEAGOVILLE', 'cris'); +insert into lookups.city (id, label, source) values (393, 'SEALY', 'cris'); +insert into lookups.city (id, label, source) values (394, 'SEGUIN', 'cris'); +insert into lookups.city (id, label, source) values (395, 'SEMINOLE', 'cris'); +insert into lookups.city (id, label, source) values (396, 'SEYMOUR', 'cris'); +insert into lookups.city (id, label, source) values (397, 'SHERMAN', 'cris'); +insert into lookups.city (id, label, source) values (398, 'SILSBEE', 'cris'); +insert into lookups.city (id, label, source) values (399, 'SINTON', 'cris'); +insert into lookups.city (id, label, source) values (400, 'SLATON', 'cris'); +insert into lookups.city (id, label, source) values (401, 'SMITHVILLE', 'cris'); +insert into lookups.city (id, label, source) values (402, 'SNYDER', 'cris'); +insert into lookups.city (id, label, source) values (403, 'SOCORRO', 'cris'); +insert into lookups.city (id, label, source) values (404, 'SONORA', 'cris'); +insert into lookups.city (id, label, source) values (405, 'SOUTH HOUSTON', 'cris'); +insert into lookups.city (id, label, source) values (406, 'SOUTHLAKE', 'cris'); +insert into lookups.city (id, label, source) values (407, 'SPEARMAN', 'cris'); +insert into lookups.city (id, label, source) values (408, 'SPRING VALLEY', 'cris'); +insert into lookups.city (id, label, source) values (409, 'STAFFORD', 'cris'); +insert into lookups.city (id, label, source) values (410, 'STAMFORD', 'cris'); +insert into lookups.city (id, label, source) values (411, 'STANTON', 'cris'); +insert into lookups.city (id, label, source) values (412, 'STEPHENVILLE', 'cris'); +insert into lookups.city (id, label, source) values (413, 'SUGAR LAND', 'cris'); +insert into lookups.city (id, label, source) values (414, 'SULLIVAN CITY', 'cris'); +insert into lookups.city (id, label, source) values (415, 'SULPHUR SPRINGS', 'cris'); +insert into lookups.city (id, label, source) values (416, 'SUNNYVALE', 'cris'); +insert into lookups.city (id, label, source) values (417, 'SWEENY', 'cris'); +insert into lookups.city (id, label, source) values (418, 'SWEETWATER', 'cris'); +insert into lookups.city (id, label, source) values (419, 'TAFT', 'cris'); +insert into lookups.city (id, label, source) values (420, 'TAHOKA', 'cris'); +insert into lookups.city (id, label, source) values (421, 'TAYLOR', 'cris'); +insert into lookups.city (id, label, source) values (422, 'TAYLOR LAKE VILLAGE', 'cris'); +insert into lookups.city (id, label, source) values (423, 'TEAGUE', 'cris'); +insert into lookups.city (id, label, source) values (424, 'TEMPLE', 'cris'); +insert into lookups.city (id, label, source) values (425, 'TERRELL', 'cris'); +insert into lookups.city (id, label, source) values (426, 'TERRELL HILLS', 'cris'); +insert into lookups.city (id, label, source) values (427, 'TEXARKANA', 'cris'); +insert into lookups.city (id, label, source) values (428, 'TEXAS CITY', 'cris'); +insert into lookups.city (id, label, source) values (429, 'THE COLONY', 'cris'); +insert into lookups.city (id, label, source) values (430, 'TOMBALL', 'cris'); +insert into lookups.city (id, label, source) values (431, 'TRINITY', 'cris'); +insert into lookups.city (id, label, source) values (432, 'TROPHY CLUB', 'cris'); +insert into lookups.city (id, label, source) values (433, 'TULIA', 'cris'); +insert into lookups.city (id, label, source) values (434, 'TYLER', 'cris'); +insert into lookups.city (id, label, source) values (435, 'UNIVERSAL CITY', 'cris'); +insert into lookups.city (id, label, source) values (436, 'UNIVERSITY PARK', 'cris'); +insert into lookups.city (id, label, source) values (437, 'UVALDE', 'cris'); +insert into lookups.city (id, label, source) values (438, 'VAN ALSTYNE', 'cris'); +insert into lookups.city (id, label, source) values (439, 'VERNON', 'cris'); +insert into lookups.city (id, label, source) values (440, 'VICTORIA', 'cris'); +insert into lookups.city (id, label, source) values (441, 'VIDOR', 'cris'); +insert into lookups.city (id, label, source) values (442, 'WACO', 'cris'); +insert into lookups.city (id, label, source) values (443, 'WAKE VILLAGE', 'cris'); +insert into lookups.city (id, label, source) values (444, 'WATAUGA', 'cris'); +insert into lookups.city (id, label, source) values (445, 'WAXAHACHIE', 'cris'); +insert into lookups.city (id, label, source) values (446, 'WEATHERFORD', 'cris'); +insert into lookups.city (id, label, source) values (447, 'WEBSTER', 'cris'); +insert into lookups.city (id, label, source) values (448, 'WESLACO', 'cris'); +insert into lookups.city (id, label, source) values (449, 'WEST', 'cris'); +insert into lookups.city (id, label, source) values (450, 'WEST COLUMBIA', 'cris'); +insert into lookups.city (id, label, source) values (451, 'WEST LAKE HILLS', 'cris'); +insert into lookups.city (id, label, source) values (452, 'WEST ORANGE', 'cris'); +insert into lookups.city (id, label, source) values (453, 'WEST UNIVERSITY PLACE', 'cris'); +insert into lookups.city (id, label, source) values (454, 'WHARTON', 'cris'); +insert into lookups.city (id, label, source) values (455, 'WHITE OAK', 'cris'); +insert into lookups.city (id, label, source) values (456, 'WHITE SETTLEMENT', 'cris'); +insert into lookups.city (id, label, source) values (457, 'WHITEHOUSE', 'cris'); +insert into lookups.city (id, label, source) values (458, 'WHITESBORO', 'cris'); +insert into lookups.city (id, label, source) values (459, 'WICHITA FALLS', 'cris'); +insert into lookups.city (id, label, source) values (460, 'WILLIS', 'cris'); +insert into lookups.city (id, label, source) values (461, 'WILLOW PARK', 'cris'); +insert into lookups.city (id, label, source) values (462, 'WILLS POINT', 'cris'); +insert into lookups.city (id, label, source) values (463, 'WILMER', 'cris'); +insert into lookups.city (id, label, source) values (464, 'WINDCREST', 'cris'); +insert into lookups.city (id, label, source) values (465, 'WINNSBORO', 'cris'); +insert into lookups.city (id, label, source) values (466, 'WINTERS', 'cris'); +insert into lookups.city (id, label, source) values (467, 'WOODWAY', 'cris'); +insert into lookups.city (id, label, source) values (468, 'WYLIE', 'cris'); +insert into lookups.city (id, label, source) values (469, 'YOAKUM', 'cris'); +insert into lookups.city (id, label, source) values (470, 'ABBOTT', 'cris'); +insert into lookups.city (id, label, source) values (471, 'CHULA VISTA', 'cris'); +insert into lookups.city (id, label, source) values (472, 'ACKERLY', 'cris'); +insert into lookups.city (id, label, source) values (473, 'ADRIAN', 'cris'); +insert into lookups.city (id, label, source) values (474, 'AGUA DULCE', 'cris'); +insert into lookups.city (id, label, source) values (475, 'CHULA VISTA', 'cris'); +insert into lookups.city (id, label, source) values (476, 'ALBA', 'cris'); +insert into lookups.city (id, label, source) values (477, 'ALBANY', 'cris'); +insert into lookups.city (id, label, source) values (478, 'ALDINE', 'cris'); +insert into lookups.city (id, label, source) values (479, 'ALEDO', 'cris'); +insert into lookups.city (id, label, source) values (480, 'COYOTE FLATS', 'cris'); +insert into lookups.city (id, label, source) values (481, 'HILLTOP', 'cris'); +insert into lookups.city (id, label, source) values (482, 'ALMA', 'cris'); +insert into lookups.city (id, label, source) values (483, 'ALTO', 'cris'); +insert into lookups.city (id, label, source) values (484, 'HILLTOP', 'cris'); +insert into lookups.city (id, label, source) values (485, 'LANGTRY', 'cris'); +insert into lookups.city (id, label, source) values (486, 'ALVORD', 'cris'); +insert into lookups.city (id, label, source) values (487, 'AMES', 'cris'); +insert into lookups.city (id, label, source) values (488, 'AMHERST', 'cris'); +insert into lookups.city (id, label, source) values (489, 'ANAHUAC', 'cris'); +insert into lookups.city (id, label, source) values (490, 'ANDERSON', 'cris'); +insert into lookups.city (id, label, source) values (491, 'LANTANA', 'cris'); +insert into lookups.city (id, label, source) values (492, 'ANGUS', 'cris'); +insert into lookups.city (id, label, source) values (493, 'ANNA', 'cris'); +insert into lookups.city (id, label, source) values (494, 'ANNETTA', 'cris'); +insert into lookups.city (id, label, source) values (495, 'ANNETTA NORTH', 'cris'); +insert into lookups.city (id, label, source) values (496, 'ANNETTA SOUTH', 'cris'); +insert into lookups.city (id, label, source) values (497, 'ANNONA', 'cris'); +insert into lookups.city (id, label, source) values (498, 'ANTON', 'cris'); +insert into lookups.city (id, label, source) values (499, 'APPLEBY', 'cris'); +insert into lookups.city (id, label, source) values (500, 'AQUILLA', 'cris'); +insert into lookups.city (id, label, source) values (501, 'ARCHER CITY', 'cris'); +insert into lookups.city (id, label, source) values (502, 'ARCOLA', 'cris'); +insert into lookups.city (id, label, source) values (503, 'ARP', 'cris'); +insert into lookups.city (id, label, source) values (504, 'LOMA LINDA EAST', 'cris'); +insert into lookups.city (id, label, source) values (505, 'LOS EBANOS', 'cris'); +insert into lookups.city (id, label, source) values (506, 'MAPLE', 'cris'); +insert into lookups.city (id, label, source) values (507, 'ASHERTON', 'cris'); +insert into lookups.city (id, label, source) values (508, 'ASPERMONT', 'cris'); +insert into lookups.city (id, label, source) values (509, 'MAPLE', 'cris'); +insert into lookups.city (id, label, source) values (510, 'AUBREY', 'cris'); +insert into lookups.city (id, label, source) values (511, 'AURORA', 'cris'); +insert into lookups.city (id, label, source) values (512, 'AUSTWELL', 'cris'); +insert into lookups.city (id, label, source) values (513, 'AVERY', 'cris'); +insert into lookups.city (id, label, source) values (514, 'AVINGER', 'cris'); +insert into lookups.city (id, label, source) values (515, 'BACLIFF', 'cris'); +insert into lookups.city (id, label, source) values (516, 'BAILEY', 'cris'); +insert into lookups.city (id, label, source) values (517, 'BAILEY''S PRAIRIE', 'cris'); +insert into lookups.city (id, label, source) values (518, 'BAIRD', 'cris'); +insert into lookups.city (id, label, source) values (519, 'BALMORHEA', 'cris'); +insert into lookups.city (id, label, source) values (520, 'BANDERA', 'cris'); +insert into lookups.city (id, label, source) values (521, 'BANGS', 'cris'); +insert into lookups.city (id, label, source) values (522, 'BARDWELL', 'cris'); +insert into lookups.city (id, label, source) values (523, 'BARRETT', 'cris'); +insert into lookups.city (id, label, source) values (524, 'BARRY', 'cris'); +insert into lookups.city (id, label, source) values (525, 'BARSTOW', 'cris'); +insert into lookups.city (id, label, source) values (526, 'BARTLETT', 'cris'); +insert into lookups.city (id, label, source) values (527, 'MEDINA', 'cris'); +insert into lookups.city (id, label, source) values (528, 'BARTONVILLE', 'cris'); +insert into lookups.city (id, label, source) values (529, 'BATESVILLE', 'cris'); +insert into lookups.city (id, label, source) values (530, 'NEW YORK', 'cris'); +insert into lookups.city (id, label, source) values (531, 'BAYOU VISTA', 'cris'); +insert into lookups.city (id, label, source) values (532, 'BAYSIDE', 'cris'); +insert into lookups.city (id, label, source) values (533, 'BAYVIEW', 'cris'); +insert into lookups.city (id, label, source) values (534, 'BEACH CITY', 'cris'); +insert into lookups.city (id, label, source) values (535, 'BEAR CREEK', 'cris'); +insert into lookups.city (id, label, source) values (536, 'BEASLEY', 'cris'); +insert into lookups.city (id, label, source) values (537, 'BECKVILLE', 'cris'); +insert into lookups.city (id, label, source) values (538, 'BEE CAVE', 'cris'); +insert into lookups.city (id, label, source) values (539, 'BELLEVUE', 'cris'); +insert into lookups.city (id, label, source) values (540, 'BELLS', 'cris'); +insert into lookups.city (id, label, source) values (541, 'BENAVIDES', 'cris'); +insert into lookups.city (id, label, source) values (542, 'BENJAMIN', 'cris'); +insert into lookups.city (id, label, source) values (543, 'BERRYVILLE', 'cris'); +insert into lookups.city (id, label, source) values (544, 'BERTRAM', 'cris'); +insert into lookups.city (id, label, source) values (545, 'BEVERLY HILLS', 'cris'); +insert into lookups.city (id, label, source) values (546, 'BEVIL OAKS', 'cris'); +insert into lookups.city (id, label, source) values (547, 'BIG SANDY', 'cris'); +insert into lookups.city (id, label, source) values (548, 'BIG WELLS', 'cris'); +insert into lookups.city (id, label, source) values (549, 'BIGFOOT', 'cris'); +insert into lookups.city (id, label, source) values (550, 'BISHOP HILLS', 'cris'); +insert into lookups.city (id, label, source) values (551, 'VERIBEST', 'cris'); +insert into lookups.city (id, label, source) values (552, 'BLACKWELL', 'cris'); +insert into lookups.city (id, label, source) values (553, 'BLANCO', 'cris'); +insert into lookups.city (id, label, source) values (554, 'BLANKET', 'cris'); +insert into lookups.city (id, label, source) values (555, 'BLESSING', 'cris'); +insert into lookups.city (id, label, source) values (556, 'BLOOMBURG', 'cris'); +insert into lookups.city (id, label, source) values (557, 'BLOOMING GROVE', 'cris'); +insert into lookups.city (id, label, source) values (558, 'BLOOMINGTON', 'cris'); +insert into lookups.city (id, label, source) values (559, 'BLOSSOM', 'cris'); +insert into lookups.city (id, label, source) values (561, 'BLUE MOUND', 'cris'); +insert into lookups.city (id, label, source) values (562, 'BLUE RIDGE', 'cris'); +insert into lookups.city (id, label, source) values (564, 'BLUM', 'cris'); +insert into lookups.city (id, label, source) values (565, 'BOGATA', 'cris'); +insert into lookups.city (id, label, source) values (566, 'BOLING-IAGO', 'cris'); +insert into lookups.city (id, label, source) values (567, 'BOLIVAR PENINSULA', 'cris'); +insert into lookups.city (id, label, source) values (568, 'BONNEY', 'cris'); +insert into lookups.city (id, label, source) values (569, 'BOOKER', 'cris'); +insert into lookups.city (id, label, source) values (571, 'BOVINA', 'cris'); +insert into lookups.city (id, label, source) values (573, 'BOYD', 'cris'); +insert into lookups.city (id, label, source) values (574, 'BRACKETTVILLE', 'cris'); +insert into lookups.city (id, label, source) values (575, 'BREMOND', 'cris'); +insert into lookups.city (id, label, source) values (576, 'BRIAR', 'cris'); +insert into lookups.city (id, label, source) values (577, 'BRIARCLIFF', 'cris'); +insert into lookups.city (id, label, source) values (578, 'BRIAROAKS', 'cris'); +insert into lookups.city (id, label, source) values (579, 'BROADDUS', 'cris'); +insert into lookups.city (id, label, source) values (580, 'BRONTE', 'cris'); +insert into lookups.city (id, label, source) values (581, 'BROOKSIDE VILLAGE', 'cris'); +insert into lookups.city (id, label, source) values (582, 'BROWNDELL', 'cris'); +insert into lookups.city (id, label, source) values (583, 'BROWNSBORO', 'cris'); +insert into lookups.city (id, label, source) values (584, 'BRUCEVILLE-EDDY', 'cris'); +insert into lookups.city (id, label, source) values (585, 'BRUNDAGE', 'cris'); +insert into lookups.city (id, label, source) values (586, 'BRUNI', 'cris'); +insert into lookups.city (id, label, source) values (588, 'BRYSON', 'cris'); +insert into lookups.city (id, label, source) values (589, 'BUCHANAN DAM', 'cris'); +insert into lookups.city (id, label, source) values (590, 'BUCKHOLTS', 'cris'); +insert into lookups.city (id, label, source) values (591, 'BUFFALO', 'cris'); +insert into lookups.city (id, label, source) values (592, 'BUFFALO GAP', 'cris'); +insert into lookups.city (id, label, source) values (593, 'BUFFALO SPRINGS', 'cris'); +insert into lookups.city (id, label, source) values (594, 'BULLARD', 'cris'); +insert into lookups.city (id, label, source) values (595, 'BULVERDE', 'cris'); +insert into lookups.city (id, label, source) values (596, 'BUNA', 'cris'); +insert into lookups.city (id, label, source) values (597, 'BURKE', 'cris'); +insert into lookups.city (id, label, source) values (598, 'BURTON', 'cris'); +insert into lookups.city (id, label, source) values (600, 'BYERS', 'cris'); +insert into lookups.city (id, label, source) values (601, 'BYNUM', 'cris'); +insert into lookups.city (id, label, source) values (602, 'CADDO MILLS', 'cris'); +insert into lookups.city (id, label, source) values (603, 'CALLISBURG', 'cris'); +insert into lookups.city (id, label, source) values (604, 'CALVERT', 'cris'); +insert into lookups.city (id, label, source) values (605, 'CAMERON PARK', 'cris'); +insert into lookups.city (id, label, source) values (607, 'CAMP WOOD', 'cris'); +insert into lookups.city (id, label, source) values (608, 'CAMPBELL', 'cris'); +insert into lookups.city (id, label, source) values (609, 'CANADIAN', 'cris'); +insert into lookups.city (id, label, source) values (610, 'CANEY CITY', 'cris'); +insert into lookups.city (id, label, source) values (612, 'CANUTILLO', 'cris'); +insert into lookups.city (id, label, source) values (613, 'CANYON LAKE', 'cris'); +insert into lookups.city (id, label, source) values (614, 'CARBON', 'cris'); +insert into lookups.city (id, label, source) values (615, 'CARL''S CORNER', 'cris'); +insert into lookups.city (id, label, source) values (616, 'CARMINE', 'cris'); +insert into lookups.city (id, label, source) values (618, 'CATARINA', 'cris'); +insert into lookups.city (id, label, source) values (619, 'CELESTE', 'cris'); +insert into lookups.city (id, label, source) values (620, 'CELINA', 'cris'); +insert into lookups.city (id, label, source) values (621, 'CENTERVILLE', 'cris'); +insert into lookups.city (id, label, source) values (624, 'CHANDLER', 'cris'); +insert into lookups.city (id, label, source) values (625, 'CHANNELVIEW', 'cris'); +insert into lookups.city (id, label, source) values (626, 'CHANNING', 'cris'); +insert into lookups.city (id, label, source) values (627, 'CHARLOTTE', 'cris'); +insert into lookups.city (id, label, source) values (628, 'CHESTER', 'cris'); +insert into lookups.city (id, label, source) values (629, 'CHICO', 'cris'); +insert into lookups.city (id, label, source) values (630, 'CHILLICOTHE', 'cris'); +insert into lookups.city (id, label, source) values (631, 'CHINA', 'cris'); +insert into lookups.city (id, label, source) values (632, 'CHINA GROVE', 'cris'); +insert into lookups.city (id, label, source) values (633, 'CHIRENO', 'cris'); +insert into lookups.city (id, label, source) values (634, 'CHRISTINE', 'cris'); +insert into lookups.city (id, label, source) values (635, 'CHRISTOVAL', 'cris'); +insert into lookups.city (id, label, source) values (642, 'CLARENDON', 'cris'); +insert into lookups.city (id, label, source) values (643, 'CLARKSVILLE CITY', 'cris'); +insert into lookups.city (id, label, source) values (644, 'CLAUDE', 'cris'); +insert into lookups.city (id, label, source) values (645, 'CLEAR LAKE SHORES', 'cris'); +insert into lookups.city (id, label, source) values (646, 'CLINT', 'cris'); +insert into lookups.city (id, label, source) values (647, 'CLOVERLEAF', 'cris'); +insert into lookups.city (id, label, source) values (648, 'COAHOMA', 'cris'); +insert into lookups.city (id, label, source) values (649, 'COFFEE CITY', 'cris'); +insert into lookups.city (id, label, source) values (650, 'COLDSPRING', 'cris'); +insert into lookups.city (id, label, source) values (651, 'COLLINSVILLE', 'cris'); +insert into lookups.city (id, label, source) values (652, 'COLMESNEIL', 'cris'); +insert into lookups.city (id, label, source) values (653, 'COMBINE', 'cris'); +insert into lookups.city (id, label, source) values (654, 'COMFORT', 'cris'); +insert into lookups.city (id, label, source) values (655, 'COMO', 'cris'); +insert into lookups.city (id, label, source) values (656, 'CONCEPCION', 'cris'); +insert into lookups.city (id, label, source) values (657, 'COOL', 'cris'); +insert into lookups.city (id, label, source) values (658, 'COOLIDGE', 'cris'); +insert into lookups.city (id, label, source) values (659, 'COOPER', 'cris'); +insert into lookups.city (id, label, source) values (660, 'COPPER CANYON', 'cris'); +insert into lookups.city (id, label, source) values (661, 'CORRAL CITY', 'cris'); +insert into lookups.city (id, label, source) values (662, 'CORRIGAN', 'cris'); +insert into lookups.city (id, label, source) values (663, 'COTTONWOOD', 'cris'); +insert into lookups.city (id, label, source) values (664, 'COTTONWOOD SHORES', 'cris'); +insert into lookups.city (id, label, source) values (665, 'COVE', 'cris'); +insert into lookups.city (id, label, source) values (666, 'COVINGTON', 'cris'); +insert into lookups.city (id, label, source) values (669, 'CRANFILLS GAP', 'cris'); +insert into lookups.city (id, label, source) values (670, 'CRAWFORD', 'cris'); +insert into lookups.city (id, label, source) values (671, 'CREEDMOOR', 'cris'); +insert into lookups.city (id, label, source) values (672, 'CROSBY', 'cris'); +insert into lookups.city (id, label, source) values (673, 'CROSBYTON', 'cris'); +insert into lookups.city (id, label, source) values (675, 'CROSS PLAINS', 'cris'); +insert into lookups.city (id, label, source) values (676, 'CROSS ROADS', 'cris'); +insert into lookups.city (id, label, source) values (678, 'CROWELL', 'cris'); +insert into lookups.city (id, label, source) values (680, 'CUMBY', 'cris'); +insert into lookups.city (id, label, source) values (682, 'CUNEY', 'cris'); +insert into lookups.city (id, label, source) values (683, 'CUSHING', 'cris'); +insert into lookups.city (id, label, source) values (684, 'CUT AND SHOOT', 'cris'); +insert into lookups.city (id, label, source) values (685, 'DAINGERFIELD', 'cris'); +insert into lookups.city (id, label, source) values (686, 'DAISETTA', 'cris'); +insert into lookups.city (id, label, source) values (687, 'DALWORTHINGTON GARDENS', 'cris'); +insert into lookups.city (id, label, source) values (688, 'DAMON', 'cris'); +insert into lookups.city (id, label, source) values (689, 'DANBURY', 'cris'); +insert into lookups.city (id, label, source) values (690, 'DARROUZETT', 'cris'); +insert into lookups.city (id, label, source) values (691, 'DAWSON', 'cris'); +insert into lookups.city (id, label, source) values (692, 'DAYTON LAKES', 'cris'); +insert into lookups.city (id, label, source) values (693, 'DE KALB', 'cris'); +insert into lookups.city (id, label, source) values (694, 'DE LEON', 'cris'); +insert into lookups.city (id, label, source) values (695, 'DEAN', 'cris'); +insert into lookups.city (id, label, source) values (698, 'DELL CITY', 'cris'); +insert into lookups.city (id, label, source) values (699, 'DEPORT', 'cris'); +insert into lookups.city (id, label, source) values (700, 'DETROIT', 'cris'); +insert into lookups.city (id, label, source) values (701, 'DEVERS', 'cris'); +insert into lookups.city (id, label, source) values (702, 'DEWEYVILLE', 'cris'); +insert into lookups.city (id, label, source) values (703, 'DICKENS', 'cris'); +insert into lookups.city (id, label, source) values (704, 'DODD CITY', 'cris'); +insert into lookups.city (id, label, source) values (705, 'DODSON', 'cris'); +insert into lookups.city (id, label, source) values (707, 'DOMINO', 'cris'); +insert into lookups.city (id, label, source) values (709, 'DORCHESTER', 'cris'); +insert into lookups.city (id, label, source) values (710, 'DOUBLE OAK', 'cris'); +insert into lookups.city (id, label, source) values (711, 'DOUGLASSVILLE', 'cris'); +insert into lookups.city (id, label, source) values (713, 'DRIPPING SPRINGS', 'cris'); +insert into lookups.city (id, label, source) values (714, 'DRISCOLL', 'cris'); +insert into lookups.city (id, label, source) values (716, 'EARTH', 'cris'); +insert into lookups.city (id, label, source) values (717, 'EAST BERNARD', 'cris'); +insert into lookups.city (id, label, source) values (718, 'EAST MOUNTAIN', 'cris'); +insert into lookups.city (id, label, source) values (719, 'EAST TAWAKONI', 'cris'); +insert into lookups.city (id, label, source) values (720, 'EASTON', 'cris'); +insert into lookups.city (id, label, source) values (721, 'ECTOR', 'cris'); +insert into lookups.city (id, label, source) values (723, 'EDGEWOOD', 'cris'); +insert into lookups.city (id, label, source) values (724, 'EDMONSON', 'cris'); +insert into lookups.city (id, label, source) values (725, 'EDOM', 'cris'); +insert into lookups.city (id, label, source) values (726, 'EDROY', 'cris'); +insert into lookups.city (id, label, source) values (729, 'EL CENIZO', 'cris'); +insert into lookups.city (id, label, source) values (730, 'EL INDIO', 'cris'); +insert into lookups.city (id, label, source) values (732, 'ELBERT', 'cris'); +insert into lookups.city (id, label, source) values (733, 'ELDORADO', 'cris'); +insert into lookups.city (id, label, source) values (734, 'ELKHART', 'cris'); +insert into lookups.city (id, label, source) values (736, 'ELMENDORF', 'cris'); +insert into lookups.city (id, label, source) values (737, 'EMHOUSE', 'cris'); +insert into lookups.city (id, label, source) values (738, 'EMORY', 'cris'); +insert into lookups.city (id, label, source) values (739, 'ENCANTADA-RANCHITO-EL CALABOZ', 'cris'); +insert into lookups.city (id, label, source) values (740, 'ENCHANTED OAKS', 'cris'); +insert into lookups.city (id, label, source) values (741, 'ENCINAL', 'cris'); +insert into lookups.city (id, label, source) values (742, 'ENCINO', 'cris'); +insert into lookups.city (id, label, source) values (743, 'ESCOBARES', 'cris'); +insert into lookups.city (id, label, source) values (744, 'ESTELLINE', 'cris'); +insert into lookups.city (id, label, source) values (745, 'EUREKA', 'cris'); +insert into lookups.city (id, label, source) values (746, 'EUSTACE', 'cris'); +insert into lookups.city (id, label, source) values (747, 'EVADALE', 'cris'); +insert into lookups.city (id, label, source) values (748, 'EVANT', 'cris'); +insert into lookups.city (id, label, source) values (749, 'FABENS', 'cris'); +insert into lookups.city (id, label, source) values (750, 'FAIRCHILDS', 'cris'); +insert into lookups.city (id, label, source) values (751, 'FALCON HEIGHTS', 'cris'); +insert into lookups.city (id, label, source) values (755, 'FALLS CITY', 'cris'); +insert into lookups.city (id, label, source) values (757, 'FARWELL', 'cris'); +insert into lookups.city (id, label, source) values (758, 'FATE', 'cris'); +insert into lookups.city (id, label, source) values (759, 'FAYETTEVILLE', 'cris'); +insert into lookups.city (id, label, source) values (760, 'FAYSVILLE', 'cris'); +insert into lookups.city (id, label, source) values (762, 'FLATONIA', 'cris'); +insert into lookups.city (id, label, source) values (763, 'FLORENCE', 'cris'); +insert into lookups.city (id, label, source) values (765, 'FOLLETT', 'cris'); +insert into lookups.city (id, label, source) values (766, 'FORSAN', 'cris'); +insert into lookups.city (id, label, source) values (767, 'FORT BLISS', 'cris'); +insert into lookups.city (id, label, source) values (768, 'FORT DAVIS', 'cris'); +insert into lookups.city (id, label, source) values (769, 'FORT HANCOCK', 'cris'); +insert into lookups.city (id, label, source) values (770, 'FORT HOOD', 'cris'); +insert into lookups.city (id, label, source) values (772, 'FOWLERTON', 'cris'); +insert into lookups.city (id, label, source) values (773, 'FRANKLIN', 'cris'); +insert into lookups.city (id, label, source) values (774, 'FRANKSTON', 'cris'); +insert into lookups.city (id, label, source) values (775, 'FRESNO', 'cris'); +insert into lookups.city (id, label, source) values (776, 'FRITCH', 'cris'); +insert into lookups.city (id, label, source) values (777, 'FRONTON', 'cris'); +insert into lookups.city (id, label, source) values (778, 'FROST', 'cris'); +insert into lookups.city (id, label, source) values (779, 'FRUITVALE', 'cris'); +insert into lookups.city (id, label, source) values (780, 'FULSHEAR', 'cris'); +insert into lookups.city (id, label, source) values (781, 'FULTON', 'cris'); +insert into lookups.city (id, label, source) values (782, 'GALLATIN', 'cris'); +insert into lookups.city (id, label, source) values (783, 'GANADO', 'cris'); +insert into lookups.city (id, label, source) values (784, 'GARCENO', 'cris'); +insert into lookups.city (id, label, source) values (785, 'GARDEN RIDGE', 'cris'); +insert into lookups.city (id, label, source) values (786, 'GARDENDALE', 'cris'); +insert into lookups.city (id, label, source) values (788, 'GARRETT', 'cris'); +insert into lookups.city (id, label, source) values (789, 'GARRISON', 'cris'); +insert into lookups.city (id, label, source) values (790, 'GARY CITY', 'cris'); +insert into lookups.city (id, label, source) values (791, 'GERONIMO', 'cris'); +insert into lookups.city (id, label, source) values (792, 'GHOLSON', 'cris'); +insert into lookups.city (id, label, source) values (793, 'GIRARD', 'cris'); +insert into lookups.city (id, label, source) values (794, 'GLEN ROSE', 'cris'); +insert into lookups.city (id, label, source) values (795, 'GODLEY', 'cris'); +insert into lookups.city (id, label, source) values (796, 'GOLDSMITH', 'cris'); +insert into lookups.city (id, label, source) values (797, 'GOLDTHWAITE', 'cris'); +insert into lookups.city (id, label, source) values (798, 'GOLIAD', 'cris'); +insert into lookups.city (id, label, source) values (799, 'GOLINDA', 'cris'); +insert into lookups.city (id, label, source) values (800, 'GOODLOW', 'cris'); +insert into lookups.city (id, label, source) values (801, 'GOODRICH', 'cris'); +insert into lookups.city (id, label, source) values (802, 'GORDON', 'cris'); +insert into lookups.city (id, label, source) values (803, 'GOREE', 'cris'); +insert into lookups.city (id, label, source) values (804, 'GRAFORD', 'cris'); +insert into lookups.city (id, label, source) values (805, 'GORMAN', 'cris'); +insert into lookups.city (id, label, source) values (807, 'GRANDFALLS', 'cris'); +insert into lookups.city (id, label, source) values (808, 'GRANDVIEW', 'cris'); +insert into lookups.city (id, label, source) values (809, 'GRANGER', 'cris'); +insert into lookups.city (id, label, source) values (810, 'GRANITE SHOALS', 'cris'); +insert into lookups.city (id, label, source) values (811, 'GRANJENO', 'cris'); +insert into lookups.city (id, label, source) values (813, 'GRAPELAND', 'cris'); +insert into lookups.city (id, label, source) values (814, 'GRAYS PRAIRIE', 'cris'); +insert into lookups.city (id, label, source) values (817, 'GREGORY', 'cris'); +insert into lookups.city (id, label, source) values (818, 'GREY FOREST', 'cris'); +insert into lookups.city (id, label, source) values (819, 'GROOM', 'cris'); +insert into lookups.city (id, label, source) values (820, 'GROVETON', 'cris'); +insert into lookups.city (id, label, source) values (821, 'GRUVER', 'cris'); +insert into lookups.city (id, label, source) values (823, 'GUNTER', 'cris'); +insert into lookups.city (id, label, source) values (824, 'GUSTINE', 'cris'); +insert into lookups.city (id, label, source) values (825, 'HACKBERRY', 'cris'); +insert into lookups.city (id, label, source) values (826, 'HALE CENTER', 'cris'); +insert into lookups.city (id, label, source) values (827, 'HALLSBURG', 'cris'); +insert into lookups.city (id, label, source) values (828, 'HAMLIN', 'cris'); +insert into lookups.city (id, label, source) values (829, 'HAPPY', 'cris'); +insert into lookups.city (id, label, source) values (830, 'HARDIN', 'cris'); +insert into lookups.city (id, label, source) values (831, 'HARPER', 'cris'); +insert into lookups.city (id, label, source) values (832, 'HART', 'cris'); +insert into lookups.city (id, label, source) values (833, 'HARTLEY', 'cris'); +insert into lookups.city (id, label, source) values (834, 'HASLET', 'cris'); +insert into lookups.city (id, label, source) values (835, 'HAVANA', 'cris'); +insert into lookups.city (id, label, source) values (837, 'HAWKINS', 'cris'); +insert into lookups.city (id, label, source) values (838, 'HAWLEY', 'cris'); +insert into lookups.city (id, label, source) values (839, 'HAYS', 'cris'); +insert into lookups.city (id, label, source) values (840, 'HEBBRONVILLE', 'cris'); +insert into lookups.city (id, label, source) values (841, 'HEBRON', 'cris'); +insert into lookups.city (id, label, source) values (842, 'HEDLEY', 'cris'); +insert into lookups.city (id, label, source) values (843, 'HEDWIG VILLAGE', 'cris'); +insert into lookups.city (id, label, source) values (844, 'HEIDELBERG', 'cris'); +insert into lookups.city (id, label, source) values (845, 'HEMPHILL', 'cris'); +insert into lookups.city (id, label, source) values (846, 'HERMLEIGH', 'cris'); +insert into lookups.city (id, label, source) values (847, 'HICKORY CREEK', 'cris'); +insert into lookups.city (id, label, source) values (848, 'HICO', 'cris'); +insert into lookups.city (id, label, source) values (849, 'HIGGINS', 'cris'); +insert into lookups.city (id, label, source) values (851, 'HIGHLANDS', 'cris'); +insert into lookups.city (id, label, source) values (852, 'HILL COUNTRY VILLAGE', 'cris'); +insert into lookups.city (id, label, source) values (855, 'HILSHIRE VILLAGE', 'cris'); +insert into lookups.city (id, label, source) values (856, 'HOLIDAY LAKES', 'cris'); +insert into lookups.city (id, label, source) values (857, 'HOLLAND', 'cris'); +insert into lookups.city (id, label, source) values (858, 'HOLLIDAY', 'cris'); +insert into lookups.city (id, label, source) values (861, 'HONEY GROVE', 'cris'); +insert into lookups.city (id, label, source) values (862, 'HORSESHOE BAY', 'cris'); +insert into lookups.city (id, label, source) values (863, 'HOWARDWICK', 'cris'); +insert into lookups.city (id, label, source) values (864, 'HUBBARD', 'cris'); +insert into lookups.city (id, label, source) values (866, 'HUDSON OAKS', 'cris'); +insert into lookups.city (id, label, source) values (867, 'HUGHES SPRINGS', 'cris'); +insert into lookups.city (id, label, source) values (868, 'HUNGERFORD', 'cris'); +insert into lookups.city (id, label, source) values (869, 'HUNTINGTON', 'cris'); +insert into lookups.city (id, label, source) values (870, 'HUTTO', 'cris'); +insert into lookups.city (id, label, source) values (871, 'HUXLEY', 'cris'); +insert into lookups.city (id, label, source) values (872, 'IDALOU', 'cris'); +insert into lookups.city (id, label, source) values (873, 'IMPACT', 'cris'); +insert into lookups.city (id, label, source) values (874, 'IMPERIAL', 'cris'); +insert into lookups.city (id, label, source) values (876, 'INDIAN LAKE', 'cris'); +insert into lookups.city (id, label, source) values (877, 'INDUSTRY', 'cris'); +insert into lookups.city (id, label, source) values (878, 'INEZ', 'cris'); +insert into lookups.city (id, label, source) values (879, 'INGLESIDE ON THE BAY', 'cris'); +insert into lookups.city (id, label, source) values (880, 'INGRAM', 'cris'); +insert into lookups.city (id, label, source) values (881, 'IOWA COLONY', 'cris'); +insert into lookups.city (id, label, source) values (882, 'IRAAN', 'cris'); +insert into lookups.city (id, label, source) values (883, 'IREDELL', 'cris'); +insert into lookups.city (id, label, source) values (884, 'ITALY', 'cris'); +insert into lookups.city (id, label, source) values (885, 'ITASCA', 'cris'); +insert into lookups.city (id, label, source) values (886, 'JAMAICA BEACH', 'cris'); +insert into lookups.city (id, label, source) values (887, 'JAYTON', 'cris'); +insert into lookups.city (id, label, source) values (888, 'JEFFERSON', 'cris'); +insert into lookups.city (id, label, source) values (889, 'JEWETT', 'cris'); +insert into lookups.city (id, label, source) values (890, 'JOAQUIN', 'cris'); +insert into lookups.city (id, label, source) values (891, 'JOHNSON CITY', 'cris'); +insert into lookups.city (id, label, source) values (892, 'JOLLY', 'cris'); +insert into lookups.city (id, label, source) values (894, 'JONES CREEK', 'cris'); +insert into lookups.city (id, label, source) values (895, 'JONESTOWN', 'cris'); +insert into lookups.city (id, label, source) values (896, 'JOSEPHINE', 'cris'); +insert into lookups.city (id, label, source) values (897, 'JUSTIN', 'cris'); +insert into lookups.city (id, label, source) values (899, 'KEMAH', 'cris'); +insert into lookups.city (id, label, source) values (900, 'KEMP', 'cris'); +insert into lookups.city (id, label, source) values (901, 'KEMPNER', 'cris'); +insert into lookups.city (id, label, source) values (902, 'KENDLETON', 'cris'); +insert into lookups.city (id, label, source) values (903, 'KENEDY', 'cris'); +insert into lookups.city (id, label, source) values (904, 'KENEFICK', 'cris'); +insert into lookups.city (id, label, source) values (905, 'KENNARD', 'cris'); +insert into lookups.city (id, label, source) values (906, 'KERENS', 'cris'); +insert into lookups.city (id, label, source) values (907, 'KINGSBURY', 'cris'); +insert into lookups.city (id, label, source) values (908, 'KINGSLAND', 'cris'); +insert into lookups.city (id, label, source) values (909, 'KIRBYVILLE', 'cris'); +insert into lookups.city (id, label, source) values (910, 'KIRVIN', 'cris'); +insert into lookups.city (id, label, source) values (911, 'KNIPPA', 'cris'); +insert into lookups.city (id, label, source) values (912, 'KNOLLWOOD', 'cris'); +insert into lookups.city (id, label, source) values (913, 'KNOX CITY', 'cris'); +insert into lookups.city (id, label, source) values (914, 'KOSSE', 'cris'); +insert into lookups.city (id, label, source) values (915, 'KOUNTZE', 'cris'); +insert into lookups.city (id, label, source) values (916, 'KRESS', 'cris'); +insert into lookups.city (id, label, source) values (917, 'KRUGERVILLE', 'cris'); +insert into lookups.city (id, label, source) values (918, 'KRUM', 'cris'); +insert into lookups.city (id, label, source) values (919, 'LA BLANCA', 'cris'); +insert into lookups.city (id, label, source) values (922, 'LA GRULLA', 'cris'); +insert into lookups.city (id, label, source) values (924, 'LA PALOMA', 'cris'); +insert into lookups.city (id, label, source) values (927, 'LA PRYOR', 'cris'); +insert into lookups.city (id, label, source) values (928, 'LA PUERTA', 'cris'); +insert into lookups.city (id, label, source) values (930, 'LA VERNIA', 'cris'); +insert into lookups.city (id, label, source) values (932, 'LA VILLA', 'cris'); +insert into lookups.city (id, label, source) values (933, 'LA WARD', 'cris'); +insert into lookups.city (id, label, source) values (936, 'LADONIA', 'cris'); +insert into lookups.city (id, label, source) values (938, 'LAGUNA HEIGHTS', 'cris'); +insert into lookups.city (id, label, source) values (940, 'LAGUNA VISTA', 'cris'); +insert into lookups.city (id, label, source) values (941, 'LAKE BRIDGEPORT', 'cris'); +insert into lookups.city (id, label, source) values (943, 'LAKE CITY', 'cris'); +insert into lookups.city (id, label, source) values (944, 'LAKE KIOWA', 'cris'); +insert into lookups.city (id, label, source) values (945, 'LAKE TANGLEWOOD', 'cris'); +insert into lookups.city (id, label, source) values (947, 'LAKEHILLS', 'cris'); +insert into lookups.city (id, label, source) values (948, 'LAKEPORT', 'cris'); +insert into lookups.city (id, label, source) values (950, 'LAKESIDE', 'cris'); +insert into lookups.city (id, label, source) values (951, 'LAKESIDE CITY', 'cris'); +insert into lookups.city (id, label, source) values (952, 'LAKEVIEW', 'cris'); +insert into lookups.city (id, label, source) values (953, 'LAKEWOOD VILLAGE', 'cris'); +insert into lookups.city (id, label, source) values (962, 'LASARA', 'cris'); +insert into lookups.city (id, label, source) values (963, 'LATEXO', 'cris'); +insert into lookups.city (id, label, source) values (965, 'LAURELES', 'cris'); +insert into lookups.city (id, label, source) values (966, 'LAVON', 'cris'); +insert into lookups.city (id, label, source) values (967, 'LAWN', 'cris'); +insert into lookups.city (id, label, source) values (968, 'LEAKEY', 'cris'); +insert into lookups.city (id, label, source) values (969, 'LEARY', 'cris'); +insert into lookups.city (id, label, source) values (970, 'LEFORS', 'cris'); +insert into lookups.city (id, label, source) values (971, 'LEONA', 'cris'); +insert into lookups.city (id, label, source) values (972, 'LEONARD', 'cris'); +insert into lookups.city (id, label, source) values (973, 'LEROY', 'cris'); +insert into lookups.city (id, label, source) values (974, 'LEXINGTON', 'cris'); +insert into lookups.city (id, label, source) values (975, 'LIBERTY CITY', 'cris'); +insert into lookups.city (id, label, source) values (976, 'LIBERTY HILL', 'cris'); +insert into lookups.city (id, label, source) values (977, 'LINCOLN PARK', 'cris'); +insert into lookups.city (id, label, source) values (978, 'LINDEN', 'cris'); +insert into lookups.city (id, label, source) values (979, 'LINDSAY', 'cris'); +insert into lookups.city (id, label, source) values (980, 'LIPAN', 'cris'); +insert into lookups.city (id, label, source) values (981, 'LIPSCOMB', 'cris'); +insert into lookups.city (id, label, source) values (982, 'LITTLE RIVER-ACADEMY', 'cris'); +insert into lookups.city (id, label, source) values (983, 'LIVERPOOL', 'cris'); +insert into lookups.city (id, label, source) values (985, 'LOCKNEY', 'cris'); +insert into lookups.city (id, label, source) values (986, 'LOG CABIN', 'cris'); +insert into lookups.city (id, label, source) values (987, 'LOLITA', 'cris'); +insert into lookups.city (id, label, source) values (989, 'LOMETA', 'cris'); +insert into lookups.city (id, label, source) values (990, 'LONE OAK', 'cris'); +insert into lookups.city (id, label, source) values (991, 'LONE STAR', 'cris'); +insert into lookups.city (id, label, source) values (992, 'LOPENO', 'cris'); +insert into lookups.city (id, label, source) values (993, 'LOPEZVILLE', 'cris'); +insert into lookups.city (id, label, source) values (994, 'LORAINE', 'cris'); +insert into lookups.city (id, label, source) values (995, 'LORENA', 'cris'); +insert into lookups.city (id, label, source) values (996, 'LORENZO', 'cris'); +insert into lookups.city (id, label, source) values (998, 'LOS ANGELES', 'cris'); +insert into lookups.city (id, label, source) values (999, 'LOS EBANOS', 'cris'); +insert into lookups.city (id, label, source) values (1000, 'LOS INDIOS', 'cris'); +insert into lookups.city (id, label, source) values (1002, 'LOS YBANEZ', 'cris'); +insert into lookups.city (id, label, source) values (1004, 'LOTT', 'cris'); +insert into lookups.city (id, label, source) values (1005, 'LOUISE', 'cris'); +insert into lookups.city (id, label, source) values (1006, 'LOVELADY', 'cris'); +insert into lookups.city (id, label, source) values (1007, 'LOWRY CROSSING', 'cris'); +insert into lookups.city (id, label, source) values (1008, 'LOZANO', 'cris'); +insert into lookups.city (id, label, source) values (1009, 'LUEDERS', 'cris'); +insert into lookups.city (id, label, source) values (1010, 'LYFORD', 'cris'); +insert into lookups.city (id, label, source) values (1012, 'MABANK', 'cris'); +insert into lookups.city (id, label, source) values (1013, 'MAGNOLIA', 'cris'); +insert into lookups.city (id, label, source) values (1014, 'MALAKOFF', 'cris'); +insert into lookups.city (id, label, source) values (1015, 'MALONE', 'cris'); +insert into lookups.city (id, label, source) values (1016, 'MANOR', 'cris'); +insert into lookups.city (id, label, source) values (1017, 'MARATHON', 'cris'); +insert into lookups.city (id, label, source) values (1018, 'MARFA', 'cris'); +insert into lookups.city (id, label, source) values (1019, 'MARIETTA', 'cris'); +insert into lookups.city (id, label, source) values (1020, 'MARION', 'cris'); +insert into lookups.city (id, label, source) values (1021, 'MARKHAM', 'cris'); +insert into lookups.city (id, label, source) values (1022, 'MARQUEZ', 'cris'); +insert into lookups.city (id, label, source) values (1023, 'MARSHALL CREEK', 'cris'); +insert into lookups.city (id, label, source) values (1024, 'MART', 'cris'); +insert into lookups.city (id, label, source) values (1025, 'MARTINDALE', 'cris'); +insert into lookups.city (id, label, source) values (1026, 'MASON', 'cris'); +insert into lookups.city (id, label, source) values (1027, 'MATADOR', 'cris'); +insert into lookups.city (id, label, source) values (1028, 'MAUD', 'cris'); +insert into lookups.city (id, label, source) values (1029, 'MAURICEVILLE', 'cris'); +insert into lookups.city (id, label, source) values (1030, 'MAYPEARL', 'cris'); +insert into lookups.city (id, label, source) values (1031, 'MCCAMEY', 'cris'); +insert into lookups.city (id, label, source) values (1032, 'MCLEAN', 'cris'); +insert into lookups.city (id, label, source) values (1033, 'MCLENDON-CHISHOLM', 'cris'); +insert into lookups.city (id, label, source) values (1034, 'MCQUEENEY', 'cris'); +insert into lookups.city (id, label, source) values (1035, 'MEADOWLAKES', 'cris'); +insert into lookups.city (id, label, source) values (1037, 'MEDINA', 'cris'); +insert into lookups.city (id, label, source) values (1038, 'MEGARGEL', 'cris'); +insert into lookups.city (id, label, source) values (1039, 'MELISSA', 'cris'); +insert into lookups.city (id, label, source) values (1040, 'MELVIN', 'cris'); +insert into lookups.city (id, label, source) values (1041, 'MEMPHIS', 'cris'); +insert into lookups.city (id, label, source) values (1042, 'MENARD', 'cris'); +insert into lookups.city (id, label, source) values (1043, 'MERIDIAN', 'cris'); +insert into lookups.city (id, label, source) values (1044, 'MERTENS', 'cris'); +insert into lookups.city (id, label, source) values (1045, 'MERTZON', 'cris'); +insert into lookups.city (id, label, source) values (1046, 'MIAMI', 'cris'); +insert into lookups.city (id, label, source) values (1047, 'MIDWAY', 'cris'); +insert into lookups.city (id, label, source) values (1051, 'MILAM', 'cris'); +insert into lookups.city (id, label, source) values (1052, 'MILANO', 'cris'); +insert into lookups.city (id, label, source) values (1053, 'MILDRED', 'cris'); +insert into lookups.city (id, label, source) values (1054, 'MILES', 'cris'); +insert into lookups.city (id, label, source) values (1055, 'MILFORD', 'cris'); +insert into lookups.city (id, label, source) values (1056, 'MILLER''S COVE', 'cris'); +insert into lookups.city (id, label, source) values (1057, 'MILLICAN', 'cris'); +insert into lookups.city (id, label, source) values (1058, 'MILLSAP', 'cris'); +insert into lookups.city (id, label, source) values (1059, 'MINGUS', 'cris'); +insert into lookups.city (id, label, source) values (1060, 'MIRANDO CITY', 'cris'); +insert into lookups.city (id, label, source) values (1061, 'MISSION BEND', 'cris'); +insert into lookups.city (id, label, source) values (1062, 'MOBEETIE', 'cris'); +insert into lookups.city (id, label, source) values (1064, 'MONTE ALTO', 'cris'); +insert into lookups.city (id, label, source) values (1065, 'MONTGOMERY', 'cris'); +insert into lookups.city (id, label, source) values (1066, 'MOODY', 'cris'); +insert into lookups.city (id, label, source) values (1067, 'MOORE', 'cris'); +insert into lookups.city (id, label, source) values (1068, 'MOORE STATION', 'cris'); +insert into lookups.city (id, label, source) values (1070, 'MORAN', 'cris'); +insert into lookups.city (id, label, source) values (1071, 'MORGAN', 'cris'); +insert into lookups.city (id, label, source) values (1073, 'MORGAN''S POINT', 'cris'); +insert into lookups.city (id, label, source) values (1075, 'MORSE', 'cris'); +insert into lookups.city (id, label, source) values (1076, 'MORTON', 'cris'); +insert into lookups.city (id, label, source) values (1077, 'MOULTON', 'cris'); +insert into lookups.city (id, label, source) values (1078, 'MOUNT CALM', 'cris'); +insert into lookups.city (id, label, source) values (1079, 'MOUNT ENTERPRISE', 'cris'); +insert into lookups.city (id, label, source) values (1080, 'MOUNT VERNON', 'cris'); +insert into lookups.city (id, label, source) values (1081, 'MOUNTAIN CITY', 'cris'); +insert into lookups.city (id, label, source) values (1082, 'MUENSTER', 'cris'); +insert into lookups.city (id, label, source) values (1083, 'MULLIN', 'cris'); +insert into lookups.city (id, label, source) values (1084, 'MUNDAY', 'cris'); +insert into lookups.city (id, label, source) values (1086, 'MURCHISON', 'cris'); +insert into lookups.city (id, label, source) values (1088, 'MUSTANG RIDGE', 'cris'); +insert into lookups.city (id, label, source) values (1089, 'NAPLES', 'cris'); +insert into lookups.city (id, label, source) values (1090, 'NASH', 'cris'); +insert into lookups.city (id, label, source) values (1091, 'NATALIA', 'cris'); +insert into lookups.city (id, label, source) values (1092, 'NAVARRO', 'cris'); +insert into lookups.city (id, label, source) values (1093, 'NAZARETH', 'cris'); +insert into lookups.city (id, label, source) values (1094, 'NESBITT', 'cris'); +insert into lookups.city (id, label, source) values (1095, 'NEVADA', 'cris'); +insert into lookups.city (id, label, source) values (1096, 'NEW BERLIN', 'cris'); +insert into lookups.city (id, label, source) values (1097, 'NEW CHAPEL HILL', 'cris'); +insert into lookups.city (id, label, source) values (1098, 'NEW DEAL', 'cris'); +insert into lookups.city (id, label, source) values (1101, 'NEW HOME', 'cris'); +insert into lookups.city (id, label, source) values (1102, 'NEW HOPE', 'cris'); +insert into lookups.city (id, label, source) values (1103, 'NEW LONDON', 'cris'); +insert into lookups.city (id, label, source) values (1104, 'NEW SUMMERFIELD', 'cris'); +insert into lookups.city (id, label, source) values (1106, 'NEW WAVERLY', 'cris'); +insert into lookups.city (id, label, source) values (1107, 'NEWARK', 'cris'); +insert into lookups.city (id, label, source) values (1108, 'NEWCASTLE', 'cris'); +insert into lookups.city (id, label, source) values (1109, 'NEWTON', 'cris'); +insert into lookups.city (id, label, source) values (1110, 'NEYLANDVILLE', 'cris'); +insert into lookups.city (id, label, source) values (1111, 'NIEDERWALD', 'cris'); +insert into lookups.city (id, label, source) values (1112, 'NIXON', 'cris'); +insert into lookups.city (id, label, source) values (1113, 'NOME', 'cris'); +insert into lookups.city (id, label, source) values (1114, 'NOONDAY', 'cris'); +insert into lookups.city (id, label, source) values (1115, 'NORDHEIM', 'cris'); +insert into lookups.city (id, label, source) values (1116, 'NORMANGEE', 'cris'); +insert into lookups.city (id, label, source) values (1117, 'NORMANNA', 'cris'); +insert into lookups.city (id, label, source) values (1119, 'NORTH CLEVELAND', 'cris'); +insert into lookups.city (id, label, source) values (1124, 'NORTHLAKE', 'cris'); +insert into lookups.city (id, label, source) values (1125, 'NOVICE', 'cris'); +insert into lookups.city (id, label, source) values (1127, 'OAK GROVE', 'cris'); +insert into lookups.city (id, label, source) values (1129, 'OAK POINT', 'cris'); +insert into lookups.city (id, label, source) values (1130, 'OAK RIDGE', 'cris'); +insert into lookups.city (id, label, source) values (1131, 'OAK TRAIL SHORES', 'cris'); +insert into lookups.city (id, label, source) values (1132, 'OAK VALLEY', 'cris'); +insert into lookups.city (id, label, source) values (1133, 'OAKHURST', 'cris'); +insert into lookups.city (id, label, source) values (1134, 'OAKWOOD', 'cris'); +insert into lookups.city (id, label, source) values (1135, 'O''BRIEN', 'cris'); +insert into lookups.city (id, label, source) values (1136, 'O''DONNELL', 'cris'); +insert into lookups.city (id, label, source) values (1137, 'OGLESBY', 'cris'); +insert into lookups.city (id, label, source) values (1138, 'OILTON', 'cris'); +insert into lookups.city (id, label, source) values (1139, 'OLD RIVER-WINFREE', 'cris'); +insert into lookups.city (id, label, source) values (1141, 'OLMITO', 'cris'); +insert into lookups.city (id, label, source) values (1142, 'OLMOS PARK', 'cris'); +insert into lookups.city (id, label, source) values (1143, 'OLTON', 'cris'); +insert into lookups.city (id, label, source) values (1144, 'OMAHA', 'cris'); +insert into lookups.city (id, label, source) values (1145, 'ONALASKA', 'cris'); +insert into lookups.city (id, label, source) values (1147, 'OPDYKE WEST', 'cris'); +insert into lookups.city (id, label, source) values (1148, 'ORANGE GROVE', 'cris'); +insert into lookups.city (id, label, source) values (1149, 'ORCHARD', 'cris'); +insert into lookups.city (id, label, source) values (1150, 'ORE CITY', 'cris'); +insert into lookups.city (id, label, source) values (1151, 'OVERTON', 'cris'); +insert into lookups.city (id, label, source) values (1153, 'OYSTER CREEK', 'cris'); +insert into lookups.city (id, label, source) values (1154, 'OZONA', 'cris'); +insert into lookups.city (id, label, source) values (1155, 'PADUCAH', 'cris'); +insert into lookups.city (id, label, source) values (1156, 'PAINT ROCK', 'cris'); +insert into lookups.city (id, label, source) values (1158, 'PALM VALLEY', 'cris'); +insert into lookups.city (id, label, source) values (1159, 'PALMER', 'cris'); +insert into lookups.city (id, label, source) values (1160, 'PALMHURST', 'cris'); +insert into lookups.city (id, label, source) values (1162, 'PANORAMA VILLAGE', 'cris'); +insert into lookups.city (id, label, source) values (1163, 'PANTEGO', 'cris'); +insert into lookups.city (id, label, source) values (1164, 'PARADISE', 'cris'); +insert into lookups.city (id, label, source) values (1165, 'PARKER', 'cris'); +insert into lookups.city (id, label, source) values (1166, 'PATTISON', 'cris'); +insert into lookups.city (id, label, source) values (1167, 'PATTON VILLAGE', 'cris'); +insert into lookups.city (id, label, source) values (1168, 'PAWNEE', 'cris'); +insert into lookups.city (id, label, source) values (1169, 'PAYNE SPRINGS', 'cris'); +insert into lookups.city (id, label, source) values (1171, 'PECAN GAP', 'cris'); +insert into lookups.city (id, label, source) values (1173, 'PECAN HILL', 'cris'); +insert into lookups.city (id, label, source) values (1175, 'PELICAN BAY', 'cris'); +insert into lookups.city (id, label, source) values (1176, 'PENELOPE', 'cris'); +insert into lookups.city (id, label, source) values (1177, 'PENITAS', 'cris'); +insert into lookups.city (id, label, source) values (1178, 'PERNITAS POINT', 'cris'); +insert into lookups.city (id, label, source) values (1179, 'PETERSBURG', 'cris'); +insert into lookups.city (id, label, source) values (1180, 'PETROLIA', 'cris'); +insert into lookups.city (id, label, source) values (1181, 'PETRONILA', 'cris'); +insert into lookups.city (id, label, source) values (1182, 'PETTUS', 'cris'); +insert into lookups.city (id, label, source) values (1183, 'PINE FOREST', 'cris'); +insert into lookups.city (id, label, source) values (1184, 'PINE ISLAND', 'cris'); +insert into lookups.city (id, label, source) values (1185, 'PINEHURST', 'cris'); +insert into lookups.city (id, label, source) values (1186, 'PINELAND', 'cris'); +insert into lookups.city (id, label, source) values (1188, 'PLAINS', 'cris'); +insert into lookups.city (id, label, source) values (1189, 'PLEAK', 'cris'); +insert into lookups.city (id, label, source) values (1190, 'PLEASANT VALLEY', 'cris'); +insert into lookups.city (id, label, source) values (1191, 'PLUM GROVE', 'cris'); +insert into lookups.city (id, label, source) values (1192, 'POINT', 'cris'); +insert into lookups.city (id, label, source) values (1193, 'POINT BLANK', 'cris'); +insert into lookups.city (id, label, source) values (1194, 'POINT COMFORT', 'cris'); +insert into lookups.city (id, label, source) values (1195, 'PONDER', 'cris'); +insert into lookups.city (id, label, source) values (1196, 'PORT MANSFIELD', 'cris'); +insert into lookups.city (id, label, source) values (1197, 'PORTER HEIGHTS', 'cris'); +insert into lookups.city (id, label, source) values (1199, 'POTH', 'cris'); +insert into lookups.city (id, label, source) values (1200, 'POTOSI', 'cris'); +insert into lookups.city (id, label, source) values (1201, 'POTTSBORO', 'cris'); +insert into lookups.city (id, label, source) values (1202, 'POWELL', 'cris'); +insert into lookups.city (id, label, source) values (1203, 'POYNOR', 'cris'); +insert into lookups.city (id, label, source) values (1205, 'PROGRESO LAKES', 'cris'); +insert into lookups.city (id, label, source) values (1206, 'PROSPER', 'cris'); +insert into lookups.city (id, label, source) values (1207, 'PUTNAM', 'cris'); +insert into lookups.city (id, label, source) values (1208, 'PYOTE', 'cris'); +insert into lookups.city (id, label, source) values (1211, 'QUEMADO', 'cris'); +insert into lookups.city (id, label, source) values (1212, 'QUINLAN', 'cris'); +insert into lookups.city (id, label, source) values (1213, 'QUINTANA', 'cris'); +insert into lookups.city (id, label, source) values (1214, 'QUITAQUE', 'cris'); +insert into lookups.city (id, label, source) values (1215, 'QUITMAN', 'cris'); +insert into lookups.city (id, label, source) values (1217, 'RALLS', 'cris'); +insert into lookups.city (id, label, source) values (1223, 'RANCHO VIEJO', 'cris'); +insert into lookups.city (id, label, source) values (1225, 'RANGERVILLE', 'cris'); +insert into lookups.city (id, label, source) values (1226, 'RANKIN', 'cris'); +insert into lookups.city (id, label, source) values (1227, 'RANSOM CANYON', 'cris'); +insert into lookups.city (id, label, source) values (1229, 'RAVENNA', 'cris'); +insert into lookups.city (id, label, source) values (1230, 'REALITOS', 'cris'); +insert into lookups.city (id, label, source) values (1231, 'RED LICK', 'cris'); +insert into lookups.city (id, label, source) values (1232, 'REDFORD', 'cris'); +insert into lookups.city (id, label, source) values (1233, 'REDWATER', 'cris'); +insert into lookups.city (id, label, source) values (1234, 'REDWOOD', 'cris'); +insert into lookups.city (id, label, source) values (1237, 'REKLAW', 'cris'); +insert into lookups.city (id, label, source) values (1239, 'RENDON', 'cris'); +insert into lookups.city (id, label, source) values (1240, 'RENO', 'cris'); +insert into lookups.city (id, label, source) values (1241, 'RETREAT', 'cris'); +insert into lookups.city (id, label, source) values (1242, 'RHOME', 'cris'); +insert into lookups.city (id, label, source) values (1243, 'RICE', 'cris'); +insert into lookups.city (id, label, source) values (1244, 'RICHLAND', 'cris'); +insert into lookups.city (id, label, source) values (1245, 'RICHLAND SPRINGS', 'cris'); +insert into lookups.city (id, label, source) values (1246, 'RIESEL', 'cris'); +insert into lookups.city (id, label, source) values (1247, 'RIO HONDO', 'cris'); +insert into lookups.city (id, label, source) values (1248, 'RIO VISTA', 'cris'); +insert into lookups.city (id, label, source) values (1249, 'RISING STAR', 'cris'); +insert into lookups.city (id, label, source) values (1250, 'RIVERSIDE', 'cris'); +insert into lookups.city (id, label, source) values (1251, 'ROARING SPRINGS', 'cris'); +insert into lookups.city (id, label, source) values (1252, 'ROBERT LEE', 'cris'); +insert into lookups.city (id, label, source) values (1253, 'ROBY', 'cris'); +insert into lookups.city (id, label, source) values (1254, 'ROCHESTER', 'cris'); +insert into lookups.city (id, label, source) values (1255, 'ROCKSPRINGS', 'cris'); +insert into lookups.city (id, label, source) values (1256, 'ROCKY MOUND', 'cris'); +insert into lookups.city (id, label, source) values (1257, 'ROGERS', 'cris'); +insert into lookups.city (id, label, source) values (1258, 'ROLLINGWOOD', 'cris'); +insert into lookups.city (id, label, source) values (1260, 'ROMAN FOREST', 'cris'); +insert into lookups.city (id, label, source) values (1261, 'ROPESVILLE', 'cris'); +insert into lookups.city (id, label, source) values (1262, 'ROSCOE', 'cris'); +insert into lookups.city (id, label, source) values (1263, 'ROSE CITY', 'cris'); +insert into lookups.city (id, label, source) values (1264, 'ROSE HILL ACRES', 'cris'); +insert into lookups.city (id, label, source) values (1265, 'ROSEBUD', 'cris'); +insert into lookups.city (id, label, source) values (1268, 'ROSS', 'cris'); +insert into lookups.city (id, label, source) values (1269, 'ROSSER', 'cris'); +insert into lookups.city (id, label, source) values (1270, 'ROTAN', 'cris'); +insert into lookups.city (id, label, source) values (1271, 'ROUND MOUNTAIN', 'cris'); +insert into lookups.city (id, label, source) values (1272, 'ROUND TOP', 'cris'); +insert into lookups.city (id, label, source) values (1273, 'ROXTON', 'cris'); +insert into lookups.city (id, label, source) values (1274, 'RULE', 'cris'); +insert into lookups.city (id, label, source) values (1275, 'RUNAWAY BAY', 'cris'); +insert into lookups.city (id, label, source) values (1276, 'RUNGE', 'cris'); +insert into lookups.city (id, label, source) values (1277, 'SABINAL', 'cris'); +insert into lookups.city (id, label, source) values (1278, 'SADLER', 'cris'); +insert into lookups.city (id, label, source) values (1279, 'SALADO', 'cris'); +insert into lookups.city (id, label, source) values (1282, 'SAN AUGUSTINE', 'cris'); +insert into lookups.city (id, label, source) values (1283, 'SAN CARLOS', 'cris'); +insert into lookups.city (id, label, source) values (1284, 'SAN ELIZARIO', 'cris'); +insert into lookups.city (id, label, source) values (1285, 'SAN FELIPE', 'cris'); +insert into lookups.city (id, label, source) values (1287, 'SAN ISIDRO', 'cris'); +insert into lookups.city (id, label, source) values (1288, 'SAN LEANNA', 'cris'); +insert into lookups.city (id, label, source) values (1289, 'SAN LEON', 'cris'); +insert into lookups.city (id, label, source) values (1291, 'SAN PATRICIO', 'cris'); +insert into lookups.city (id, label, source) values (1292, 'SAN PEDRO', 'cris'); +insert into lookups.city (id, label, source) values (1293, 'SAN PERLITA', 'cris'); +insert into lookups.city (id, label, source) values (1295, 'SANDERSON', 'cris'); +insert into lookups.city (id, label, source) values (1296, 'SANDIA', 'cris'); +insert into lookups.city (id, label, source) values (1298, 'SANFORD', 'cris'); +insert into lookups.city (id, label, source) values (1299, 'SANTA ANNA', 'cris'); +insert into lookups.city (id, label, source) values (1301, 'SANTA CRUZ', 'cris'); +insert into lookups.city (id, label, source) values (1302, 'SANTA MARIA', 'cris'); +insert into lookups.city (id, label, source) values (1303, 'SANTA MONICA', 'cris'); +insert into lookups.city (id, label, source) values (1304, 'SAVOY', 'cris'); +insert into lookups.city (id, label, source) values (1305, 'SCENIC OAKS', 'cris'); +insert into lookups.city (id, label, source) values (1307, 'SCOTLAND', 'cris'); +insert into lookups.city (id, label, source) values (1308, 'SCOTTSVILLE', 'cris'); +insert into lookups.city (id, label, source) values (1309, 'SEADRIFT', 'cris'); +insert into lookups.city (id, label, source) values (1310, 'SEAGRAVES', 'cris'); +insert into lookups.city (id, label, source) values (1311, 'SEBASTIAN', 'cris'); +insert into lookups.city (id, label, source) values (1312, 'SELMA', 'cris'); +insert into lookups.city (id, label, source) values (1315, 'SEVEN OAKS', 'cris'); +insert into lookups.city (id, label, source) values (1316, 'SEVEN POINTS', 'cris'); +insert into lookups.city (id, label, source) values (1318, 'SHADY SHORES', 'cris'); +insert into lookups.city (id, label, source) values (1319, 'SHALLOWATER', 'cris'); +insert into lookups.city (id, label, source) values (1320, 'SHAMROCK', 'cris'); +insert into lookups.city (id, label, source) values (1321, 'SHAVANO PARK', 'cris'); +insert into lookups.city (id, label, source) values (1322, 'SHELDON', 'cris'); +insert into lookups.city (id, label, source) values (1323, 'SHENANDOAH', 'cris'); +insert into lookups.city (id, label, source) values (1324, 'SHEPHERD', 'cris'); +insert into lookups.city (id, label, source) values (1325, 'SHINER', 'cris'); +insert into lookups.city (id, label, source) values (1326, 'SHOREACRES', 'cris'); +insert into lookups.city (id, label, source) values (1328, 'SIERRA BLANCA', 'cris'); +insert into lookups.city (id, label, source) values (1330, 'SILVERTON', 'cris'); +insert into lookups.city (id, label, source) values (1331, 'SIMONTON', 'cris'); +insert into lookups.city (id, label, source) values (1332, 'SKELLYTOWN', 'cris'); +insert into lookups.city (id, label, source) values (1333, 'SKIDMORE', 'cris'); +insert into lookups.city (id, label, source) values (1334, 'SMILEY', 'cris'); +insert into lookups.city (id, label, source) values (1335, 'SMYER', 'cris'); +insert into lookups.city (id, label, source) values (1336, 'SNOOK', 'cris'); +insert into lookups.city (id, label, source) values (1338, 'SOMERSET', 'cris'); +insert into lookups.city (id, label, source) values (1339, 'SOMERVILLE', 'cris'); +insert into lookups.city (id, label, source) values (1340, 'SOUR LAKE', 'cris'); +insert into lookups.city (id, label, source) values (1343, 'SOUTH MOUNTAIN', 'cris'); +insert into lookups.city (id, label, source) values (1344, 'SOUTH PADRE ISLAND', 'cris'); +insert into lookups.city (id, label, source) values (1347, 'SOUTHMAYD', 'cris'); +insert into lookups.city (id, label, source) values (1348, 'SOUTHSIDE PLACE', 'cris'); +insert into lookups.city (id, label, source) values (1349, 'SPADE', 'cris'); +insert into lookups.city (id, label, source) values (1351, 'SPLENDORA', 'cris'); +insert into lookups.city (id, label, source) values (1352, 'SPOFFORD', 'cris'); +insert into lookups.city (id, label, source) values (1353, 'SPRING', 'cris'); +insert into lookups.city (id, label, source) values (1355, 'SPRINGLAKE', 'cris'); +insert into lookups.city (id, label, source) values (1356, 'SPRINGTOWN', 'cris'); +insert into lookups.city (id, label, source) values (1357, 'SPUR', 'cris'); +insert into lookups.city (id, label, source) values (1358, 'ST. HEDWIG', 'cris'); +insert into lookups.city (id, label, source) values (1361, 'STAGECOACH', 'cris'); +insert into lookups.city (id, label, source) values (1362, 'STAR HARBOR', 'cris'); +insert into lookups.city (id, label, source) values (1363, 'STERLING CITY', 'cris'); +insert into lookups.city (id, label, source) values (1364, 'STINNETT', 'cris'); +insert into lookups.city (id, label, source) values (1365, 'STOCKDALE', 'cris'); +insert into lookups.city (id, label, source) values (1366, 'STONEWALL', 'cris'); +insert into lookups.city (id, label, source) values (1367, 'STOWELL', 'cris'); +insert into lookups.city (id, label, source) values (1368, 'STRATFORD', 'cris'); +insert into lookups.city (id, label, source) values (1369, 'STRAWN', 'cris'); +insert into lookups.city (id, label, source) values (1370, 'STREETMAN', 'cris'); +insert into lookups.city (id, label, source) values (1371, 'STUDY BUTTE-TERLINGUA', 'cris'); +insert into lookups.city (id, label, source) values (1372, 'SUDAN', 'cris'); +insert into lookups.city (id, label, source) values (1373, 'SUN VALLEY', 'cris'); +insert into lookups.city (id, label, source) values (1374, 'SUNDOWN', 'cris'); +insert into lookups.city (id, label, source) values (1375, 'SUNRAY', 'cris'); +insert into lookups.city (id, label, source) values (1376, 'SUNRISE BEACH VILLAGE', 'cris'); +insert into lookups.city (id, label, source) values (1377, 'SUNSET', 'cris'); +insert into lookups.city (id, label, source) values (1378, 'SUNSET VALLEY', 'cris'); +insert into lookups.city (id, label, source) values (1379, 'SURFSIDE BEACH', 'cris'); +insert into lookups.city (id, label, source) values (1381, 'TALCO', 'cris'); +insert into lookups.city (id, label, source) values (1382, 'TALTY', 'cris'); +insert into lookups.city (id, label, source) values (1383, 'TATUM', 'cris'); +insert into lookups.city (id, label, source) values (1384, 'TEHUACANA', 'cris'); +insert into lookups.city (id, label, source) values (1385, 'TENAHA', 'cris'); +insert into lookups.city (id, label, source) values (1386, 'TEXHOMA', 'cris'); +insert into lookups.city (id, label, source) values (1387, 'TEXLINE', 'cris'); +insert into lookups.city (id, label, source) values (1388, 'VILLAGE OF THE HILLS', 'cris'); +insert into lookups.city (id, label, source) values (1389, 'THE WOODLANDS', 'cris'); +insert into lookups.city (id, label, source) values (1390, 'THOMPSONS', 'cris'); +insert into lookups.city (id, label, source) values (1391, 'THORNDALE', 'cris'); +insert into lookups.city (id, label, source) values (1392, 'THORNTON', 'cris'); +insert into lookups.city (id, label, source) values (1393, 'THORNTONVILLE', 'cris'); +insert into lookups.city (id, label, source) values (1394, 'THRALL', 'cris'); +insert into lookups.city (id, label, source) values (1395, 'THREE RIVERS', 'cris'); +insert into lookups.city (id, label, source) values (1396, 'THROCKMORTON', 'cris'); +insert into lookups.city (id, label, source) values (1399, 'TIKI ISLAND', 'cris'); +insert into lookups.city (id, label, source) values (1400, 'TIMBERCREEK CANYON', 'cris'); +insert into lookups.city (id, label, source) values (1402, 'TIMPSON', 'cris'); +insert into lookups.city (id, label, source) values (1403, 'TIOGA', 'cris'); +insert into lookups.city (id, label, source) values (1404, 'TIRA', 'cris'); +insert into lookups.city (id, label, source) values (1405, 'TOCO', 'cris'); +insert into lookups.city (id, label, source) values (1406, 'TODD MISSION', 'cris'); +insert into lookups.city (id, label, source) values (1407, 'TOLAR', 'cris'); +insert into lookups.city (id, label, source) values (1408, 'TOM BEAN', 'cris'); +insert into lookups.city (id, label, source) values (1409, 'TOOL', 'cris'); +insert into lookups.city (id, label, source) values (1410, 'TORNILLO', 'cris'); +insert into lookups.city (id, label, source) values (1411, 'TOYAH', 'cris'); +insert into lookups.city (id, label, source) values (1413, 'TRENT', 'cris'); +insert into lookups.city (id, label, source) values (1414, 'TRENTON', 'cris'); +insert into lookups.city (id, label, source) values (1415, 'TRINIDAD', 'cris'); +insert into lookups.city (id, label, source) values (1416, 'TROUP', 'cris'); +insert into lookups.city (id, label, source) values (1417, 'TROY', 'cris'); +insert into lookups.city (id, label, source) values (1418, 'TULETA', 'cris'); +insert into lookups.city (id, label, source) values (1419, 'TULSITA', 'cris'); +insert into lookups.city (id, label, source) values (1420, 'TURKEY', 'cris'); +insert into lookups.city (id, label, source) values (1421, 'TUSCOLA', 'cris'); +insert into lookups.city (id, label, source) values (1422, 'TYE', 'cris'); +insert into lookups.city (id, label, source) values (1423, 'TYNAN', 'cris'); +insert into lookups.city (id, label, source) values (1424, 'UHLAND', 'cris'); +insert into lookups.city (id, label, source) values (1425, 'UNCERTAIN', 'cris'); +insert into lookups.city (id, label, source) values (1426, 'UNION GROVE', 'cris'); +insert into lookups.city (id, label, source) values (1427, 'UTOPIA', 'cris'); +insert into lookups.city (id, label, source) values (1430, 'VALENTINE', 'cris'); +insert into lookups.city (id, label, source) values (1431, 'VALLEY MILLS', 'cris'); +insert into lookups.city (id, label, source) values (1432, 'VALLEY VIEW', 'cris'); +insert into lookups.city (id, label, source) values (1433, 'VAN', 'cris'); +insert into lookups.city (id, label, source) values (1434, 'VAN HORN', 'cris'); +insert into lookups.city (id, label, source) values (1435, 'VAN VLECK', 'cris'); +insert into lookups.city (id, label, source) values (1436, 'VANDERBILT', 'cris'); +insert into lookups.city (id, label, source) values (1437, 'VEGA', 'cris'); +insert into lookups.city (id, label, source) values (1438, 'VENUS', 'cris'); +insert into lookups.city (id, label, source) values (1442, 'VINTON', 'cris'); +insert into lookups.city (id, label, source) values (1443, 'WAELDER', 'cris'); +insert into lookups.city (id, label, source) values (1444, 'WALLER', 'cris'); +insert into lookups.city (id, label, source) values (1445, 'WALLIS', 'cris'); +insert into lookups.city (id, label, source) values (1446, 'WALNUT SPRINGS', 'cris'); +insert into lookups.city (id, label, source) values (1447, 'WARREN CITY', 'cris'); +insert into lookups.city (id, label, source) values (1448, 'WASKOM', 'cris'); +insert into lookups.city (id, label, source) values (1449, 'WEIMAR', 'cris'); +insert into lookups.city (id, label, source) values (1450, 'WEINERT', 'cris'); +insert into lookups.city (id, label, source) values (1451, 'WEIR', 'cris'); +insert into lookups.city (id, label, source) values (1452, 'WELLINGTON', 'cris'); +insert into lookups.city (id, label, source) values (1453, 'WELLMAN', 'cris'); +insert into lookups.city (id, label, source) values (1454, 'WELLS', 'cris'); +insert into lookups.city (id, label, source) values (1457, 'WEST ODESSA', 'cris'); +insert into lookups.city (id, label, source) values (1460, 'WEST TAWAKONI', 'cris'); +insert into lookups.city (id, label, source) values (1461, 'WESTBROOK', 'cris'); +insert into lookups.city (id, label, source) values (1463, 'WESTLAKE', 'cris'); +insert into lookups.city (id, label, source) values (1464, 'WESTMINSTER', 'cris'); +insert into lookups.city (id, label, source) values (1465, 'WESTON', 'cris'); +insert into lookups.city (id, label, source) values (1466, 'WESTOVER HILLS', 'cris'); +insert into lookups.city (id, label, source) values (1467, 'WESTWAY', 'cris'); +insert into lookups.city (id, label, source) values (1468, 'WESTWORTH VILLAGE', 'cris'); +insert into lookups.city (id, label, source) values (1469, 'WHEELER', 'cris'); +insert into lookups.city (id, label, source) values (1470, 'WHITE DEER', 'cris'); +insert into lookups.city (id, label, source) values (1471, 'WHITEFACE', 'cris'); +insert into lookups.city (id, label, source) values (1472, 'WHITEWRIGHT', 'cris'); +insert into lookups.city (id, label, source) values (1473, 'WHITNEY', 'cris'); +insert into lookups.city (id, label, source) values (1474, 'WICKETT', 'cris'); +insert into lookups.city (id, label, source) values (1476, 'WILLAMAR', 'cris'); +insert into lookups.city (id, label, source) values (1477, 'WILSON', 'cris'); +insert into lookups.city (id, label, source) values (1478, 'WIMBERLEY', 'cris'); +insert into lookups.city (id, label, source) values (1480, 'WINDOM', 'cris'); +insert into lookups.city (id, label, source) values (1481, 'WINDTHORST', 'cris'); +insert into lookups.city (id, label, source) values (1482, 'WINFIELD', 'cris'); +insert into lookups.city (id, label, source) values (1483, 'WINK', 'cris'); +insert into lookups.city (id, label, source) values (1484, 'WINNIE', 'cris'); +insert into lookups.city (id, label, source) values (1485, 'WINONA', 'cris'); +insert into lookups.city (id, label, source) values (1486, 'WIXON VALLEY', 'cris'); +insert into lookups.city (id, label, source) values (1487, 'WOLFE CITY', 'cris'); +insert into lookups.city (id, label, source) values (1488, 'WOLFFORTH', 'cris'); +insert into lookups.city (id, label, source) values (1489, 'WOODBRANCH', 'cris'); +insert into lookups.city (id, label, source) values (1490, 'WOODCREEK', 'cris'); +insert into lookups.city (id, label, source) values (1491, 'WOODLOCH', 'cris'); +insert into lookups.city (id, label, source) values (1492, 'WOODSBORO', 'cris'); +insert into lookups.city (id, label, source) values (1493, 'WOODSON', 'cris'); +insert into lookups.city (id, label, source) values (1494, 'WOODVILLE', 'cris'); +insert into lookups.city (id, label, source) values (1495, 'WORTHAM', 'cris'); +insert into lookups.city (id, label, source) values (1497, 'YANTIS', 'cris'); +insert into lookups.city (id, label, source) values (1498, 'YORKTOWN', 'cris'); +insert into lookups.city (id, label, source) values (1500, 'ZAPATA', 'cris'); +insert into lookups.city (id, label, source) values (1502, 'ZAVALLA', 'cris'); +insert into lookups.city (id, label, source) values (1503, 'ZUEHL', 'cris'); +insert into lookups.city (id, label, source) values (1505, 'MANCHACA', 'cris'); +insert into lookups.city (id, label, source) values (1506, 'NEW CANEY', 'cris'); +insert into lookups.city (id, label, source) values (1508, 'NORTHCREST', 'cris'); +insert into lookups.city (id, label, source) values (1511, 'SAINT JO', 'cris'); +insert into lookups.city (id, label, source) values (1513, 'BEDIAS', 'cris'); +insert into lookups.city (id, label, source) values (1514, 'BLEDSOE', 'cris'); +insert into lookups.city (id, label, source) values (1515, 'BLUFF DALE', 'cris'); +insert into lookups.city (id, label, source) values (1516, 'BRONSON', 'cris'); +insert into lookups.city (id, label, source) values (1517, 'CAMPBELLTON', 'cris'); +insert into lookups.city (id, label, source) values (1518, 'CASON', 'cris'); +insert into lookups.city (id, label, source) values (1520, 'CENTER POINT', 'cris'); +insert into lookups.city (id, label, source) values (1521, 'CHAPPELL HILL', 'cris'); +insert into lookups.city (id, label, source) values (1522, 'CHILTON', 'cris'); +insert into lookups.city (id, label, source) values (1524, 'CRESSON', 'cris'); +insert into lookups.city (id, label, source) values (1525, 'DEL VALLE', 'cris'); +insert into lookups.city (id, label, source) values (1527, 'ELLINGER', 'cris'); +insert into lookups.city (id, label, source) values (1528, 'ELM MOTT', 'cris'); +insert into lookups.city (id, label, source) values (1530, 'GAIL', 'cris'); +insert into lookups.city (id, label, source) values (1531, 'GARDEN CITY', 'cris'); +insert into lookups.city (id, label, source) values (1532, 'HOCKLEY', 'cris'); +insert into lookups.city (id, label, source) values (1534, 'IOLA', 'cris'); +insert into lookups.city (id, label, source) values (1535, 'KINGWOOD', 'cris'); +insert into lookups.city (id, label, source) values (1536, 'LEMING', 'cris'); +insert into lookups.city (id, label, source) values (1537, 'LILLIAN', 'cris'); +insert into lookups.city (id, label, source) values (1538, 'LYONS', 'cris'); +insert into lookups.city (id, label, source) values (1539, 'MIDFIELD', 'cris'); +insert into lookups.city (id, label, source) values (1540, 'NEW ULM', 'cris'); +insert into lookups.city (id, label, source) values (1542, 'D''HANIS', 'cris'); +insert into lookups.city (id, label, source) values (1543, 'OVALO', 'cris'); +insert into lookups.city (id, label, source) values (1546, 'PORT BOLIVAR', 'cris'); +insert into lookups.city (id, label, source) values (1550, 'RICHARDS', 'cris'); +insert into lookups.city (id, label, source) values (1551, 'ROANS PRAIRIE', 'cris'); +insert into lookups.city (id, label, source) values (1552, 'ROWENA', 'cris'); +insert into lookups.city (id, label, source) values (1553, 'SABINE PASS', 'cris'); +insert into lookups.city (id, label, source) values (1554, 'ST. PAUL', 'cris'); +insert into lookups.city (id, label, source) values (1555, 'SAYERS', 'cris'); +insert into lookups.city (id, label, source) values (1556, 'SINGLETON', 'cris'); +insert into lookups.city (id, label, source) values (1558, 'TILDEN', 'cris'); +insert into lookups.city (id, label, source) values (1560, 'WASHBURN', 'cris'); +insert into lookups.city (id, label, source) values (1561, 'WELCH', 'cris'); +insert into lookups.city (id, label, source) values (1562, 'WELLBORN', 'cris'); +insert into lookups.city (id, label, source) values (1565, 'WILDORADO', 'cris'); +insert into lookups.city (id, label, source) values (1566, 'RURAL ANDERSON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1567, 'RURAL ANDREWS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1568, 'RURAL ANGELINA COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1569, 'RURAL ARANSAS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1570, 'RURAL ARCHER COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1571, 'RURAL ARMSTRONG COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1572, 'RURAL ATASCOSA COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1573, 'RURAL AUSTIN COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1574, 'RURAL BAILEY COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1575, 'RURAL BANDERA COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1576, 'RURAL BASTROP COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1577, 'RURAL BAYLOR COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1578, 'RURAL BEE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1579, 'RURAL BELL COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1580, 'RURAL BEXAR COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1581, 'RURAL BLANCO COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1582, 'RURAL BORDEN COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1583, 'RURAL BOSQUE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1584, 'RURAL BOWIE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1585, 'RURAL BRAZORIA COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1586, 'RURAL BRAZOS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1587, 'RURAL BREWSTER COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1588, 'RURAL BRISCOE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1589, 'RURAL BROOKS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1590, 'RURAL BROWN COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1591, 'RURAL BURLESON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1592, 'RURAL BURNET COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1593, 'RURAL CALDWELL COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1594, 'RURAL CALHOUN COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1595, 'RURAL CALLAHAN COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1596, 'RURAL CAMERON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1597, 'RURAL CAMP COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1598, 'RURAL CARSON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1599, 'RURAL CASS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1600, 'RURAL CASTRO COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1601, 'RURAL CHAMBERS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1602, 'RURAL CHEROKEE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1603, 'RURAL CHILDRESS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1604, 'RURAL CLAY COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1605, 'RURAL COCHRAN COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1606, 'RURAL COKE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1607, 'RURAL COLEMAN COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1608, 'RURAL COLLIN COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1609, 'RURAL COLLINGSWORTH COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1610, 'RURAL COLORADO COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1611, 'RURAL COMAL COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1612, 'RURAL COMANCHE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1613, 'RURAL CONCHO COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1614, 'RURAL COOKE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1615, 'RURAL CORYELL COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1616, 'RURAL COTTLE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1617, 'RURAL CRANE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1618, 'RURAL CROCKETT COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1619, 'RURAL CROSBY COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1620, 'RURAL CULBERSON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1621, 'RURAL DALLAM COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1622, 'RURAL DALLAS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1623, 'RURAL DAWSON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1624, 'RURAL DEAF SMITH COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1625, 'RURAL DELTA COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1626, 'RURAL DENTON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1627, 'RURAL DEWITT COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1628, 'RURAL DICKENS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1629, 'RURAL DIMMIT COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1630, 'RURAL DONLEY COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1631, 'RURAL DUVAL COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1632, 'RURAL EASTLAND COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1633, 'RURAL ECTOR COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1634, 'RURAL EDWARDS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1635, 'RURAL EL PASO COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1636, 'RURAL ELLIS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1637, 'RURAL ERATH COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1638, 'RURAL FALLS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1639, 'RURAL FANNIN COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1640, 'RURAL FAYETTE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1641, 'RURAL FISHER COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1642, 'RURAL FLOYD COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1643, 'RURAL FOARD COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1644, 'RURAL FORT BEND COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1645, 'RURAL FRANKLIN COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1646, 'RURAL FREESTONE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1647, 'RURAL FRIO COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1648, 'RURAL GAINES COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1649, 'RURAL GALVESTON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1650, 'RURAL GARZA COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1651, 'RURAL GILLESPIE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1652, 'RURAL GLASSCOCK COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1653, 'RURAL GOLIAD COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1654, 'RURAL GONZALES COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1655, 'RURAL GRAY COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1656, 'RURAL GRAYSON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1657, 'RURAL GREGG COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1658, 'RURAL GRIMES COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1659, 'RURAL GUADALUPE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1660, 'RURAL HALE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1661, 'RURAL HALL COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1662, 'RURAL HAMILTON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1663, 'RURAL HANSFORD COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1664, 'RURAL HARDEMAN COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1665, 'RURAL HARDIN COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1666, 'RURAL HARRIS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1667, 'RURAL HARRISON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1668, 'RURAL HARTLEY COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1669, 'RURAL HASKELL COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1670, 'RURAL HAYS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1671, 'RURAL HEMPHILL COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1672, 'RURAL HENDERSON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1673, 'RURAL HIDALGO COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1674, 'RURAL HILL COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1675, 'RURAL HOCKLEY COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1676, 'RURAL HOOD COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1677, 'RURAL HOPKINS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1678, 'RURAL HOUSTON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1679, 'RURAL HOWARD COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1680, 'RURAL HUDSPETH COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1681, 'RURAL HUNT COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1682, 'RURAL HUTCHINSON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1683, 'RURAL IRION COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1684, 'RURAL JACK COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1685, 'RURAL JACKSON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1686, 'RURAL JASPER COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1687, 'RURAL JEFF DAVIS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1688, 'RURAL JEFFERSON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1689, 'RURAL JIM HOGG COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1690, 'RURAL JIM WELLS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1691, 'RURAL JOHNSON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1692, 'RURAL JONES COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1693, 'RURAL KARNES COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1694, 'RURAL KAUFMAN COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1695, 'RURAL KENDALL COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1696, 'RURAL KENEDY COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1697, 'RURAL KENT COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1698, 'RURAL KERR COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1699, 'RURAL KIMBLE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1700, 'RURAL KING COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1701, 'RURAL KINNEY COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1702, 'RURAL KLEBERG COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1703, 'RURAL KNOX COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1704, 'RURAL LAMAR COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1705, 'RURAL LAMB COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1706, 'RURAL LAMPASAS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1707, 'RURAL LA SALLE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1708, 'RURAL LAVACA COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1709, 'RURAL LEE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1710, 'RURAL LEON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1711, 'RURAL LIBERTY COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1712, 'RURAL LIMESTONE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1713, 'RURAL LIPSCOMB COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1714, 'RURAL LIVE OAK COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1715, 'RURAL LLANO COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1716, 'RURAL LOVING COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1717, 'RURAL LUBBOCK COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1718, 'RURAL LYNN COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1719, 'RURAL MADISON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1720, 'RURAL MARION COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1721, 'RURAL MARTIN COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1722, 'RURAL MASON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1723, 'RURAL MATAGORDA COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1724, 'RURAL MAVERICK COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1725, 'RURAL MCCULLOCH COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1726, 'RURAL MCLENNAN COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1727, 'RURAL MCMULLEN COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1728, 'RURAL MEDINA COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1729, 'RURAL MENARD COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1730, 'RURAL MIDLAND COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1731, 'RURAL MILAM COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1732, 'RURAL MILLS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1733, 'RURAL MITCHELL COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1734, 'RURAL MONTAGUE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1735, 'RURAL MONTGOMERY COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1736, 'RURAL MOORE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1737, 'RURAL MORRIS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1738, 'RURAL MOTLEY COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1739, 'RURAL NACOGDOCHES COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1740, 'RURAL NAVARRO COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1741, 'RURAL NEWTON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1742, 'RURAL NOLAN COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1743, 'RURAL NUECES COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1744, 'RURAL OCHILTREE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1745, 'RURAL OLDHAM COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1746, 'RURAL ORANGE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1747, 'RURAL PALO PINTO COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1748, 'RURAL PANOLA COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1749, 'RURAL PARKER COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1750, 'RURAL PARMER COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1751, 'RURAL PECOS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1752, 'RURAL POLK COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1753, 'RURAL POTTER COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1754, 'RURAL PRESIDIO COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1755, 'RURAL RAINS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1756, 'RURAL RANDALL COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1757, 'RURAL REAGAN COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1758, 'RURAL REAL COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1759, 'RURAL RED RIVER COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1760, 'RURAL REEVES COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1761, 'RURAL REFUGIO COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1762, 'RURAL ROBERTS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1763, 'RURAL ROBERTSON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1764, 'RURAL ROCKWALL COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1765, 'RURAL RUNNELS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1766, 'RURAL RUSK COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1767, 'RURAL SABINE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1768, 'RURAL SAN AUGUSTINE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1769, 'RURAL SAN JACINTO COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1770, 'RURAL SAN PATRICIO COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1771, 'RURAL SAN SABA COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1772, 'RURAL SCHLEICHER COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1773, 'RURAL SCURRY COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1774, 'RURAL SHACKELFORD COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1775, 'RURAL SHELBY COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1776, 'RURAL SHERMAN COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1777, 'RURAL SMITH COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1778, 'RURAL SOMERVELL COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1779, 'RURAL STARR COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1780, 'RURAL STEPHENS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1781, 'RURAL STERLING COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1782, 'RURAL STONEWALL COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1783, 'RURAL SUTTON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1784, 'RURAL SWISHER COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1785, 'RURAL TARRANT COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1786, 'RURAL TAYLOR COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1787, 'RURAL TERRELL COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1788, 'RURAL TERRY COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1789, 'RURAL THROCKMORTON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1790, 'RURAL TITUS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1791, 'RURAL TOM GREEN COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1792, 'RURAL TRAVIS COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1793, 'RURAL TRINITY COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1794, 'RURAL TYLER COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1795, 'RURAL UPSHUR COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1796, 'RURAL UPTON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1797, 'RURAL UVALDE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1798, 'RURAL VAL VERDE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1799, 'RURAL VAN ZANDT COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1800, 'RURAL VICTORIA COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1801, 'RURAL WALKER COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1802, 'RURAL WALLER COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1803, 'RURAL WARD COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1804, 'RURAL WASHINGTON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1805, 'RURAL WEBB COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1806, 'RURAL WHARTON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1807, 'RURAL WHEELER COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1808, 'RURAL WICHITA COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1809, 'RURAL WILBARGER COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1810, 'RURAL WILLACY COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1811, 'RURAL WILLIAMSON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1812, 'RURAL WILSON COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1813, 'RURAL WINKLER COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1814, 'RURAL WISE COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1815, 'RURAL WOOD COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1816, 'RURAL YOAKUM COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1817, 'RURAL YOUNG COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1818, 'RURAL ZAPATA COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1819, 'RURAL ZAVALA COUNTY', 'cris'); +insert into lookups.city (id, label, source) values (1820, 'MACDONA', 'cris'); +insert into lookups.city (id, label, source) values (1821, 'SAN GERONIMO', 'cris'); +insert into lookups.city (id, label, source) values (1824, 'SUTHERLAND SPRINGS', 'cris'); +insert into lookups.city (id, label, source) values (1860, 'ADKINS', 'cris'); +insert into lookups.city (id, label, source) values (1870, 'AGNES', 'cris'); +insert into lookups.city (id, label, source) values (1873, 'AGUILARES', 'cris'); +insert into lookups.city (id, label, source) values (1896, 'ALANREED', 'cris'); +insert into lookups.city (id, label, source) values (1915, 'ALEXANDER', 'cris'); +insert into lookups.city (id, label, source) values (1921, 'ALFRED', 'cris'); +insert into lookups.city (id, label, source) values (1922, 'ALGERITA', 'cris'); +insert into lookups.city (id, label, source) values (1923, 'ALGOA', 'cris'); +insert into lookups.city (id, label, source) values (1925, 'ALICE ACRES', 'cris'); +insert into lookups.city (id, label, source) values (1926, 'ALIEF', 'cris'); +insert into lookups.city (id, label, source) values (1938, 'ALLEYTON', 'cris'); +insert into lookups.city (id, label, source) values (1953, 'ALTAIR', 'cris'); +insert into lookups.city (id, label, source) values (1954, 'ALTO BONITO', 'cris'); +insert into lookups.city (id, label, source) values (1969, 'SANDY OAKS', 'cris'); +insert into lookups.city (id, label, source) values (1977, 'AMSTERDAM', 'cris'); +insert into lookups.city (id, label, source) values (1985, 'ANDICE', 'cris'); +insert into lookups.city (id, label, source) values (2014, 'APPLE SPRINGS', 'cris'); +insert into lookups.city (id, label, source) values (2051, 'ARROYO CITY', 'cris'); +insert into lookups.city (id, label, source) values (2054, 'ARTESIA WELLS', 'cris'); +insert into lookups.city (id, label, source) values (2055, 'ARTHUR CITY', 'cris'); +insert into lookups.city (id, label, source) values (2057, 'ASA', 'cris'); +insert into lookups.city (id, label, source) values (2066, 'ASHWOOD', 'cris'); +insert into lookups.city (id, label, source) values (2071, 'ATASCOCITA', 'cris'); +insert into lookups.city (id, label, source) values (2078, 'ATASCOSA', 'cris'); +insert into lookups.city (id, label, source) values (2091, 'AUGUSTA', 'cris'); +insert into lookups.city (id, label, source) values (2094, 'AUSTONIO', 'cris'); +insert into lookups.city (id, label, source) values (2097, 'AVALON', 'cris'); +insert into lookups.city (id, label, source) values (2100, 'AVOCA', 'cris'); +insert into lookups.city (id, label, source) values (2104, 'AXTELL', 'cris'); +insert into lookups.city (id, label, source) values (2112, 'BAGWELL', 'cris'); +insert into lookups.city (id, label, source) values (2115, 'BAILEYVILLE', 'cris'); +insert into lookups.city (id, label, source) values (2123, 'BAKERSFIELD', 'cris'); +insert into lookups.city (id, label, source) values (2126, 'BALD PRAIRIE', 'cris'); +insert into lookups.city (id, label, source) values (2131, 'BALSORA', 'cris'); +insert into lookups.city (id, label, source) values (2140, 'BANQUETE', 'cris'); +insert into lookups.city (id, label, source) values (2150, 'BARKSDALE', 'cris'); +insert into lookups.city (id, label, source) values (2152, 'BARNHART', 'cris'); +insert into lookups.city (id, label, source) values (2170, 'BATEMAN', 'cris'); +insert into lookups.city (id, label, source) values (2173, 'BATSON', 'cris'); +insert into lookups.city (id, label, source) values (2195, 'BAYVIEW', 'cris'); +insert into lookups.city (id, label, source) values (2217, 'BEBE', 'cris'); +insert into lookups.city (id, label, source) values (2246, 'BELMENA', 'cris'); +insert into lookups.city (id, label, source) values (2247, 'BELMONT', 'cris'); +insert into lookups.city (id, label, source) values (2251, 'BEN ARNOLD', 'cris'); +insert into lookups.city (id, label, source) values (2252, 'BEN BOLT', 'cris'); +insert into lookups.city (id, label, source) values (2255, 'BEN FRANKLIN', 'cris'); +insert into lookups.city (id, label, source) values (2256, 'BEN HUR', 'cris'); +insert into lookups.city (id, label, source) values (2257, 'BEN WHEELER', 'cris'); +insert into lookups.city (id, label, source) values (2258, 'BENCHLEY', 'cris'); +insert into lookups.city (id, label, source) values (2265, 'BENOIT', 'cris'); +insert into lookups.city (id, label, source) values (2269, 'BERCLAIR', 'cris'); +insert into lookups.city (id, label, source) values (2274, 'BERGHEIM', 'cris'); +insert into lookups.city (id, label, source) values (2278, 'BERNARDO', 'cris'); +insert into lookups.city (id, label, source) values (2290, 'BETHEL', 'cris'); +insert into lookups.city (id, label, source) values (2335, 'BIROME', 'cris'); +insert into lookups.city (id, label, source) values (2337, 'BIRY', 'cris'); +insert into lookups.city (id, label, source) values (2341, 'BIVINS', 'cris'); +insert into lookups.city (id, label, source) values (2367, 'BLANCONIA', 'cris'); +insert into lookups.city (id, label, source) values (2374, 'BLEAKWOOD', 'cris'); +insert into lookups.city (id, label, source) values (2394, 'BLUETOWN', 'cris'); +insert into lookups.city (id, label, source) values (2401, 'BLUFFTON', 'cris'); +insert into lookups.city (id, label, source) values (2403, 'BLUNTZER', 'cris'); +insert into lookups.city (id, label, source) values (2420, 'BOLING', 'cris'); +insert into lookups.city (id, label, source) values (2421, 'BOLIVAR', 'cris'); +insert into lookups.city (id, label, source) values (2428, 'BON WIER', 'cris'); +insert into lookups.city (id, label, source) values (2438, 'BONUS', 'cris'); +insert into lookups.city (id, label, source) values (2442, 'BOONSVILLE', 'cris'); +insert into lookups.city (id, label, source) values (2444, 'BOOTH', 'cris'); +insert into lookups.city (id, label, source) values (2450, 'BORDEN', 'cris'); +insert into lookups.city (id, label, source) values (2471, 'BOXELDER', 'cris'); +insert into lookups.city (id, label, source) values (2474, 'BOYD', 'cris'); +insert into lookups.city (id, label, source) values (2481, 'BRACKEN', 'cris'); +insert into lookups.city (id, label, source) values (2482, 'BRAD', 'cris'); +insert into lookups.city (id, label, source) values (2492, 'BRANCH', 'cris'); +insert into lookups.city (id, label, source) values (2493, 'BRANCHVILLE', 'cris'); +insert into lookups.city (id, label, source) values (2495, 'BRANDON', 'cris'); +insert into lookups.city (id, label, source) values (2499, 'BRASHEAR', 'cris'); +insert into lookups.city (id, label, source) values (2501, 'BRAZOS', 'cris'); +insert into lookups.city (id, label, source) values (2503, 'BRAZOS COUNTRY', 'cris'); +insert into lookups.city (id, label, source) values (2509, 'BRESLAU', 'cris'); +insert into lookups.city (id, label, source) values (2525, 'BRIGGS', 'cris'); +insert into lookups.city (id, label, source) values (2529, 'BRISTOL', 'cris'); +insert into lookups.city (id, label, source) values (2537, 'BROCK', 'cris'); +insert into lookups.city (id, label, source) values (2544, 'BROOKELAND', 'cris'); +insert into lookups.city (id, label, source) values (2556, 'BROOKSTON', 'cris'); +insert into lookups.city (id, label, source) values (2579, 'BRUSHIE PRAIRIE', 'cris'); +insert into lookups.city (id, label, source) values (2585, 'BRYANS MILL', 'cris'); +insert into lookups.city (id, label, source) values (2589, 'BUCHANAN', 'cris'); +insert into lookups.city (id, label, source) values (2623, 'BULA', 'cris'); +insert into lookups.city (id, label, source) values (2644, 'BURKETT', 'cris'); +insert into lookups.city (id, label, source) values (2645, 'BURKEVILLE', 'cris'); +insert into lookups.city (id, label, source) values (2646, 'BURLEIGH', 'cris'); +insert into lookups.city (id, label, source) values (2647, 'BURLINGTON', 'cris'); +insert into lookups.city (id, label, source) values (2653, 'BURR', 'cris'); +insert into lookups.city (id, label, source) values (2660, 'BUSHLAND', 'cris'); +insert into lookups.city (id, label, source) values (2701, 'CALL JUNCTION', 'cris'); +insert into lookups.city (id, label, source) values (2703, 'CALLAHAN', 'cris'); +insert into lookups.city (id, label, source) values (2711, 'CAMDEN', 'cris'); +insert into lookups.city (id, label, source) values (2734, 'CAMPO ALTO', 'cris'); +insert into lookups.city (id, label, source) values (2758, 'CANYON CITY', 'cris'); +insert into lookups.city (id, label, source) values (2780, 'CARLOS', 'cris'); +insert into lookups.city (id, label, source) values (2782, 'CARLSBAD', 'cris'); +insert into lookups.city (id, label, source) values (2784, 'CARLTON', 'cris'); +insert into lookups.city (id, label, source) values (2796, 'CARRICITOS', 'cris'); +insert into lookups.city (id, label, source) values (2819, 'CASH', 'cris'); +insert into lookups.city (id, label, source) values (2826, 'CASTELL', 'cris'); +insert into lookups.city (id, label, source) values (2831, 'CAT SPRING', 'cris'); +insert into lookups.city (id, label, source) values (2841, 'CAYUGA', 'cris'); +insert into lookups.city (id, label, source) values (2844, 'CEDAR CREEK', 'cris'); +insert into lookups.city (id, label, source) values (2851, 'CEDAR LAKE', 'cris'); +insert into lookups.city (id, label, source) values (2852, 'CEDAR LANE', 'cris'); +insert into lookups.city (id, label, source) values (2857, 'CEDAR SPRINGS', 'cris'); +insert into lookups.city (id, label, source) values (2864, 'CEGO', 'cris'); +insert into lookups.city (id, label, source) values (2886, 'CENTRAL', 'cris'); +insert into lookups.city (id, label, source) values (2892, 'CENTRALIA', 'cris'); +insert into lookups.city (id, label, source) values (2930, 'CHAPMAN RANCH', 'cris'); +insert into lookups.city (id, label, source) values (2934, 'CHARLESTON', 'cris'); +insert into lookups.city (id, label, source) values (2935, 'CHARLIE', 'cris'); +insert into lookups.city (id, label, source) values (2940, 'CHATEAU WOODS', 'cris'); +insert into lookups.city (id, label, source) values (2941, 'CHATFIELD', 'cris'); +insert into lookups.city (id, label, source) values (2946, 'CHEEK', 'cris'); +insert into lookups.city (id, label, source) values (2950, 'CHEROKEE', 'cris'); +insert into lookups.city (id, label, source) values (2954, 'CHERRY SPRING', 'cris'); +insert into lookups.city (id, label, source) values (2957, 'CHICOTA', 'cris'); +insert into lookups.city (id, label, source) values (2958, 'CHIHUAHUA', 'cris'); +insert into lookups.city (id, label, source) values (2964, 'CHINA SPRING', 'cris'); +insert into lookups.city (id, label, source) values (2973, 'CHITA', 'cris'); +insert into lookups.city (id, label, source) values (2974, 'CHOATE', 'cris'); +insert into lookups.city (id, label, source) values (2984, 'CHURCHILL', 'cris'); +insert into lookups.city (id, label, source) values (2998, 'CISTERN', 'cris'); +insert into lookups.city (id, label, source) values (3016, 'CLAY', 'cris'); +insert into lookups.city (id, label, source) values (3036, 'CLEMVILLE', 'cris'); +insert into lookups.city (id, label, source) values (3086, 'COLLEGE MOUND', 'cris'); +insert into lookups.city (id, label, source) values (3091, 'COLOGNE', 'cris'); +insert into lookups.city (id, label, source) values (3116, 'COMSTOCK', 'cris'); +insert into lookups.city (id, label, source) values (3118, 'CONCAN', 'cris'); +insert into lookups.city (id, label, source) values (3146, 'CONWAY', 'cris'); +insert into lookups.city (id, label, source) values (3149, 'COOKS POINT', 'cris'); +insert into lookups.city (id, label, source) values (3150, 'COOKVILLE', 'cris'); +insert into lookups.city (id, label, source) values (3158, 'COPEVILLE', 'cris'); +insert into lookups.city (id, label, source) values (3162, 'CORBET', 'cris'); +insert into lookups.city (id, label, source) values (3169, 'CORLEY', 'cris'); +insert into lookups.city (id, label, source) values (3186, 'COST', 'cris'); +insert into lookups.city (id, label, source) values (3193, 'COTTONDALE', 'cris'); +insert into lookups.city (id, label, source) values (3211, 'COUPLAND', 'cris'); +insert into lookups.city (id, label, source) values (3234, 'CRABBS PRAIRIE', 'cris'); +insert into lookups.city (id, label, source) values (3239, 'CRANES MILL', 'cris'); +insert into lookups.city (id, label, source) values (3250, 'CREWS', 'cris'); +insert into lookups.city (id, label, source) values (3263, 'CROSS ROADS', 'cris'); +insert into lookups.city (id, label, source) values (3268, 'CROSS TIMBER', 'cris'); +insert into lookups.city (id, label, source) values (3287, 'CRYSTAL BEACH', 'cris'); +insert into lookups.city (id, label, source) values (3296, 'CULLEOKA', 'cris'); +insert into lookups.city (id, label, source) values (3299, 'CUNDIFF', 'cris'); +insert into lookups.city (id, label, source) values (3303, 'CURTIS', 'cris'); +insert into lookups.city (id, label, source) values (3313, 'CYPRESS', 'cris'); +insert into lookups.city (id, label, source) values (3325, 'DACOSTA', 'cris'); +insert into lookups.city (id, label, source) values (3331, 'DALE', 'cris'); +insert into lookups.city (id, label, source) values (3341, 'DANEVANG', 'cris'); +insert into lookups.city (id, label, source) values (3348, 'DARBY HILL', 'cris'); +insert into lookups.city (id, label, source) values (3359, 'DAVILLA', 'cris'); +insert into lookups.city (id, label, source) values (3370, 'DEANVILLE', 'cris'); +insert into lookups.city (id, label, source) values (3373, 'DEBERRY', 'cris'); +insert into lookups.city (id, label, source) values (3375, 'DECKER PRAIRIE', 'cris'); +insert into lookups.city (id, label, source) values (3393, 'DELHI', 'cris'); +insert into lookups.city (id, label, source) values (3398, 'DELMITA', 'cris'); +insert into lookups.city (id, label, source) values (3406, 'DENHAWKEN', 'cris'); +insert into lookups.city (id, label, source) values (3410, 'DENNIS', 'cris'); +insert into lookups.city (id, label, source) values (3415, 'DERMOTT', 'cris'); +insert into lookups.city (id, label, source) values (3417, 'DESDEMONA', 'cris'); +insert into lookups.city (id, label, source) values (3418, 'DESERT', 'cris'); +insert into lookups.city (id, label, source) values (3424, 'DEW', 'cris'); +insert into lookups.city (id, label, source) values (3426, 'DEWEES', 'cris'); +insert into lookups.city (id, label, source) values (3429, 'DEXTER', 'cris'); +insert into lookups.city (id, label, source) values (3434, 'DIANA', 'cris'); +insert into lookups.city (id, label, source) values (3440, 'DIKE', 'cris'); +insert into lookups.city (id, label, source) values (3443, 'DIME BOX', 'cris'); +insert into lookups.city (id, label, source) values (3453, 'DISH', 'cris'); +insert into lookups.city (id, label, source) values (3458, 'DIXIE', 'cris'); +insert into lookups.city (id, label, source) values (3465, 'DOBBIN', 'cris'); +insert into lookups.city (id, label, source) values (3470, 'DODGE', 'cris'); +insert into lookups.city (id, label, source) values (3475, 'DOGWOOD CITY', 'cris'); +insert into lookups.city (id, label, source) values (3477, 'DOLAN', 'cris'); +insert into lookups.city (id, label, source) values (3478, 'DOLEN', 'cris'); +insert into lookups.city (id, label, source) values (3484, 'DONIE', 'cris'); +insert into lookups.city (id, label, source) values (3498, 'DOUBLE BAYOU', 'cris'); +insert into lookups.city (id, label, source) values (3502, 'DOUCETTE', 'cris'); +insert into lookups.city (id, label, source) values (3507, 'DOUGLASS', 'cris'); +insert into lookups.city (id, label, source) values (3515, 'DOWNSVILLE', 'cris'); +insert into lookups.city (id, label, source) values (3522, 'DRAW', 'cris'); +insert into lookups.city (id, label, source) values (3524, 'DRESDEN', 'cris'); +insert into lookups.city (id, label, source) values (3528, 'DRIFTWOOD', 'cris'); +insert into lookups.city (id, label, source) values (3534, 'DRYDEN', 'cris'); +insert into lookups.city (id, label, source) values (3554, 'DUNDEE', 'cris'); +insert into lookups.city (id, label, source) values (3557, 'DUNLAY', 'cris'); +insert into lookups.city (id, label, source) values (3558, 'DUNN', 'cris'); +insert into lookups.city (id, label, source) values (3563, 'DURANGO', 'cris'); +insert into lookups.city (id, label, source) values (3585, 'EAST COLUMBIA', 'cris'); +insert into lookups.city (id, label, source) values (3599, 'EASTERLY', 'cris'); +insert into lookups.city (id, label, source) values (3608, 'ECHO', 'cris'); +insert into lookups.city (id, label, source) values (3615, 'EDDY', 'cris'); +insert into lookups.city (id, label, source) values (3620, 'EDGE', 'cris'); +insert into lookups.city (id, label, source) values (3647, 'EL GATO', 'cris'); +insert into lookups.city (id, label, source) values (3652, 'EL SAUZ', 'cris'); +insert into lookups.city (id, label, source) values (3659, 'ELDERVILLE', 'cris'); +insert into lookups.city (id, label, source) values (3666, 'ELIASVILLE', 'cris'); +insert into lookups.city (id, label, source) values (3670, 'ELK', 'cris'); +insert into lookups.city (id, label, source) values (3674, 'ELLIOT', 'cris'); +insert into lookups.city (id, label, source) values (3695, 'ELMO', 'cris'); +insert into lookups.city (id, label, source) values (3701, 'ELROY', 'cris'); +insert into lookups.city (id, label, source) values (3709, 'ELYSIAN FIELDS', 'cris'); +insert into lookups.city (id, label, source) values (3726, 'ENGLE', 'cris'); +insert into lookups.city (id, label, source) values (3732, 'ENLOE', 'cris'); +insert into lookups.city (id, label, source) values (3734, 'ENOCHS', 'cris'); +insert into lookups.city (id, label, source) values (3746, 'ERA', 'cris'); +insert into lookups.city (id, label, source) values (3749, 'ERIN', 'cris'); +insert into lookups.city (id, label, source) values (3754, 'ESCOBAS', 'cris'); +insert into lookups.city (id, label, source) values (3767, 'ETOILE', 'cris'); +insert into lookups.city (id, label, source) values (3768, 'ETTER', 'cris'); +insert into lookups.city (id, label, source) values (3770, 'EULA', 'cris'); +insert into lookups.city (id, label, source) values (3822, 'FALCON', 'cris'); +insert into lookups.city (id, label, source) values (3834, 'FANNETT', 'cris'); +insert into lookups.city (id, label, source) values (3835, 'FANNIN', 'cris'); +insert into lookups.city (id, label, source) values (3845, 'FARRSVILLE', 'cris'); +insert into lookups.city (id, label, source) values (3851, 'FAWIL', 'cris'); +insert into lookups.city (id, label, source) values (3858, 'FELICIA', 'cris'); +insert into lookups.city (id, label, source) values (3860, 'FENTRESS', 'cris'); +insert into lookups.city (id, label, source) values (3882, 'FISCHER', 'cris'); +insert into lookups.city (id, label, source) values (3884, 'FISK', 'cris'); +insert into lookups.city (id, label, source) values (3897, 'FLAT', 'cris'); +insert into lookups.city (id, label, source) values (3909, 'FLINT', 'cris'); +insert into lookups.city (id, label, source) values (3911, 'FLO', 'cris'); +insert into lookups.city (id, label, source) values (3929, 'FLYNN', 'cris'); +insert into lookups.city (id, label, source) values (3967, 'FORESTBURG', 'cris'); +insert into lookups.city (id, label, source) values (3969, 'FORRESTON', 'cris'); +insert into lookups.city (id, label, source) values (4006, 'FOUR CORNERS', 'cris'); +insert into lookups.city (id, label, source) values (4021, 'FRANCITAS', 'cris'); +insert into lookups.city (id, label, source) values (4027, 'FRED', 'cris'); +insert into lookups.city (id, label, source) values (4037, 'FREESTONE', 'cris'); +insert into lookups.city (id, label, source) values (4039, 'FREIHEIT', 'cris'); +insert into lookups.city (id, label, source) values (4040, 'FRELSBURG', 'cris'); +insert into lookups.city (id, label, source) values (4080, 'FRYDEK', 'cris'); +insert into lookups.city (id, label, source) values (4108, 'GARCIASVILLE', 'cris'); +insert into lookups.city (id, label, source) values (4115, 'GARDENDALE', 'cris'); +insert into lookups.city (id, label, source) values (4118, 'GARNER', 'cris'); +insert into lookups.city (id, label, source) values (4121, 'GARWOOD', 'cris'); +insert into lookups.city (id, label, source) values (4123, 'GARY', 'cris'); +insert into lookups.city (id, label, source) values (4130, 'GAUSE', 'cris'); +insert into lookups.city (id, label, source) values (4148, 'GERMANIA', 'cris'); +insert into lookups.city (id, label, source) values (4158, 'GILCHRIST', 'cris'); +insert into lookups.city (id, label, source) values (4161, 'GILLETT', 'cris'); +insert into lookups.city (id, label, source) values (4172, 'GIST', 'cris'); +insert into lookups.city (id, label, source) values (4181, 'GLAZIER', 'cris'); +insert into lookups.city (id, label, source) values (4188, 'GLEN FLORA', 'cris'); +insert into lookups.city (id, label, source) values (4207, 'GLIDDEN', 'cris'); +insert into lookups.city (id, label, source) values (4233, 'GOODLETT', 'cris'); +insert into lookups.city (id, label, source) values (4241, 'GORDONVILLE', 'cris'); +insert into lookups.city (id, label, source) values (4269, 'GRANGERLAND', 'cris'); +insert into lookups.city (id, label, source) values (4272, 'GRAPE CREEK', 'cris'); +insert into lookups.city (id, label, source) values (4292, 'GREEN LAKE', 'cris'); +insert into lookups.city (id, label, source) values (4324, 'GRESHAM', 'cris'); +insert into lookups.city (id, label, source) values (4337, 'GROCEVILLE', 'cris'); +insert into lookups.city (id, label, source) values (4372, 'GUTHRIE', 'cris'); +insert into lookups.city (id, label, source) values (4373, 'GUY', 'cris'); +insert into lookups.city (id, label, source) values (4389, 'HAINESVILLE', 'cris'); +insert into lookups.city (id, label, source) values (4411, 'HAMSHIRE', 'cris'); +insert into lookups.city (id, label, source) values (4412, 'HANCOCK', 'cris'); +insert into lookups.city (id, label, source) values (4417, 'HANKAMER', 'cris'); +insert into lookups.city (id, label, source) values (4437, 'HARGILL', 'cris'); +insert into lookups.city (id, label, source) values (4440, 'HARLETON', 'cris'); +insert into lookups.city (id, label, source) values (4461, 'HARRIS', 'cris'); +insert into lookups.city (id, label, source) values (4467, 'HARROLD', 'cris'); +insert into lookups.city (id, label, source) values (4469, 'HARTBURG', 'cris'); +insert into lookups.city (id, label, source) values (4479, 'HARWOOD', 'cris'); +insert into lookups.city (id, label, source) values (4482, 'HASSE', 'cris'); +insert into lookups.city (id, label, source) values (4521, 'HEIDENHEIMER', 'cris'); +insert into lookups.city (id, label, source) values (4525, 'HELENA', 'cris'); +insert into lookups.city (id, label, source) values (4534, 'HENLY', 'cris'); +insert into lookups.city (id, label, source) values (4581, 'HIGH ISLAND', 'cris'); +insert into lookups.city (id, label, source) values (4593, 'HIGHLAND HAVEN', 'cris'); +insert into lookups.city (id, label, source) values (4611, 'HILLISTER', 'cris'); +insert into lookups.city (id, label, source) values (4612, 'HILLJE', 'cris'); +insert into lookups.city (id, label, source) values (4619, 'HILLTOP LAKES', 'cris'); +insert into lookups.city (id, label, source) values (4636, 'HOBBS', 'cris'); +insert into lookups.city (id, label, source) values (4638, 'HOBSON', 'cris'); +insert into lookups.city (id, label, source) values (4653, 'HOLIDAY BEACH', 'cris'); +insert into lookups.city (id, label, source) values (4665, 'HOLLY SPRINGS', 'cris'); +insert into lookups.city (id, label, source) values (4675, 'HONEY ISLAND', 'cris'); +insert into lookups.city (id, label, source) values (4718, 'HUCKABAY', 'cris'); +insert into lookups.city (id, label, source) values (4726, 'HUFF CREEK', 'cris'); +insert into lookups.city (id, label, source) values (4728, 'HUFFMAN', 'cris'); +insert into lookups.city (id, label, source) values (4733, 'HULL', 'cris'); +insert into lookups.city (id, label, source) values (4741, 'HUNT', 'cris'); +insert into lookups.city (id, label, source) values (4757, 'HYE', 'cris'); +insert into lookups.city (id, label, source) values (4776, 'INDEPENDENCE', 'cris'); +insert into lookups.city (id, label, source) values (4801, 'IRA', 'cris'); +insert into lookups.city (id, label, source) values (4816, 'IVANHOE', 'cris'); +insert into lookups.city (id, label, source) values (4817, 'IZORO', 'cris'); +insert into lookups.city (id, label, source) values (4836, 'JARRELL', 'cris'); +insert into lookups.city (id, label, source) values (4841, 'JEAN', 'cris'); +insert into lookups.city (id, label, source) values (4846, 'JENNINGS', 'cris'); +insert into lookups.city (id, label, source) values (4850, 'JERMYN', 'cris'); +insert into lookups.city (id, label, source) values (4871, 'JOHNTOWN', 'cris'); +insert into lookups.city (id, label, source) values (4873, 'JOINERVILLE', 'cris'); +insert into lookups.city (id, label, source) values (4874, 'JOLIET', 'cris'); +insert into lookups.city (id, label, source) values (4875, 'JONAH', 'cris'); +insert into lookups.city (id, label, source) values (4877, 'JONES PRAIRIE', 'cris'); +insert into lookups.city (id, label, source) values (4878, 'JONESBORO', 'cris'); +insert into lookups.city (id, label, source) values (4900, 'JULIFF', 'cris'); +insert into lookups.city (id, label, source) values (4912, 'KANAWHA', 'cris'); +insert into lookups.city (id, label, source) values (4915, 'KARNACK', 'cris'); +insert into lookups.city (id, label, source) values (4930, 'KEETER', 'cris'); +insert into lookups.city (id, label, source) values (4931, 'KEITH', 'cris'); +insert into lookups.city (id, label, source) values (4936, 'KELLOGG', 'cris'); +insert into lookups.city (id, label, source) values (4945, 'KENDALIA', 'cris'); +insert into lookups.city (id, label, source) values (4949, 'KENNEY', 'cris'); +insert into lookups.city (id, label, source) values (4969, 'KILDARE', 'cris'); +insert into lookups.city (id, label, source) values (4989, 'KINGSTON', 'cris'); +insert into lookups.city (id, label, source) values (4999, 'KIRKLAND', 'cris'); +insert into lookups.city (id, label, source) values (5006, 'KLEIN', 'cris'); +insert into lookups.city (id, label, source) values (5011, 'KNICKERBOCKER', 'cris'); +insert into lookups.city (id, label, source) values (5021, 'KNOTT', 'cris'); +insert into lookups.city (id, label, source) values (5026, 'KOMENSKY', 'cris'); +insert into lookups.city (id, label, source) values (5031, 'KOPPERL', 'cris'); +insert into lookups.city (id, label, source) values (5032, 'KOSCIUSKO', 'cris'); +insert into lookups.city (id, label, source) values (5040, 'KURTEN', 'cris'); +insert into lookups.city (id, label, source) values (5044, 'LA BELLE', 'cris'); +insert into lookups.city (id, label, source) values (5046, 'LA CASITA', 'cris'); +insert into lookups.city (id, label, source) values (5048, 'LA COSTE', 'cris'); +insert into lookups.city (id, label, source) values (5074, 'LA REFORMA', 'cris'); +insert into lookups.city (id, label, source) values (5077, 'LA ROSITA', 'cris'); +insert into lookups.city (id, label, source) values (5086, 'LA VICTORIA', 'cris'); +insert into lookups.city (id, label, source) values (5099, 'LAGARTO', 'cris'); +insert into lookups.city (id, label, source) values (5111, 'LAIRD HILL', 'cris'); +insert into lookups.city (id, label, source) values (5150, 'LAKESIDE', 'cris'); +insert into lookups.city (id, label, source) values (5156, 'LAKESIDE VILLAGE', 'cris'); +insert into lookups.city (id, label, source) values (5163, 'LAKEVIEW', 'cris'); +insert into lookups.city (id, label, source) values (5177, 'LAMAR', 'cris'); +insert into lookups.city (id, label, source) values (5188, 'LANE CITY', 'cris'); +insert into lookups.city (id, label, source) values (5192, 'LANEVILLE', 'cris'); +insert into lookups.city (id, label, source) values (5198, 'LANNIUS', 'cris'); +insert into lookups.city (id, label, source) values (5200, 'LANTANA', 'cris'); +insert into lookups.city (id, label, source) values (5206, 'LARUE', 'cris'); +insert into lookups.city (id, label, source) values (5211, 'LAS LOMAS', 'cris'); +insert into lookups.city (id, label, source) values (5221, 'LAS YESCAS', 'cris'); +insert into lookups.city (id, label, source) values (5240, 'LAWRENCE', 'cris'); +insert into lookups.city (id, label, source) values (5246, 'LAZBUDDIE', 'cris'); +insert into lookups.city (id, label, source) values (5255, 'LEDBETTER', 'cris'); +insert into lookups.city (id, label, source) values (5263, 'LEESBURG', 'cris'); +insert into lookups.city (id, label, source) values (5264, 'LEESVILLE', 'cris'); +insert into lookups.city (id, label, source) values (5267, 'LEGGETT', 'cris'); +insert into lookups.city (id, label, source) values (5269, 'LEHMAN', 'cris'); +insert into lookups.city (id, label, source) values (5274, 'LELIA LAKE', 'cris'); +insert into lookups.city (id, label, source) values (5283, 'LEON SPRINGS', 'cris'); +insert into lookups.city (id, label, source) values (5316, 'LINCOLN', 'cris'); +insert into lookups.city (id, label, source) values (5326, 'LINGLEVILLE', 'cris'); +insert into lookups.city (id, label, source) values (5329, 'LINN', 'cris'); +insert into lookups.city (id, label, source) values (5333, 'LISSIE', 'cris'); +insert into lookups.city (id, label, source) values (5335, 'LITTLE CYPRESS', 'cris'); +insert into lookups.city (id, label, source) values (5402, 'LONG MOTT', 'cris'); +insert into lookups.city (id, label, source) values (5417, 'LOS BARRERAS', 'cris'); +insert into lookups.city (id, label, source) values (5421, 'LOS GARZAS', 'cris'); +insert into lookups.city (id, label, source) values (5426, 'LOS VILLAREALES', 'cris'); +insert into lookups.city (id, label, source) values (5437, 'LOVING', 'cris'); +insert into lookups.city (id, label, source) values (5448, 'LUELLA', 'cris'); +insert into lookups.city (id, label, source) values (5460, 'LUTIE', 'cris'); +insert into lookups.city (id, label, source) values (5463, 'LYDIA', 'cris'); +insert into lookups.city (id, label, source) values (5470, 'LYTTON SPRINGS', 'cris'); +insert into lookups.city (id, label, source) values (5492, 'MAGNET', 'cris'); +insert into lookups.city (id, label, source) values (5494, 'MAGNOLIA BEACH', 'cris'); +insert into lookups.city (id, label, source) values (5499, 'MAGNOLIA SPRINGS', 'cris'); +insert into lookups.city (id, label, source) values (5511, 'MALTA', 'cris'); +insert into lookups.city (id, label, source) values (5521, 'MANHEIM', 'cris'); +insert into lookups.city (id, label, source) values (5524, 'MANKINS', 'cris'); +insert into lookups.city (id, label, source) values (5535, 'MAPLETON', 'cris'); +insert into lookups.city (id, label, source) values (5564, 'MARTINSVILLE', 'cris'); +insert into lookups.city (id, label, source) values (5570, 'MARYNEAL', 'cris'); +insert into lookups.city (id, label, source) values (5582, 'MATAGORDA', 'cris'); +insert into lookups.city (id, label, source) values (5592, 'MAXEY', 'cris'); +insert into lookups.city (id, label, source) values (5594, 'MAXWELL', 'cris'); +insert into lookups.city (id, label, source) values (5596, 'MAY', 'cris'); +insert into lookups.city (id, label, source) values (5599, 'MAYDELLE', 'cris'); +insert into lookups.city (id, label, source) values (5610, 'MAYSFIELD', 'cris'); +insert into lookups.city (id, label, source) values (5613, 'MCCAULLEY', 'cris'); +insert into lookups.city (id, label, source) values (5616, 'MCCOOK', 'cris'); +insert into lookups.city (id, label, source) values (5623, 'MCDADE', 'cris'); +insert into lookups.city (id, label, source) values (5641, 'MCLEOD', 'cris'); +insert into lookups.city (id, label, source) values (5642, 'MCMAHAN', 'cris'); +insert into lookups.city (id, label, source) values (5644, 'MCNAIR', 'cris'); +insert into lookups.city (id, label, source) values (5659, 'MEADOWS PLACE', 'cris'); +insert into lookups.city (id, label, source) values (5691, 'MENDOZA', 'cris'); +insert into lookups.city (id, label, source) values (5698, 'MERIT', 'cris'); +insert into lookups.city (id, label, source) values (5701, 'MERRELLTOWN', 'cris'); +insert into lookups.city (id, label, source) values (5716, 'MICO', 'cris'); +insert into lookups.city (id, label, source) values (5725, 'MIDKIFF', 'cris'); +insert into lookups.city (id, label, source) values (5768, 'MILLERSVIEW', 'cris'); +insert into lookups.city (id, label, source) values (5781, 'MINDEN', 'cris'); +insert into lookups.city (id, label, source) values (5783, 'MINERAL', 'cris'); +insert into lookups.city (id, label, source) values (5787, 'MINERVA', 'cris'); +insert into lookups.city (id, label, source) values (5798, 'MISSION VALLEY', 'cris'); +insert into lookups.city (id, label, source) values (5809, 'MOBILE CITY', 'cris'); +insert into lookups.city (id, label, source) values (5818, 'MONAVILLE', 'cris'); +insert into lookups.city (id, label, source) values (5823, 'MONROE CITY', 'cris'); +insert into lookups.city (id, label, source) values (5825, 'MONT', 'cris'); +insert into lookups.city (id, label, source) values (5826, 'MONTAGUE', 'cris'); +insert into lookups.city (id, label, source) values (5828, 'MONTALBA', 'cris'); +insert into lookups.city (id, label, source) values (5850, 'MOOREVILLE', 'cris'); +insert into lookups.city (id, label, source) values (5857, 'MORGAN MILL', 'cris'); +insert into lookups.city (id, label, source) values (5873, 'MOSCOW', 'cris'); +insert into lookups.city (id, label, source) values (5877, 'MOSS BLUFF', 'cris'); +insert into lookups.city (id, label, source) values (5878, 'MOSS HILL', 'cris'); +insert into lookups.city (id, label, source) values (5910, 'MOUNT UNION', 'cris'); +insert into lookups.city (id, label, source) values (5918, 'MOUNTAIN HOME', 'cris'); +insert into lookups.city (id, label, source) values (5920, 'MOUNTAIN SPRINGS', 'cris'); +insert into lookups.city (id, label, source) values (5942, 'MUMFORD', 'cris'); +insert into lookups.city (id, label, source) values (5962, 'MYRA', 'cris'); +insert into lookups.city (id, label, source) values (5967, 'NADA', 'cris'); +insert into lookups.city (id, label, source) values (5979, 'NAVARRO MILLS', 'cris'); +insert into lookups.city (id, label, source) values (5985, 'NECHES', 'cris'); +insert into lookups.city (id, label, source) values (5994, 'NEINDA', 'cris'); +insert into lookups.city (id, label, source) values (6000, 'NELSONVILLE', 'cris'); +insert into lookups.city (id, label, source) values (6002, 'NEMO', 'cris'); +insert into lookups.city (id, label, source) values (6008, 'NEW BADEN', 'cris'); +insert into lookups.city (id, label, source) values (6022, 'NEW FAIRVIEW', 'cris'); +insert into lookups.city (id, label, source) values (6054, 'NEW TAITON', 'cris'); +insert into lookups.city (id, label, source) values (6071, 'NEWSOME', 'cris'); +insert into lookups.city (id, label, source) values (6087, 'NOACK', 'cris'); +insert into lookups.city (id, label, source) values (6094, 'NOLAN', 'cris'); +insert into lookups.city (id, label, source) values (6105, 'NORIAS', 'cris'); +insert into lookups.city (id, label, source) values (6107, 'NORMANDY', 'cris'); +insert into lookups.city (id, label, source) values (6138, 'NORTH ZULCH', 'cris'); +insert into lookups.city (id, label, source) values (6154, 'NORTHRUP', 'cris'); +insert into lookups.city (id, label, source) values (6162, 'NOTREES', 'cris'); +insert into lookups.city (id, label, source) values (6171, 'NUGENT', 'cris'); +insert into lookups.city (id, label, source) values (6174, 'NURSERY', 'cris'); +insert into lookups.city (id, label, source) values (6204, 'OAK LEAF', 'cris'); +insert into lookups.city (id, label, source) values (6239, 'OAKVILLE', 'cris'); +insert into lookups.city (id, label, source) values (6247, 'OCEE', 'cris'); +insert into lookups.city (id, label, source) values (6272, 'OKLAUNION', 'cris'); +insert into lookups.city (id, label, source) values (6274, 'OLA', 'cris'); +insert into lookups.city (id, label, source) values (6299, 'OLD OCEAN', 'cris'); +insert into lookups.city (id, label, source) values (6310, 'OLD SALEM', 'cris'); +insert into lookups.city (id, label, source) values (6318, 'OLDEN', 'cris'); +insert into lookups.city (id, label, source) values (6319, 'OLDENBURG', 'cris'); +insert into lookups.city (id, label, source) values (6323, 'OLETHA', 'cris'); +insert into lookups.city (id, label, source) values (6338, 'OPLIN', 'cris'); +insert into lookups.city (id, label, source) values (6343, 'ORANGEDALE', 'cris'); +insert into lookups.city (id, label, source) values (6344, 'ORANGEFIELD', 'cris'); +insert into lookups.city (id, label, source) values (6362, 'OSCEOLA', 'cris'); +insert into lookups.city (id, label, source) values (6367, 'OTTO', 'cris'); +insert into lookups.city (id, label, source) values (6385, 'PAIGE', 'cris'); +insert into lookups.city (id, label, source) values (6386, 'PAINT CREEK', 'cris'); +insert into lookups.city (id, label, source) values (6394, 'PALISADES', 'cris'); +insert into lookups.city (id, label, source) values (6407, 'PALO PINTO', 'cris'); +insert into lookups.city (id, label, source) values (6414, 'PANDORA', 'cris'); +insert into lookups.city (id, label, source) values (6415, 'PANHANDLE', 'cris'); +insert into lookups.city (id, label, source) values (6422, 'PAPALOTE', 'cris'); +insert into lookups.city (id, label, source) values (6436, 'PARK SPRINGS', 'cris'); +insert into lookups.city (id, label, source) values (6473, 'PATRICIA', 'cris'); +insert into lookups.city (id, label, source) values (6479, 'PATTONVILLE', 'cris'); +insert into lookups.city (id, label, source) values (6482, 'PAWELEKVILLE', 'cris'); +insert into lookups.city (id, label, source) values (6494, 'PEAR RIDGE', 'cris'); +insert into lookups.city (id, label, source) values (6501, 'PEASTER', 'cris'); +insert into lookups.city (id, label, source) values (6517, 'PECOS CITY', 'cris'); +insert into lookups.city (id, label, source) values (6538, 'PENNINGTON', 'cris'); +insert into lookups.city (id, label, source) values (6540, 'PEORIA', 'cris'); +insert into lookups.city (id, label, source) values (6546, 'PERRIN', 'cris'); +insert into lookups.city (id, label, source) values (6547, 'PERRY', 'cris'); +insert into lookups.city (id, label, source) values (6549, 'PERRY LANDING', 'cris'); +insert into lookups.city (id, label, source) values (6553, 'PERSONVILLE', 'cris'); +insert into lookups.city (id, label, source) values (6560, 'PETERSVILLE', 'cris'); +insert into lookups.city (id, label, source) values (6562, 'PETTIBONE', 'cris'); +insert into lookups.city (id, label, source) values (6588, 'PICKTON', 'cris'); +insert into lookups.city (id, label, source) values (6592, 'PIERCE', 'cris'); +insert into lookups.city (id, label, source) values (6654, 'PIPE CREEK', 'cris'); +insert into lookups.city (id, label, source) values (6662, 'PLACEDO', 'cris'); +insert into lookups.city (id, label, source) values (6675, 'PLANTERSVILLE', 'cris'); +insert into lookups.city (id, label, source) values (6710, 'PLUM', 'cris'); +insert into lookups.city (id, label, source) values (6719, 'POETRY', 'cris'); +insert into lookups.city (id, label, source) values (6720, 'POINT ENTERPRISE', 'cris'); +insert into lookups.city (id, label, source) values (6722, 'POINT VENTURE', 'cris'); +insert into lookups.city (id, label, source) values (6725, 'POLLOK', 'cris'); +insert into lookups.city (id, label, source) values (6735, 'PONTOTOC', 'cris'); +insert into lookups.city (id, label, source) values (6738, 'POOLVILLE', 'cris'); +insert into lookups.city (id, label, source) values (6744, 'PORT ALTO', 'cris'); +insert into lookups.city (id, label, source) values (6751, 'PORT O''CONNOR', 'cris'); +insert into lookups.city (id, label, source) values (6756, 'PORTER', 'cris'); +insert into lookups.city (id, label, source) values (6770, 'POST OAK BEND', 'cris'); +insert into lookups.city (id, label, source) values (6776, 'POTTSVILLE', 'cris'); +insert into lookups.city (id, label, source) values (6777, 'POWDERLY', 'cris'); +insert into lookups.city (id, label, source) values (6783, 'PRAHA', 'cris'); +insert into lookups.city (id, label, source) values (6789, 'PRAIRIE HILL', 'cris'); +insert into lookups.city (id, label, source) values (6791, 'PRAIRIE LEA', 'cris'); +insert into lookups.city (id, label, source) values (6798, 'PRAIRIE POINT', 'cris'); +insert into lookups.city (id, label, source) values (6810, 'PRIDDY', 'cris'); +insert into lookups.city (id, label, source) values (6816, 'PROCTOR', 'cris'); +insert into lookups.city (id, label, source) values (6842, 'PUMPKIN', 'cris'); +insert into lookups.city (id, label, source) values (6844, 'PUNKIN CENTER', 'cris'); +insert into lookups.city (id, label, source) values (6848, 'PURDON', 'cris'); +insert into lookups.city (id, label, source) values (6851, 'PURSLEY', 'cris'); +insert into lookups.city (id, label, source) values (6864, 'QUEEN CITY', 'cris'); +insert into lookups.city (id, label, source) values (6866, 'QUIHI', 'cris'); +insert into lookups.city (id, label, source) values (6877, 'RACHAL', 'cris'); +insert into lookups.city (id, label, source) values (6884, 'RAINBOW', 'cris'); +insert into lookups.city (id, label, source) values (6885, 'RAISIN', 'cris'); +insert into lookups.city (id, label, source) values (6886, 'RALEIGH', 'cris'); +insert into lookups.city (id, label, source) values (6889, 'RAMIRENO', 'cris'); +insert into lookups.city (id, label, source) values (6904, 'RANDADO', 'cris'); +insert into lookups.city (id, label, source) values (6905, 'RANDOLPH', 'cris'); +insert into lookups.city (id, label, source) values (6922, 'RAYBURN', 'cris'); +insert into lookups.city (id, label, source) values (6928, 'RAYWOOD', 'cris'); +insert into lookups.city (id, label, source) values (6930, 'REAGAN', 'cris'); +insert into lookups.city (id, label, source) values (6952, 'RED GATE', 'cris'); +insert into lookups.city (id, label, source) values (6961, 'RED ROCK', 'cris'); +insert into lookups.city (id, label, source) values (6977, 'REEDVILLE', 'cris'); +insert into lookups.city (id, label, source) values (7010, 'RHINELAND', 'cris'); +insert into lookups.city (id, label, source) values (7013, 'RICARDO', 'cris'); +insert into lookups.city (id, label, source) values (7014, 'RICES CROSSING', 'cris'); +insert into lookups.city (id, label, source) values (7020, 'RIDGE', 'cris'); +insert into lookups.city (id, label, source) values (7031, 'RINCON', 'cris'); +insert into lookups.city (id, label, source) values (7032, 'RINGGOLD', 'cris'); +insert into lookups.city (id, label, source) values (7037, 'RIOS', 'cris'); +insert into lookups.city (id, label, source) values (7063, 'RIVIERA', 'cris'); +insert into lookups.city (id, label, source) values (7067, 'ROANE', 'cris'); +insert into lookups.city (id, label, source) values (7070, 'ROBBINS', 'cris'); +insert into lookups.city (id, label, source) values (7075, 'ROCHELLE', 'cris'); +insert into lookups.city (id, label, source) values (7084, 'ROCK ISLAND', 'cris'); +insert into lookups.city (id, label, source) values (7093, 'ROCKETT', 'cris'); +insert into lookups.city (id, label, source) values (7099, 'ROCKNE', 'cris'); +insert into lookups.city (id, label, source) values (7102, 'ROCKWOOD', 'cris'); +insert into lookups.city (id, label, source) values (7129, 'ROMA CREEK', 'cris'); +insert into lookups.city (id, label, source) values (7131, 'ROMAYOR', 'cris'); +insert into lookups.city (id, label, source) values (7140, 'ROSANKY', 'cris'); +insert into lookups.city (id, label, source) values (7152, 'ROSHARON', 'cris'); +insert into lookups.city (id, label, source) values (7159, 'ROSSVILLE', 'cris'); +insert into lookups.city (id, label, source) values (7175, 'ROYALTY', 'cris'); +insert into lookups.city (id, label, source) values (7188, 'RUMLEY', 'cris'); +insert into lookups.city (id, label, source) values (7202, 'RUTERSVILLE', 'cris'); +insert into lookups.city (id, label, source) values (7207, 'RYE', 'cris'); +insert into lookups.city (id, label, source) values (7218, 'SACUL', 'cris'); +insert into lookups.city (id, label, source) values (7223, 'SAGERTON', 'cris'); +insert into lookups.city (id, label, source) values (7249, 'SALINENO', 'cris'); +insert into lookups.city (id, label, source) values (7257, 'SALTILLO', 'cris'); +insert into lookups.city (id, label, source) values (7263, 'SAM RAYBURN', 'cris'); +insert into lookups.city (id, label, source) values (7264, 'SAMARIA', 'cris'); +insert into lookups.city (id, label, source) values (7272, 'SAN GABRIEL', 'cris'); +insert into lookups.city (id, label, source) values (7282, 'SAN MANUEL', 'cris'); +insert into lookups.city (id, label, source) values (7284, 'SAN MIGUEL', 'cris'); +insert into lookups.city (id, label, source) values (7288, 'SAN ROMAN', 'cris'); +insert into lookups.city (id, label, source) values (7290, 'SAN YGNACIO', 'cris'); +insert into lookups.city (id, label, source) values (7292, 'SANCTUARY', 'cris'); +insert into lookups.city (id, label, source) values (7315, 'SANDUSKY', 'cris'); +insert into lookups.city (id, label, source) values (7316, 'SANDY', 'cris'); +insert into lookups.city (id, label, source) values (7323, 'SANDY POINT', 'cris'); +insert into lookups.city (id, label, source) values (7327, 'SANTA CLARA', 'cris'); +insert into lookups.city (id, label, source) values (7328, 'SANTA ELENA', 'cris'); +insert into lookups.city (id, label, source) values (7333, 'SANTO', 'cris'); +insert into lookups.city (id, label, source) values (7336, 'SARAGOSA', 'cris'); +insert into lookups.city (id, label, source) values (7337, 'SARATOGA', 'cris'); +insert into lookups.city (id, label, source) values (7346, 'SARITA', 'cris'); +insert into lookups.city (id, label, source) values (7352, 'SATTLER', 'cris'); +insert into lookups.city (id, label, source) values (7356, 'SAVANNAH', 'cris'); +insert into lookups.city (id, label, source) values (7372, 'SCHROEDER', 'cris'); +insert into lookups.city (id, label, source) values (7375, 'SCHWERTNER', 'cris'); +insert into lookups.city (id, label, source) values (7389, 'SCROGGINS', 'cris'); +insert into lookups.city (id, label, source) values (7391, 'SCURRY', 'cris'); +insert into lookups.city (id, label, source) values (7413, 'SEGNO', 'cris'); +insert into lookups.city (id, label, source) values (7420, 'SELMAN CITY', 'cris'); +insert into lookups.city (id, label, source) values (7437, 'SEWARD JUNCTION', 'cris'); +insert into lookups.city (id, label, source) values (7465, 'SHAFTER', 'cris'); +insert into lookups.city (id, label, source) values (7475, 'SHARP', 'cris'); +insert into lookups.city (id, label, source) values (7490, 'SHEFFIELD', 'cris'); +insert into lookups.city (id, label, source) values (7493, 'SHELBYVILLE', 'cris'); +insert into lookups.city (id, label, source) values (7501, 'SHERIDAN', 'cris'); +insert into lookups.city (id, label, source) values (7527, 'SHIRO', 'cris'); +insert into lookups.city (id, label, source) values (7551, 'SILVER CITY', 'cris'); +insert into lookups.city (id, label, source) values (7562, 'SIMMS', 'cris'); +insert into lookups.city (id, label, source) values (7573, 'SISTERDALE', 'cris'); +insert into lookups.city (id, label, source) values (7594, 'SLIDELL', 'cris'); +insert into lookups.city (id, label, source) values (7597, 'SLOCUM', 'cris'); +insert into lookups.city (id, label, source) values (7602, 'SMETANA', 'cris'); +insert into lookups.city (id, label, source) values (7603, 'SMITH', 'cris'); +insert into lookups.city (id, label, source) values (7609, 'SMITH POINT', 'cris'); +insert into lookups.city (id, label, source) values (7616, 'SMITHSON VALLEY', 'cris'); +insert into lookups.city (id, label, source) values (7618, 'SMITHWICK', 'cris'); +insert into lookups.city (id, label, source) values (7673, 'SOUTH PURMELA', 'cris'); +insert into lookups.city (id, label, source) values (7699, 'SPANISH CAMP', 'cris'); +insert into lookups.city (id, label, source) values (7706, 'SPEAKS', 'cris'); +insert into lookups.city (id, label, source) values (7711, 'SPEEGLEVILLE', 'cris'); +insert into lookups.city (id, label, source) values (7714, 'SPICEWOOD', 'cris'); +insert into lookups.city (id, label, source) values (7722, 'SPRING BRANCH', 'cris'); +insert into lookups.city (id, label, source) values (7757, 'SPURGER', 'cris'); +insert into lookups.city (id, label, source) values (7764, 'STAIRTOWN', 'cris'); +insert into lookups.city (id, label, source) values (7771, 'STAPLES', 'cris'); +insert into lookups.city (id, label, source) values (7772, 'STAR', 'cris'); +insert into lookups.city (id, label, source) values (7776, 'STARTZVILLE', 'cris'); +insert into lookups.city (id, label, source) values (7782, 'STEEP HOLLOW', 'cris'); +insert into lookups.city (id, label, source) values (7814, 'STONEBURG', 'cris'); +insert into lookups.city (id, label, source) values (7815, 'STONEHAM', 'cris'); +insert into lookups.city (id, label, source) values (7854, 'SUBLIME', 'cris'); +insert into lookups.city (id, label, source) values (7857, 'SUGAR VALLEY', 'cris'); +insert into lookups.city (id, label, source) values (7870, 'SUMNER', 'cris'); +insert into lookups.city (id, label, source) values (7894, 'SUTTON', 'cris'); +insert into lookups.city (id, label, source) values (7913, 'SYLVESTER', 'cris'); +insert into lookups.city (id, label, source) values (7923, 'TALPA', 'cris'); +insert into lookups.city (id, label, source) values (7934, 'TARPLEY', 'cris'); +insert into lookups.city (id, label, source) values (7938, 'TARZAN', 'cris'); +insert into lookups.city (id, label, source) values (7944, 'TAVENER', 'cris'); +insert into lookups.city (id, label, source) values (7956, 'TELEPHONE', 'cris'); +insert into lookups.city (id, label, source) values (7957, 'TELFERNER', 'cris'); +insert into lookups.city (id, label, source) values (7958, 'TELICO', 'cris'); +insert into lookups.city (id, label, source) values (7967, 'TENNESSEE COLONY', 'cris'); +insert into lookups.city (id, label, source) values (7971, 'TERLINGUA', 'cris'); +insert into lookups.city (id, label, source) values (7989, 'THALIA', 'cris'); +insert into lookups.city (id, label, source) values (7997, 'THELMA', 'cris'); +insert into lookups.city (id, label, source) values (8001, 'THICKET', 'cris'); +insert into lookups.city (id, label, source) values (8006, 'THOMASTON', 'cris'); +insert into lookups.city (id, label, source) values (8011, 'THORNBERRY', 'cris'); +insert into lookups.city (id, label, source) values (8014, 'THORP SPRING', 'cris'); +insert into lookups.city (id, label, source) values (8025, 'THURBER', 'cris'); +insert into lookups.city (id, label, source) values (8035, 'TILMON', 'cris'); +insert into lookups.city (id, label, source) values (8050, 'TIVOLI', 'cris'); +insert into lookups.city (id, label, source) values (8061, 'TOLEDO', 'cris'); +insert into lookups.city (id, label, source) values (8063, 'TOLOSA', 'cris'); +insert into lookups.city (id, label, source) values (8069, 'TOURS', 'cris'); +insert into lookups.city (id, label, source) values (8070, 'TOW', 'cris'); +insert into lookups.city (id, label, source) values (8076, 'TOWN BLUFF', 'cris'); +insert into lookups.city (id, label, source) values (8084, 'TRAVIS', 'cris'); +insert into lookups.city (id, label, source) values (8087, 'TREASURE ISLAND', 'cris'); +insert into lookups.city (id, label, source) values (8101, 'TROUT CREEK', 'cris'); +insert into lookups.city (id, label, source) values (8103, 'TRUBY', 'cris'); +insert into lookups.city (id, label, source) values (8106, 'TRUMBULL', 'cris'); +insert into lookups.city (id, label, source) values (8116, 'TUNIS', 'cris'); +insert into lookups.city (id, label, source) values (8117, 'TUPELO', 'cris'); +insert into lookups.city (id, label, source) values (8124, 'TURNERTOWN', 'cris'); +insert into lookups.city (id, label, source) values (8144, 'UMBARGER', 'cris'); +insert into lookups.city (id, label, source) values (8159, 'UNION HIGH', 'cris'); +insert into lookups.city (id, label, source) values (8191, 'VALERA', 'cris'); +insert into lookups.city (id, label, source) values (8195, 'VALLEY JUNCTION', 'cris'); +insert into lookups.city (id, label, source) values (8198, 'VALLEY SPRING', 'cris'); +insert into lookups.city (id, label, source) values (8214, 'VANDERPOOL', 'cris'); +insert into lookups.city (id, label, source) values (8222, 'VAUGHAN', 'cris'); +insert into lookups.city (id, label, source) values (8224, 'VEALMOOR', 'cris'); +insert into lookups.city (id, label, source) values (8233, 'VERA', 'cris'); +insert into lookups.city (id, label, source) values (8254, 'VIEW', 'cris'); +insert into lookups.city (id, label, source) values (8267, 'VILLAGE MILLS', 'cris'); +insert into lookups.city (id, label, source) values (8284, 'VOLENTE', 'cris'); +insert into lookups.city (id, label, source) values (8286, 'VON ORMY', 'cris'); +insert into lookups.city (id, label, source) values (8289, 'VOTAW', 'cris'); +insert into lookups.city (id, label, source) values (8294, 'WADSWORTH', 'cris'); +insert into lookups.city (id, label, source) values (8295, 'WAGNER', 'cris'); +insert into lookups.city (id, label, source) values (8296, 'WAKA', 'cris'); +insert into lookups.city (id, label, source) values (8299, 'WALBURG', 'cris'); +insert into lookups.city (id, label, source) values (8316, 'WALL', 'cris'); +insert into lookups.city (id, label, source) values (8318, 'WALLISVILLE', 'cris'); +insert into lookups.city (id, label, source) values (8320, 'WALNUT BEND', 'cris'); +insert into lookups.city (id, label, source) values (8343, 'WARDA', 'cris'); +insert into lookups.city (id, label, source) values (8351, 'WARREN', 'cris'); +insert into lookups.city (id, label, source) values (8353, 'WARRENTON', 'cris'); +insert into lookups.city (id, label, source) values (8357, 'WASHINGTON', 'cris'); +insert into lookups.city (id, label, source) values (8360, 'WATER VALLEY', 'cris'); +insert into lookups.city (id, label, source) values (8373, 'WATT', 'cris'); +insert into lookups.city (id, label, source) values (8389, 'WEBBERVILLE', 'cris'); +insert into lookups.city (id, label, source) values (8391, 'WECHES', 'cris'); +insert into lookups.city (id, label, source) values (8392, 'WEEDHAVEN', 'cris'); +insert into lookups.city (id, label, source) values (8395, 'WEESATCHE', 'cris'); +insert into lookups.city (id, label, source) values (8401, 'WELCOME', 'cris'); +insert into lookups.city (id, label, source) values (8404, 'WELDON', 'cris'); +insert into lookups.city (id, label, source) values (8472, 'WESTHOFF', 'cris'); +insert into lookups.city (id, label, source) values (8479, 'WESTON LAKES', 'cris'); +insert into lookups.city (id, label, source) values (8482, 'WESTPHALIA', 'cris'); +insert into lookups.city (id, label, source) values (8495, 'WETMORE', 'cris'); +insert into lookups.city (id, label, source) values (8503, 'WHEELOCK', 'cris'); +insert into lookups.city (id, label, source) values (8534, 'WHITHARRAL', 'cris'); +insert into lookups.city (id, label, source) values (8539, 'WHITT', 'cris'); +insert into lookups.city (id, label, source) values (8540, 'WHITTON', 'cris'); +insert into lookups.city (id, label, source) values (8546, 'WIERGATE', 'cris'); +insert into lookups.city (id, label, source) values (8553, 'WILD PEACH', 'cris'); +insert into lookups.city (id, label, source) values (8581, 'WILLOW CITY', 'cris'); +insert into lookups.city (id, label, source) values (8604, 'WINCHELL', 'cris'); +insert into lookups.city (id, label, source) values (8632, 'WISE', 'cris'); +insert into lookups.city (id, label, source) values (8637, 'WODEN', 'cris'); +insert into lookups.city (id, label, source) values (8651, 'WOODBINE', 'cris'); +insert into lookups.city (id, label, source) values (8653, 'WOODBURY', 'cris'); +insert into lookups.city (id, label, source) values (8696, 'WRIGHTSBORO', 'cris'); +insert into lookups.city (id, label, source) values (8702, 'YANCEY', 'cris'); +insert into lookups.city (id, label, source) values (8728, 'ZEPHYR', 'cris'); +insert into lookups.city (id, label, source) values (8739, 'ZORN', 'cris'); +insert into lookups.city (id, label, source) values (8742, 'OAK RIDGE', 'cris'); +insert into lookups.city (id, label, source) values (8743, 'HILLCREST VILLAGE', 'cris'); +insert into lookups.city (id, label, source) values (8744, 'MUSTANG', 'cris'); +insert into lookups.city (id, label, source) values (8745, 'NOVICE', 'cris'); +insert into lookups.city (id, label, source) values (8746, 'PINEHURST', 'cris'); +insert into lookups.city (id, label, source) values (8747, 'PRAIRIE HILL', 'cris'); +insert into lookups.city (id, label, source) values (8748, 'RENO', 'cris'); +insert into lookups.city (id, label, source) values (8749, 'RETREAT', 'cris'); +insert into lookups.city (id, label, source) values (8750, 'SAN PEDRO', 'cris'); +insert into lookups.city (id, label, source) values (8752, 'THELMA', 'cris'); +insert into lookups.city (id, label, source) values (8753, 'RIOMEDINA', 'cris'); +insert into lookups.city (id, label, source) values (8754, 'ACE', 'cris'); +insert into lookups.city (id, label, source) values (8755, 'ACTON', 'cris'); +insert into lookups.city (id, label, source) values (8756, 'ADAMSVILLE', 'cris'); +insert into lookups.city (id, label, source) values (8757, 'ALBERT', 'cris'); +insert into lookups.city (id, label, source) values (8758, 'ALLISON', 'cris'); +insert into lookups.city (id, label, source) values (8759, 'ARMSTRONG', 'cris'); +insert into lookups.city (id, label, source) values (8760, 'BLACK JACK', 'cris'); +insert into lookups.city (id, label, source) values (8761, 'BRAZOS BEND', 'cris'); +insert into lookups.city (id, label, source) values (8762, 'BROOKESMITH', 'cris'); +insert into lookups.city (id, label, source) values (8763, 'BRUSHY CREEK', 'cris'); +insert into lookups.city (id, label, source) values (8764, 'BUCKHORN', 'cris'); +insert into lookups.city (id, label, source) values (8765, 'CALL', 'cris'); +insert into lookups.city (id, label, source) values (8766, 'CARANCAHUA', 'cris'); +insert into lookups.city (id, label, source) values (8767, 'CASHION', 'cris'); +insert into lookups.city (id, label, source) values (8768, 'CAWTHON', 'cris'); +insert into lookups.city (id, label, source) values (8769, 'CHALK MOUNTAIN', 'cris'); +insert into lookups.city (id, label, source) values (8770, 'CIRCLEVILLE', 'cris'); +insert into lookups.city (id, label, source) values (8771, 'CLAIREMONT', 'cris'); +insert into lookups.city (id, label, source) values (8772, 'CLAYTON', 'cris'); +insert into lookups.city (id, label, source) values (8773, 'COLLEGEPORT', 'cris'); +insert into lookups.city (id, label, source) values (8774, 'CORNUDAS', 'cris'); +insert into lookups.city (id, label, source) values (8775, 'COTTON CENTER', 'cris'); +insert into lookups.city (id, label, source) values (8776, 'COYANOSA', 'cris'); +insert into lookups.city (id, label, source) values (8777, 'DANCIGER', 'cris'); +insert into lookups.city (id, label, source) values (8778, 'DECORDOVA', 'cris'); +insert into lookups.city (id, label, source) values (8779, 'DEMI-JOHN', 'cris'); +insert into lookups.city (id, label, source) values (8780, 'DIALVILLE', 'cris'); +insert into lookups.city (id, label, source) values (8781, 'DOUGHERTY', 'cris'); +insert into lookups.city (id, label, source) values (8782, 'EGYPT', 'cris'); +insert into lookups.city (id, label, source) values (8783, 'ELM GROVE', 'cris'); +insert into lookups.city (id, label, source) values (8784, 'ELMATON', 'cris'); +insert into lookups.city (id, label, source) values (8785, 'EOLA', 'cris'); +insert into lookups.city (id, label, source) values (8786, 'FAIRMONT', 'cris'); +insert into lookups.city (id, label, source) values (8787, 'FARNSWORTH', 'cris'); +insert into lookups.city (id, label, source) values (8788, 'FIELDS STORE', 'cris'); +insert into lookups.city (id, label, source) values (8789, 'GARFIELD', 'cris'); +insert into lookups.city (id, label, source) values (8790, 'GENEVA', 'cris'); +insert into lookups.city (id, label, source) values (8791, 'GOBER', 'cris'); +insert into lookups.city (id, label, source) values (8792, 'GREENWOOD', 'cris'); +insert into lookups.city (id, label, source) values (8793, 'GUADALUPE', 'cris'); +insert into lookups.city (id, label, source) values (8794, 'GUERRA', 'cris'); +insert into lookups.city (id, label, source) values (8795, 'HAWK COVE', 'cris'); +insert into lookups.city (id, label, source) values (8796, 'HIDEAWAY', 'cris'); +insert into lookups.city (id, label, source) values (8797, 'HOPE', 'cris'); +insert into lookups.city (id, label, source) values (8798, 'HUFFINES', 'cris'); +insert into lookups.city (id, label, source) values (8799, 'IAGO', 'cris'); +insert into lookups.city (id, label, source) values (8800, 'IVANHOE', 'cris'); +insert into lookups.city (id, label, source) values (8801, 'JAMESTOWN', 'cris'); +insert into lookups.city (id, label, source) values (8802, 'KENT', 'cris'); +insert into lookups.city (id, label, source) values (8803, 'KLONDIKE', 'cris'); +insert into lookups.city (id, label, source) values (8804, 'LA GLORIA', 'cris'); +insert into lookups.city (id, label, source) values (8805, 'LAGUNA PARK', 'cris'); +insert into lookups.city (id, label, source) values (8806, 'LASALLE', 'cris'); +insert into lookups.city (id, label, source) values (8807, 'LIBERTY', 'cris'); +insert into lookups.city (id, label, source) values (8808, 'LIVELY', 'cris'); +insert into lookups.city (id, label, source) values (8809, 'LONDON', 'cris'); +insert into lookups.city (id, label, source) values (8810, 'LONE OAK', 'cris'); +insert into lookups.city (id, label, source) values (8811, 'LOS ARRIEROS', 'cris'); +insert into lookups.city (id, label, source) values (8812, 'MANCHESTER', 'cris'); +insert into lookups.city (id, label, source) values (8813, 'MAYFLOWER', 'cris'); +insert into lookups.city (id, label, source) values (8814, 'MILLER GROVE', 'cris'); +insert into lookups.city (id, label, source) values (8815, 'MOUNT SELMAN', 'cris'); +insert into lookups.city (id, label, source) values (8816, 'NEEDMORE', 'cris'); +insert into lookups.city (id, label, source) values (8817, 'NEWPORT', 'cris'); +insert into lookups.city (id, label, source) values (8818, 'OAK ISLAND', 'cris'); +insert into lookups.city (id, label, source) values (8819, 'OAKLAND', 'cris'); +insert into lookups.city (id, label, source) values (8820, 'OLD UNION', 'cris'); +insert into lookups.city (id, label, source) values (8821, 'ORLA', 'cris'); +insert into lookups.city (id, label, source) values (8822, 'OTEY', 'cris'); +insert into lookups.city (id, label, source) values (8823, 'OWENS', 'cris'); +insert into lookups.city (id, label, source) values (8824, 'PALOMA CREEK', 'cris'); +insert into lookups.city (id, label, source) values (8825, 'PINE GROVE', 'cris'); +insert into lookups.city (id, label, source) values (8826, 'PINE SPRINGS', 'cris'); +insert into lookups.city (id, label, source) values (8827, 'PLEDGER', 'cris'); +insert into lookups.city (id, label, source) values (8828, 'PRICE', 'cris'); +insert into lookups.city (id, label, source) values (8829, 'PROGRESS', 'cris'); +insert into lookups.city (id, label, source) values (8830, 'PROVIDENCE', 'cris'); +insert into lookups.city (id, label, source) values (8831, 'PROVIDENCE', 'cris'); +insert into lookups.city (id, label, source) values (8832, 'QUAIL', 'cris'); +insert into lookups.city (id, label, source) values (8833, 'RANCHOS PENITAS WEST', 'cris'); +insert into lookups.city (id, label, source) values (8834, 'RATCLIFF', 'cris'); +insert into lookups.city (id, label, source) values (8835, 'REAGAN WELLS', 'cris'); +insert into lookups.city (id, label, source) values (8836, 'SAMNORWOOD', 'cris'); +insert into lookups.city (id, label, source) values (8837, 'SANTA ANNA', 'cris'); +insert into lookups.city (id, label, source) values (8838, 'SARGENT', 'cris'); +insert into lookups.city (id, label, source) values (8839, 'SCRAPPIN VALLEY', 'cris'); +insert into lookups.city (id, label, source) values (8840, 'SELFS', 'cris'); +insert into lookups.city (id, label, source) values (8841, 'SHANKLEVILLE', 'cris'); +insert into lookups.city (id, label, source) values (8842, 'SHERWOOD SHORES', 'cris'); +insert into lookups.city (id, label, source) values (8843, 'SIMPSONVILLE', 'cris'); +insert into lookups.city (id, label, source) values (8844, 'SMYRNA', 'cris'); +insert into lookups.city (id, label, source) values (8845, 'SOUTH BEND', 'cris'); +insert into lookups.city (id, label, source) values (8846, 'SPARENBERG', 'cris'); +insert into lookups.city (id, label, source) values (8847, 'ST. PAUL', 'cris'); +insert into lookups.city (id, label, source) values (8848, 'SWEET HOME', 'cris'); +insert into lookups.city (id, label, source) values (8849, 'TARKINGTON PRAIRIE', 'cris'); +insert into lookups.city (id, label, source) values (8850, 'TAYLOR LANDING', 'cris'); +insert into lookups.city (id, label, source) values (8851, 'UNION VALLEY', 'cris'); +insert into lookups.city (id, label, source) values (8852, 'VALLEY VIEW', 'cris'); +insert into lookups.city (id, label, source) values (8853, 'VASHTI', 'cris'); +insert into lookups.city (id, label, source) values (8854, 'WATSON', 'cris'); +insert into lookups.city (id, label, source) values (8855, 'WEST POINT', 'cris'); +insert into lookups.city (id, label, source) values (8856, 'WHEATLAND', 'cris'); +insert into lookups.city (id, label, source) values (8857, 'WHITEHALL', 'cris'); +insert into lookups.city (id, label, source) values (8858, 'WINCHESTER', 'cris'); +insert into lookups.city (id, label, source) values (8859, 'WOODLAWN', 'cris'); +insert into lookups.city (id, label, source) values (8860, 'WOODROW', 'cris'); +insert into lookups.city (id, label, source) values (8861, 'YARRELLTON', 'cris'); +insert into lookups.city (id, label, source) values (8862, 'VOLENTE VILLAGE', 'cris'); +insert into lookups.city (id, label, source) values (99999, 'UNKNOWN', 'cris'); +insert into lookups.cnty (id, label, source) values (1, 'Anderson', 'cris'); +insert into lookups.cnty (id, label, source) values (2, 'Andrews', 'cris'); +insert into lookups.cnty (id, label, source) values (3, 'Angelina', 'cris'); +insert into lookups.cnty (id, label, source) values (4, 'Aransas', 'cris'); +insert into lookups.cnty (id, label, source) values (5, 'Archer', 'cris'); +insert into lookups.cnty (id, label, source) values (6, 'Armstrong', 'cris'); +insert into lookups.cnty (id, label, source) values (7, 'Atascosa', 'cris'); +insert into lookups.cnty (id, label, source) values (8, 'Austin', 'cris'); +insert into lookups.cnty (id, label, source) values (9, 'Bailey', 'cris'); +insert into lookups.cnty (id, label, source) values (10, 'Bandera', 'cris'); +insert into lookups.cnty (id, label, source) values (11, 'Bastrop', 'cris'); +insert into lookups.cnty (id, label, source) values (12, 'Baylor', 'cris'); +insert into lookups.cnty (id, label, source) values (13, 'Bee', 'cris'); +insert into lookups.cnty (id, label, source) values (14, 'Bell', 'cris'); +insert into lookups.cnty (id, label, source) values (15, 'Bexar', 'cris'); +insert into lookups.cnty (id, label, source) values (16, 'Blanco', 'cris'); +insert into lookups.cnty (id, label, source) values (17, 'Borden', 'cris'); +insert into lookups.cnty (id, label, source) values (18, 'Bosque', 'cris'); +insert into lookups.cnty (id, label, source) values (19, 'Bowie', 'cris'); +insert into lookups.cnty (id, label, source) values (20, 'Brazoria', 'cris'); +insert into lookups.cnty (id, label, source) values (21, 'Brazos', 'cris'); +insert into lookups.cnty (id, label, source) values (22, 'Brewster', 'cris'); +insert into lookups.cnty (id, label, source) values (23, 'Briscoe', 'cris'); +insert into lookups.cnty (id, label, source) values (24, 'Brooks', 'cris'); +insert into lookups.cnty (id, label, source) values (25, 'Brown', 'cris'); +insert into lookups.cnty (id, label, source) values (26, 'Burleson', 'cris'); +insert into lookups.cnty (id, label, source) values (27, 'Burnet', 'cris'); +insert into lookups.cnty (id, label, source) values (28, 'Caldwell', 'cris'); +insert into lookups.cnty (id, label, source) values (29, 'Calhoun', 'cris'); +insert into lookups.cnty (id, label, source) values (30, 'Callahan', 'cris'); +insert into lookups.cnty (id, label, source) values (31, 'Cameron', 'cris'); +insert into lookups.cnty (id, label, source) values (32, 'Camp', 'cris'); +insert into lookups.cnty (id, label, source) values (33, 'Carson', 'cris'); +insert into lookups.cnty (id, label, source) values (34, 'Cass', 'cris'); +insert into lookups.cnty (id, label, source) values (35, 'Castro', 'cris'); +insert into lookups.cnty (id, label, source) values (36, 'Chambers', 'cris'); +insert into lookups.cnty (id, label, source) values (37, 'Cherokee', 'cris'); +insert into lookups.cnty (id, label, source) values (38, 'Childress', 'cris'); +insert into lookups.cnty (id, label, source) values (39, 'Clay', 'cris'); +insert into lookups.cnty (id, label, source) values (40, 'Cochran', 'cris'); +insert into lookups.cnty (id, label, source) values (41, 'Coke', 'cris'); +insert into lookups.cnty (id, label, source) values (42, 'Coleman', 'cris'); +insert into lookups.cnty (id, label, source) values (43, 'Collin', 'cris'); +insert into lookups.cnty (id, label, source) values (44, 'Collingsworth', 'cris'); +insert into lookups.cnty (id, label, source) values (45, 'Colorado', 'cris'); +insert into lookups.cnty (id, label, source) values (46, 'Comal', 'cris'); +insert into lookups.cnty (id, label, source) values (47, 'Comanche', 'cris'); +insert into lookups.cnty (id, label, source) values (48, 'Concho', 'cris'); +insert into lookups.cnty (id, label, source) values (49, 'Cooke', 'cris'); +insert into lookups.cnty (id, label, source) values (50, 'Coryell', 'cris'); +insert into lookups.cnty (id, label, source) values (51, 'Cottle', 'cris'); +insert into lookups.cnty (id, label, source) values (52, 'Crane', 'cris'); +insert into lookups.cnty (id, label, source) values (53, 'Crockett', 'cris'); +insert into lookups.cnty (id, label, source) values (54, 'Crosby', 'cris'); +insert into lookups.cnty (id, label, source) values (55, 'Culberson', 'cris'); +insert into lookups.cnty (id, label, source) values (56, 'Dallam', 'cris'); +insert into lookups.cnty (id, label, source) values (57, 'Dallas', 'cris'); +insert into lookups.cnty (id, label, source) values (58, 'Dawson', 'cris'); +insert into lookups.cnty (id, label, source) values (59, 'Deaf Smith', 'cris'); +insert into lookups.cnty (id, label, source) values (60, 'Delta', 'cris'); +insert into lookups.cnty (id, label, source) values (61, 'Denton', 'cris'); +insert into lookups.cnty (id, label, source) values (62, 'Dewitt', 'cris'); +insert into lookups.cnty (id, label, source) values (63, 'Dickens', 'cris'); +insert into lookups.cnty (id, label, source) values (64, 'Dimmit', 'cris'); +insert into lookups.cnty (id, label, source) values (65, 'Donley', 'cris'); +insert into lookups.cnty (id, label, source) values (66, 'Duval', 'cris'); +insert into lookups.cnty (id, label, source) values (67, 'Eastland', 'cris'); +insert into lookups.cnty (id, label, source) values (68, 'Ector', 'cris'); +insert into lookups.cnty (id, label, source) values (69, 'Edwards', 'cris'); +insert into lookups.cnty (id, label, source) values (70, 'Ellis', 'cris'); +insert into lookups.cnty (id, label, source) values (71, 'El Paso', 'cris'); +insert into lookups.cnty (id, label, source) values (72, 'Erath', 'cris'); +insert into lookups.cnty (id, label, source) values (73, 'Falls', 'cris'); +insert into lookups.cnty (id, label, source) values (74, 'Fannin', 'cris'); +insert into lookups.cnty (id, label, source) values (75, 'Fayette', 'cris'); +insert into lookups.cnty (id, label, source) values (76, 'Fisher', 'cris'); +insert into lookups.cnty (id, label, source) values (77, 'Floyd', 'cris'); +insert into lookups.cnty (id, label, source) values (78, 'Foard', 'cris'); +insert into lookups.cnty (id, label, source) values (79, 'Fort Bend', 'cris'); +insert into lookups.cnty (id, label, source) values (80, 'Franklin', 'cris'); +insert into lookups.cnty (id, label, source) values (81, 'Freestone', 'cris'); +insert into lookups.cnty (id, label, source) values (82, 'Frio', 'cris'); +insert into lookups.cnty (id, label, source) values (83, 'Gaines', 'cris'); +insert into lookups.cnty (id, label, source) values (84, 'Galveston', 'cris'); +insert into lookups.cnty (id, label, source) values (85, 'Garza', 'cris'); +insert into lookups.cnty (id, label, source) values (86, 'Gillespie', 'cris'); +insert into lookups.cnty (id, label, source) values (87, 'Glasscock', 'cris'); +insert into lookups.cnty (id, label, source) values (88, 'Goliad', 'cris'); +insert into lookups.cnty (id, label, source) values (89, 'Gonzales', 'cris'); +insert into lookups.cnty (id, label, source) values (90, 'Gray', 'cris'); +insert into lookups.cnty (id, label, source) values (91, 'Grayson', 'cris'); +insert into lookups.cnty (id, label, source) values (92, 'Gregg', 'cris'); +insert into lookups.cnty (id, label, source) values (93, 'Grimes', 'cris'); +insert into lookups.cnty (id, label, source) values (94, 'Guadalupe', 'cris'); +insert into lookups.cnty (id, label, source) values (95, 'Hale', 'cris'); +insert into lookups.cnty (id, label, source) values (96, 'Hall', 'cris'); +insert into lookups.cnty (id, label, source) values (97, 'Hamilton', 'cris'); +insert into lookups.cnty (id, label, source) values (98, 'Hansford', 'cris'); +insert into lookups.cnty (id, label, source) values (99, 'Hardeman', 'cris'); +insert into lookups.cnty (id, label, source) values (100, 'Hardin', 'cris'); +insert into lookups.cnty (id, label, source) values (101, 'Harris', 'cris'); +insert into lookups.cnty (id, label, source) values (102, 'Harrison', 'cris'); +insert into lookups.cnty (id, label, source) values (103, 'Hartley', 'cris'); +insert into lookups.cnty (id, label, source) values (104, 'Haskell', 'cris'); +insert into lookups.cnty (id, label, source) values (105, 'Hays', 'cris'); +insert into lookups.cnty (id, label, source) values (106, 'Hemphill', 'cris'); +insert into lookups.cnty (id, label, source) values (107, 'Henderson', 'cris'); +insert into lookups.cnty (id, label, source) values (108, 'Hidalgo', 'cris'); +insert into lookups.cnty (id, label, source) values (109, 'Hill', 'cris'); +insert into lookups.cnty (id, label, source) values (110, 'Hockley', 'cris'); +insert into lookups.cnty (id, label, source) values (111, 'Hood', 'cris'); +insert into lookups.cnty (id, label, source) values (112, 'Hopkins', 'cris'); +insert into lookups.cnty (id, label, source) values (113, 'Houston', 'cris'); +insert into lookups.cnty (id, label, source) values (114, 'Howard', 'cris'); +insert into lookups.cnty (id, label, source) values (115, 'Hudspeth', 'cris'); +insert into lookups.cnty (id, label, source) values (116, 'Hunt', 'cris'); +insert into lookups.cnty (id, label, source) values (117, 'Hutchinson', 'cris'); +insert into lookups.cnty (id, label, source) values (118, 'Irion', 'cris'); +insert into lookups.cnty (id, label, source) values (119, 'Jack', 'cris'); +insert into lookups.cnty (id, label, source) values (120, 'Jackson', 'cris'); +insert into lookups.cnty (id, label, source) values (121, 'Jasper', 'cris'); +insert into lookups.cnty (id, label, source) values (122, 'Jeff Davis', 'cris'); +insert into lookups.cnty (id, label, source) values (123, 'Jefferson', 'cris'); +insert into lookups.cnty (id, label, source) values (124, 'Jim Hogg', 'cris'); +insert into lookups.cnty (id, label, source) values (125, 'Jim Wells', 'cris'); +insert into lookups.cnty (id, label, source) values (126, 'Johnson', 'cris'); +insert into lookups.cnty (id, label, source) values (127, 'Jones', 'cris'); +insert into lookups.cnty (id, label, source) values (128, 'Karnes', 'cris'); +insert into lookups.cnty (id, label, source) values (129, 'Kaufman', 'cris'); +insert into lookups.cnty (id, label, source) values (130, 'Kendall', 'cris'); +insert into lookups.cnty (id, label, source) values (131, 'Kenedy', 'cris'); +insert into lookups.cnty (id, label, source) values (132, 'Kent', 'cris'); +insert into lookups.cnty (id, label, source) values (133, 'Kerr', 'cris'); +insert into lookups.cnty (id, label, source) values (134, 'Kimble', 'cris'); +insert into lookups.cnty (id, label, source) values (135, 'King', 'cris'); +insert into lookups.cnty (id, label, source) values (136, 'Kinney', 'cris'); +insert into lookups.cnty (id, label, source) values (137, 'Kleberg', 'cris'); +insert into lookups.cnty (id, label, source) values (138, 'Knox', 'cris'); +insert into lookups.cnty (id, label, source) values (139, 'Lamar', 'cris'); +insert into lookups.cnty (id, label, source) values (140, 'Lamb', 'cris'); +insert into lookups.cnty (id, label, source) values (141, 'Lampasas', 'cris'); +insert into lookups.cnty (id, label, source) values (142, 'La Salle', 'cris'); +insert into lookups.cnty (id, label, source) values (143, 'Lavaca', 'cris'); +insert into lookups.cnty (id, label, source) values (144, 'Lee', 'cris'); +insert into lookups.cnty (id, label, source) values (145, 'Leon', 'cris'); +insert into lookups.cnty (id, label, source) values (146, 'Liberty', 'cris'); +insert into lookups.cnty (id, label, source) values (147, 'Limestone', 'cris'); +insert into lookups.cnty (id, label, source) values (148, 'Lipscomb', 'cris'); +insert into lookups.cnty (id, label, source) values (149, 'Live Oak', 'cris'); +insert into lookups.cnty (id, label, source) values (150, 'Llano', 'cris'); +insert into lookups.cnty (id, label, source) values (151, 'Loving', 'cris'); +insert into lookups.cnty (id, label, source) values (152, 'Lubbock', 'cris'); +insert into lookups.cnty (id, label, source) values (153, 'Lynn', 'cris'); +insert into lookups.cnty (id, label, source) values (154, 'Madison', 'cris'); +insert into lookups.cnty (id, label, source) values (155, 'Marion', 'cris'); +insert into lookups.cnty (id, label, source) values (156, 'Martin', 'cris'); +insert into lookups.cnty (id, label, source) values (157, 'Mason', 'cris'); +insert into lookups.cnty (id, label, source) values (158, 'Matagorda', 'cris'); +insert into lookups.cnty (id, label, source) values (159, 'Maverick', 'cris'); +insert into lookups.cnty (id, label, source) values (160, 'McCulloch', 'cris'); +insert into lookups.cnty (id, label, source) values (161, 'McLennan', 'cris'); +insert into lookups.cnty (id, label, source) values (162, 'McMullen', 'cris'); +insert into lookups.cnty (id, label, source) values (163, 'Medina', 'cris'); +insert into lookups.cnty (id, label, source) values (164, 'Menard', 'cris'); +insert into lookups.cnty (id, label, source) values (165, 'Midland', 'cris'); +insert into lookups.cnty (id, label, source) values (166, 'Milam', 'cris'); +insert into lookups.cnty (id, label, source) values (167, 'Mills', 'cris'); +insert into lookups.cnty (id, label, source) values (168, 'Mitchell', 'cris'); +insert into lookups.cnty (id, label, source) values (169, 'Montague', 'cris'); +insert into lookups.cnty (id, label, source) values (170, 'Montgomery', 'cris'); +insert into lookups.cnty (id, label, source) values (171, 'Moore', 'cris'); +insert into lookups.cnty (id, label, source) values (172, 'Morris', 'cris'); +insert into lookups.cnty (id, label, source) values (173, 'Motley', 'cris'); +insert into lookups.cnty (id, label, source) values (174, 'Nacogdoches', 'cris'); +insert into lookups.cnty (id, label, source) values (175, 'Navarro', 'cris'); +insert into lookups.cnty (id, label, source) values (176, 'Newton', 'cris'); +insert into lookups.cnty (id, label, source) values (177, 'Nolan', 'cris'); +insert into lookups.cnty (id, label, source) values (178, 'Nueces', 'cris'); +insert into lookups.cnty (id, label, source) values (179, 'Ochiltree', 'cris'); +insert into lookups.cnty (id, label, source) values (180, 'Oldham', 'cris'); +insert into lookups.cnty (id, label, source) values (181, 'Orange', 'cris'); +insert into lookups.cnty (id, label, source) values (182, 'Palo Pinto', 'cris'); +insert into lookups.cnty (id, label, source) values (183, 'Panola', 'cris'); +insert into lookups.cnty (id, label, source) values (184, 'Parker', 'cris'); +insert into lookups.cnty (id, label, source) values (185, 'Parmer', 'cris'); +insert into lookups.cnty (id, label, source) values (186, 'Pecos', 'cris'); +insert into lookups.cnty (id, label, source) values (187, 'Polk', 'cris'); +insert into lookups.cnty (id, label, source) values (188, 'Potter', 'cris'); +insert into lookups.cnty (id, label, source) values (189, 'Presidio', 'cris'); +insert into lookups.cnty (id, label, source) values (190, 'Rains', 'cris'); +insert into lookups.cnty (id, label, source) values (191, 'Randall', 'cris'); +insert into lookups.cnty (id, label, source) values (192, 'Reagan', 'cris'); +insert into lookups.cnty (id, label, source) values (193, 'Real', 'cris'); +insert into lookups.cnty (id, label, source) values (194, 'Red River', 'cris'); +insert into lookups.cnty (id, label, source) values (195, 'Reeves', 'cris'); +insert into lookups.cnty (id, label, source) values (196, 'Refugio', 'cris'); +insert into lookups.cnty (id, label, source) values (197, 'Roberts', 'cris'); +insert into lookups.cnty (id, label, source) values (198, 'Robertson', 'cris'); +insert into lookups.cnty (id, label, source) values (199, 'Rockwall', 'cris'); +insert into lookups.cnty (id, label, source) values (200, 'Runnels', 'cris'); +insert into lookups.cnty (id, label, source) values (201, 'Rusk', 'cris'); +insert into lookups.cnty (id, label, source) values (202, 'Sabine', 'cris'); +insert into lookups.cnty (id, label, source) values (203, 'San Augustine', 'cris'); +insert into lookups.cnty (id, label, source) values (204, 'San Jacinto', 'cris'); +insert into lookups.cnty (id, label, source) values (205, 'San Patricio', 'cris'); +insert into lookups.cnty (id, label, source) values (206, 'San Saba', 'cris'); +insert into lookups.cnty (id, label, source) values (207, 'Schleicher', 'cris'); +insert into lookups.cnty (id, label, source) values (208, 'Scurry', 'cris'); +insert into lookups.cnty (id, label, source) values (209, 'Shackelford', 'cris'); +insert into lookups.cnty (id, label, source) values (210, 'Shelby', 'cris'); +insert into lookups.cnty (id, label, source) values (211, 'Sherman', 'cris'); +insert into lookups.cnty (id, label, source) values (212, 'Smith', 'cris'); +insert into lookups.cnty (id, label, source) values (213, 'Somervell', 'cris'); +insert into lookups.cnty (id, label, source) values (214, 'Starr', 'cris'); +insert into lookups.cnty (id, label, source) values (215, 'Stephens', 'cris'); +insert into lookups.cnty (id, label, source) values (216, 'Sterling', 'cris'); +insert into lookups.cnty (id, label, source) values (217, 'Stonewall', 'cris'); +insert into lookups.cnty (id, label, source) values (218, 'Sutton', 'cris'); +insert into lookups.cnty (id, label, source) values (219, 'Swisher', 'cris'); +insert into lookups.cnty (id, label, source) values (220, 'Tarrant', 'cris'); +insert into lookups.cnty (id, label, source) values (221, 'Taylor', 'cris'); +insert into lookups.cnty (id, label, source) values (222, 'Terrell', 'cris'); +insert into lookups.cnty (id, label, source) values (223, 'Terry', 'cris'); +insert into lookups.cnty (id, label, source) values (224, 'Throckmorton', 'cris'); +insert into lookups.cnty (id, label, source) values (225, 'Titus', 'cris'); +insert into lookups.cnty (id, label, source) values (226, 'Tom Green', 'cris'); +insert into lookups.cnty (id, label, source) values (227, 'Travis', 'cris'); +insert into lookups.cnty (id, label, source) values (228, 'Trinity', 'cris'); +insert into lookups.cnty (id, label, source) values (229, 'Tyler', 'cris'); +insert into lookups.cnty (id, label, source) values (230, 'Upshur', 'cris'); +insert into lookups.cnty (id, label, source) values (231, 'Upton', 'cris'); +insert into lookups.cnty (id, label, source) values (232, 'Uvalde', 'cris'); +insert into lookups.cnty (id, label, source) values (233, 'Val Verde', 'cris'); +insert into lookups.cnty (id, label, source) values (234, 'Van Zandt', 'cris'); +insert into lookups.cnty (id, label, source) values (235, 'Victoria', 'cris'); +insert into lookups.cnty (id, label, source) values (236, 'Walker', 'cris'); +insert into lookups.cnty (id, label, source) values (237, 'Waller', 'cris'); +insert into lookups.cnty (id, label, source) values (238, 'Ward', 'cris'); +insert into lookups.cnty (id, label, source) values (239, 'Washington', 'cris'); +insert into lookups.cnty (id, label, source) values (240, 'Webb', 'cris'); +insert into lookups.cnty (id, label, source) values (241, 'Wharton', 'cris'); +insert into lookups.cnty (id, label, source) values (242, 'Wheeler', 'cris'); +insert into lookups.cnty (id, label, source) values (243, 'Wichita', 'cris'); +insert into lookups.cnty (id, label, source) values (244, 'Wilbarger', 'cris'); +insert into lookups.cnty (id, label, source) values (245, 'Willacy', 'cris'); +insert into lookups.cnty (id, label, source) values (246, 'Williamson', 'cris'); +insert into lookups.cnty (id, label, source) values (247, 'Wilson', 'cris'); +insert into lookups.cnty (id, label, source) values (248, 'Winkler', 'cris'); +insert into lookups.cnty (id, label, source) values (249, 'Wise', 'cris'); +insert into lookups.cnty (id, label, source) values (250, 'Wood', 'cris'); +insert into lookups.cnty (id, label, source) values (251, 'Yoakum', 'cris'); +insert into lookups.cnty (id, label, source) values (252, 'Young', 'cris'); +insert into lookups.cnty (id, label, source) values (253, 'Zapata', 'cris'); +insert into lookups.cnty (id, label, source) values (254, 'Zavala', 'cris'); +insert into lookups.collsn (id, label, source) values (1, 'ONE MOTOR VEHICLE - GOING STRAIGHT', 'cris'); +insert into lookups.collsn (id, label, source) values (2, 'ONE MOTOR VEHICLE - TURNING RIGHT', 'cris'); +insert into lookups.collsn (id, label, source) values (3, 'ONE MOTOR VEHICLE - TURNING LEFT', 'cris'); +insert into lookups.collsn (id, label, source) values (4, 'ONE MOTOR VEHICLE - BACKING', 'cris'); +insert into lookups.collsn (id, label, source) values (5, 'ONE MOTOR VEHICLE - OTHER', 'cris'); +insert into lookups.collsn (id, label, source) values (10, 'ANGLE - BOTH GOING STRAIGHT', 'cris'); +insert into lookups.collsn (id, label, source) values (11, 'ANGLE - ONE STRAIGHT-ONE BACKING', 'cris'); +insert into lookups.collsn (id, label, source) values (12, 'ANGLE - ONE STRAIGHT-ONE STOPPED', 'cris'); +insert into lookups.collsn (id, label, source) values (13, 'ANGLE - ONE STRAIGHT-ONE RIGHT TURN', 'cris'); +insert into lookups.collsn (id, label, source) values (14, 'ANGLE - ONE STRAIGHT-ONE LEFT TURN', 'cris'); +insert into lookups.collsn (id, label, source) values (15, 'ANGLE - BOTH RIGHT TURN', 'cris'); +insert into lookups.collsn (id, label, source) values (16, 'ANGLE - ONE RIGHT TURN-ONE LEFT TURN', 'cris'); +insert into lookups.collsn (id, label, source) values (17, 'ANGLE - ONE RIGHT TURN-ONE STOPPED', 'cris'); +insert into lookups.collsn (id, label, source) values (18, 'ANGLE - BOTH LEFT TURN', 'cris'); +insert into lookups.collsn (id, label, source) values (19, 'ANGLE - ONE LEFT TURN-ONE STOPPED', 'cris'); +insert into lookups.collsn (id, label, source) values (20, 'SAME DIRECTION - BOTH GOING STRAIGHT-REAR END', 'cris'); +insert into lookups.collsn (id, label, source) values (21, 'SAME DIRECTION - BOTH GOING STRAIGHT-SIDESWIPE', 'cris'); +insert into lookups.collsn (id, label, source) values (22, 'SAME DIRECTION - ONE STRAIGHT-ONE STOPPED', 'cris'); +insert into lookups.collsn (id, label, source) values (23, 'SAME DIRECTION - ONE STRAIGHT-ONE RIGHT TURN', 'cris'); +insert into lookups.collsn (id, label, source) values (24, 'SAME DIRECTION - ONE STRAIGHT-ONE LEFT TURN', 'cris'); +insert into lookups.collsn (id, label, source) values (25, 'SAME DIRECTION - BOTH RIGHT TURN', 'cris'); +insert into lookups.collsn (id, label, source) values (26, 'SAME DIRECTION - ONE RIGHT TURN-ONE LEFT TURN', 'cris'); +insert into lookups.collsn (id, label, source) values (27, 'SAME DIRECTION - ONE RIGHT TURN-ONE STOPPED', 'cris'); +insert into lookups.collsn (id, label, source) values (28, 'SAME DIRECTION - BOTH LEFT TURN', 'cris'); +insert into lookups.collsn (id, label, source) values (29, 'SAME DIRECTION - ONE LEFT TURN-ONE STOPPED', 'cris'); +insert into lookups.collsn (id, label, source) values (30, 'OPPOSITE DIRECTION - BOTH GOING STRAIGHT', 'cris'); +insert into lookups.collsn (id, label, source) values (31, 'OPPOSITE DIRECTION - ONE STRAIGHT-ONE BACKING', 'cris'); +insert into lookups.collsn (id, label, source) values (32, 'OPPOSITE DIRECTION - ONE STRAIGHT-ONE STOPPED', 'cris'); +insert into lookups.collsn (id, label, source) values (33, 'OPPOSITE DIRECTION - ONE STRAIGHT-ONE RIGHT TURN', 'cris'); +insert into lookups.collsn (id, label, source) values (34, 'OPPOSITE DIRECTION - ONE STRAIGHT-ONE LEFT TURN', 'cris'); +insert into lookups.collsn (id, label, source) values (35, 'OPPOSITE DIRECTION - ONE BACKING-ONE STOPPED', 'cris'); +insert into lookups.collsn (id, label, source) values (36, 'OPPOSITE DIRECTION - ONE RIGHT TURN-ONE LEFT TURN', 'cris'); +insert into lookups.collsn (id, label, source) values (37, 'OPPOSITE DIRECTION - ONE RIGHT TURN-ONE STOPPED', 'cris'); +insert into lookups.collsn (id, label, source) values (38, 'OPPOSITE DIRECTION - BOTH LEFT TURNS', 'cris'); +insert into lookups.collsn (id, label, source) values (39, 'OPPOSITE DIRECTION - ONE LEFT TURN-ONE STOPPED', 'cris'); +insert into lookups.collsn (id, label, source) values (40, 'OTHER - ONE STRAIGHT-ONE ENTERING OR LEAVING PARKING SPACE', 'cris'); +insert into lookups.collsn (id, label, source) values (41, 'OTHER - ONE RIGHT TURN-ONE ENTERING OR LEAVING PARKING SPACE', 'cris'); +insert into lookups.collsn (id, label, source) values (42, 'OTHER - ONE LEFT TURN-ONE ENTERING OR LEAVING PARKING SPACE', 'cris'); +insert into lookups.collsn (id, label, source) values (43, 'OTHER - ONE ENTERING OR LEAVING PARKING SPACE-ONE STOPPED', 'cris'); +insert into lookups.collsn (id, label, source) values (44, 'OTHER - BOTH ENTERING OR LEAVING A PARKING SPACE', 'cris'); +insert into lookups.collsn (id, label, source) values (45, 'OTHER - BOTH BACKING', 'cris'); +insert into lookups.collsn (id, label, source) values (46, 'OTHER', 'cris'); +insert into lookups.intrsct_relat (id, label, source) values (1, 'INTERSECTION', 'cris'); +insert into lookups.intrsct_relat (id, label, source) values (2, 'INTERSECTION RELATED', 'cris'); +insert into lookups.intrsct_relat (id, label, source) values (3, 'DRIVEWAY ACCESS', 'cris'); +insert into lookups.intrsct_relat (id, label, source) values (4, 'NON INTERSECTION', 'cris'); +insert into lookups.light_cond (id, label, source) values (0, 'UNKNOWN', 'cris'); +insert into lookups.light_cond (id, label, source) values (1, 'DAYLIGHT', 'cris'); +insert into lookups.light_cond (id, label, source) values (2, 'DAWN', 'cris'); +insert into lookups.light_cond (id, label, source) values (3, 'DARK, NOT LIGHTED', 'cris'); +insert into lookups.light_cond (id, label, source) values (4, 'DARK, LIGHTED', 'cris'); +insert into lookups.light_cond (id, label, source) values (5, 'DUSK', 'cris'); +insert into lookups.light_cond (id, label, source) values (6, 'DARK, UNKNOWN LIGHTING', 'cris'); +insert into lookups.light_cond (id, label, source) values (8, 'OTHER (EXPLAIN IN NARRATIVE)', 'cris'); +insert into lookups.obj_struck (id, label, source) values (1, 'OVERTURNED', 'cris'); +insert into lookups.obj_struck (id, label, source) values (2, 'HIT HOLE IN ROAD', 'cris'); +insert into lookups.obj_struck (id, label, source) values (3, 'JACK-KNIFED', 'cris'); +insert into lookups.obj_struck (id, label, source) values (4, 'PERSON FELL OR JUMPED FROM VEHICLE', 'cris'); +insert into lookups.obj_struck (id, label, source) values (9, 'HIT TRAIN ON TRACKS PARALLEL TO ROAD - NO CROSSING', 'cris'); +insert into lookups.obj_struck (id, label, source) values (10, 'HIT TRAIN MOVING FORWARD', 'cris'); +insert into lookups.obj_struck (id, label, source) values (11, 'HIT TRAIN BACKING', 'cris'); +insert into lookups.obj_struck (id, label, source) values (12, 'HIT TRAIN STANDING STILL', 'cris'); +insert into lookups.obj_struck (id, label, source) values (13, 'HIT TRAIN-ACTION UNKNOWN', 'cris'); +insert into lookups.obj_struck (id, label, source) values (20, 'HIT HIGHWAY SIGN', 'cris'); +insert into lookups.obj_struck (id, label, source) values (21, 'HIT CURB', 'cris'); +insert into lookups.obj_struck (id, label, source) values (22, 'HIT CULVERT-HEADWALL', 'cris'); +insert into lookups.obj_struck (id, label, source) values (23, 'HIT GUARDRAIL', 'cris'); +insert into lookups.obj_struck (id, label, source) values (24, 'HIT RAILROAD SIGNAL POLE OR POST', 'cris'); +insert into lookups.obj_struck (id, label, source) values (25, 'HIT RAILROAD CROSSING GATES', 'cris'); +insert into lookups.obj_struck (id, label, source) values (26, 'HIT TRAFFIC SIGNAL POLE OR POST', 'cris'); +insert into lookups.obj_struck (id, label, source) values (27, 'HIT OVERHEAD SIGNAL LIGHT, WIRES, SIGNS, ETC', 'cris'); +insert into lookups.obj_struck (id, label, source) values (28, 'HIT WORK ZONE BARRICADE, CONES, SIGNS OR MATERIAL', 'cris'); +insert into lookups.obj_struck (id, label, source) values (29, 'HIT LUMINAIRE POLE', 'cris'); +insert into lookups.obj_struck (id, label, source) values (30, 'HIT UTILITY POLE', 'cris'); +insert into lookups.obj_struck (id, label, source) values (31, 'HIT MAILBOX', 'cris'); +insert into lookups.obj_struck (id, label, source) values (32, 'HIT TREE, SHRUB, LANDSCAPING', 'cris'); +insert into lookups.obj_struck (id, label, source) values (33, 'HIT FENCE', 'cris'); +insert into lookups.obj_struck (id, label, source) values (34, 'HIT HOUSE, BUILDING, OR BUILDING FIXTURE', 'cris'); +insert into lookups.obj_struck (id, label, source) values (35, 'HIT COMMERCIAL SIGN', 'cris'); +insert into lookups.obj_struck (id, label, source) values (36, 'HIT OTHER FIXED OBJECT', 'cris'); +insert into lookups.obj_struck (id, label, source) values (37, 'HIT BUS STOP STRUCTURE (BENCH)', 'cris'); +insert into lookups.obj_struck (id, label, source) values (38, 'HIT WORK ZONE MACHINERY OR STOCKPILED MATERIALS', 'cris'); +insert into lookups.obj_struck (id, label, source) values (39, 'HIT MEDIAN BARRIER', 'cris'); +insert into lookups.obj_struck (id, label, source) values (40, 'HIT END OF BRIDGE (ABUTMENT OR RAIL END)', 'cris'); +insert into lookups.obj_struck (id, label, source) values (41, 'HIT SIDE OF BRIDGE (BRIDGE RAIL)', 'cris'); +insert into lookups.obj_struck (id, label, source) values (42, 'HIT PIER OR SUPPORT AT UNDERPASS, TUNNEL OR OVERHEAD SIGN BRIDGE', 'cris'); +insert into lookups.obj_struck (id, label, source) values (43, 'HIT TOP OF UNDERPASS OR TUNNEL', 'cris'); +insert into lookups.obj_struck (id, label, source) values (44, 'HIT BRIDGE CROSSING GATE', 'cris'); +insert into lookups.obj_struck (id, label, source) values (45, 'HIT ATTENUATION DEVICE', 'cris'); +insert into lookups.obj_struck (id, label, source) values (49, 'HIT BY FALLEN/BLOWING ROCKS FROM A TRUCK', 'cris'); +insert into lookups.obj_struck (id, label, source) values (50, 'HIT FALLEN TREES OR DEBRIS ON ROAD', 'cris'); +insert into lookups.obj_struck (id, label, source) values (51, 'HIT OBJECT FROM ANOTHER VEHICLE IN ROAD', 'cris'); +insert into lookups.obj_struck (id, label, source) values (52, 'HIT PREVIOUSLY WRECKED VEHICLE', 'cris'); +insert into lookups.obj_struck (id, label, source) values (53, 'HIT TOLL BOOTH', 'cris'); +insert into lookups.obj_struck (id, label, source) values (54, 'HIT OTHER MACHINERY', 'cris'); +insert into lookups.obj_struck (id, label, source) values (56, 'HIT CONCRETE TRAFFIC BARRIER', 'cris'); +insert into lookups.obj_struck (id, label, source) values (57, 'HIT DELINEATOR OR MARKER POST', 'cris'); +insert into lookups.obj_struck (id, label, source) values (58, 'HIT RETAINING WALL', 'cris'); +insert into lookups.obj_struck (id, label, source) values (59, 'HIT HOV LANE GATE', 'cris'); +insert into lookups.obj_struck (id, label, source) values (60, 'HIT GUARD POST', 'cris'); +insert into lookups.obj_struck (id, label, source) values (61, 'FIRE HYDRANT', 'cris'); +insert into lookups.obj_struck (id, label, source) values (62, 'DITCH', 'cris'); +insert into lookups.obj_struck (id, label, source) values (63, 'EMBANKMENT', 'cris'); +insert into lookups.obj_struck (id, label, source) values (64, 'NOT APPLICABLE', 'cris'); +insert into lookups.obj_struck (id, label, source) values (98, 'OTHER', 'cris'); +insert into lookups.road_part (id, label, source) values (1, 'MAIN/PROPER LANE', 'cris'); +insert into lookups.road_part (id, label, source) values (2, 'SERVICE/FRONTAGE ROAD', 'cris'); +insert into lookups.road_part (id, label, source) values (3, 'ENTRANCE/ON RAMP', 'cris'); +insert into lookups.road_part (id, label, source) values (4, 'EXIT/OFF RAMP', 'cris'); +insert into lookups.road_part (id, label, source) values (5, 'CONNECTOR/FLYOVER', 'cris'); +insert into lookups.road_part (id, label, source) values (7, 'OTHER (EXPLAIN IN NARRATIVE)', 'cris'); +insert into lookups.rwy_sys (id, label, source) values (1, 'INTERSTATE', 'cris'); +insert into lookups.rwy_sys (id, label, source) values (2, 'US HIGHWAY', 'cris'); +insert into lookups.rwy_sys (id, label, source) values (3, 'STATE HIGHWAY', 'cris'); +insert into lookups.rwy_sys (id, label, source) values (4, 'FARM TO MARKET', 'cris'); +insert into lookups.rwy_sys (id, label, source) values (5, 'RANCH ROAD', 'cris'); +insert into lookups.rwy_sys (id, label, source) values (6, 'RANCH TO MARKET', 'cris'); +insert into lookups.rwy_sys (id, label, source) values (7, 'BUSINESS INTERSTATE', 'cris'); +insert into lookups.rwy_sys (id, label, source) values (8, 'BUSINESS US', 'cris'); +insert into lookups.rwy_sys (id, label, source) values (9, 'BUSINESS STATE', 'cris'); +insert into lookups.rwy_sys (id, label, source) values (10, 'BUSINESS FM', 'cris'); +insert into lookups.rwy_sys (id, label, source) values (11, 'STATE LOOP', 'cris'); +insert into lookups.rwy_sys (id, label, source) values (12, 'TOLL ROAD', 'cris'); +insert into lookups.rwy_sys (id, label, source) values (13, 'ALTERNATE', 'cris'); +insert into lookups.rwy_sys (id, label, source) values (14, 'SPUR', 'cris'); +insert into lookups.rwy_sys (id, label, source) values (15, 'COUNTY ROAD', 'cris'); +insert into lookups.rwy_sys (id, label, source) values (16, 'PARK ROAD', 'cris'); +insert into lookups.rwy_sys (id, label, source) values (17, 'PRIVATE ROAD', 'cris'); +insert into lookups.rwy_sys (id, label, source) values (18, 'RECREATIONAL ROAD', 'cris'); +insert into lookups.rwy_sys (id, label, source) values (19, 'LOCAL ROAD/STREET (STREET, ROAD, AVE., BLVD., PL., TRL., BEACH, ALLEY, BOAT RAMP, ETC)', 'cris'); +insert into lookups.surf_cond (id, label, source) values (0, 'UNKNOWN', 'cris'); +insert into lookups.surf_cond (id, label, source) values (1, 'DRY', 'cris'); +insert into lookups.surf_cond (id, label, source) values (2, 'WET', 'cris'); +insert into lookups.surf_cond (id, label, source) values (3, 'STANDING WATER', 'cris'); +insert into lookups.surf_cond (id, label, source) values (5, 'SLUSH', 'cris'); +insert into lookups.surf_cond (id, label, source) values (6, 'ICE', 'cris'); +insert into lookups.surf_cond (id, label, source) values (8, 'OTHER (EXPLAIN IN NARRATIVE)', 'cris'); +insert into lookups.surf_cond (id, label, source) values (9, 'SNOW', 'cris'); +insert into lookups.surf_cond (id, label, source) values (10, 'SAND, MUD, DIRT', 'cris'); +insert into lookups.surf_type (id, label, source) values (1, 'CONTINUOUSLY REINFORCED CONCRETE', 'cris'); +insert into lookups.surf_type (id, label, source) values (2, 'JOINTED REINFORCED CONCRETE', 'cris'); +insert into lookups.surf_type (id, label, source) values (3, 'JOINTED PLAIN CONCRETE', 'cris'); +insert into lookups.surf_type (id, label, source) values (4, 'THICK ASPHALTIC CONCRETE, OVER 5.5 INCHES', 'cris'); +insert into lookups.surf_type (id, label, source) values (5, 'MEDIUM ASPHALTIC CONCRETE, 2.5 - 5.5 INCHES', 'cris'); +insert into lookups.surf_type (id, label, source) values (6, 'THIN ASPHALTIC CONCRETE, UNDER 2.5 INCHES', 'cris'); +insert into lookups.surf_type (id, label, source) values (7, 'COMPOSITE (ASPHALT SURFACED CONCRETE)', 'cris'); +insert into lookups.surf_type (id, label, source) values (8, 'WIDENED COMPOSITE PAVEMENT', 'cris'); +insert into lookups.surf_type (id, label, source) values (9, 'OVERLAID AND WIDENED ASPHALTIC CONCRETE PAVEMENT', 'cris'); +insert into lookups.surf_type (id, label, source) values (10, 'SURFACE TREATMENT PAVEMENT', 'cris'); +insert into lookups.surf_type (id, label, source) values (11, 'BRICK', 'cris'); +insert into lookups.surf_type (id, label, source) values (12, 'BLADED', 'cris'); +insert into lookups.surf_type (id, label, source) values (13, 'GRAVEL', 'cris'); +insert into lookups.surf_type (id, label, source) values (99, 'UNKNOWN', 'cris'); +insert into lookups.traffic_cntl (id, label, source) values (1, 'NONE', 'cris'); +insert into lookups.traffic_cntl (id, label, source) values (2, 'INOPERATIVE (EXPLAIN IN NARRATIVE)', 'cris'); +insert into lookups.traffic_cntl (id, label, source) values (3, 'OFFICER', 'cris'); +insert into lookups.traffic_cntl (id, label, source) values (4, 'FLAGMAN', 'cris'); +insert into lookups.traffic_cntl (id, label, source) values (5, 'SIGNAL LIGHT', 'cris'); +insert into lookups.traffic_cntl (id, label, source) values (6, 'FLASHING RED LIGHT', 'cris'); +insert into lookups.traffic_cntl (id, label, source) values (7, 'FLASHING YELLOW LIGHT', 'cris'); +insert into lookups.traffic_cntl (id, label, source) values (8, 'STOP SIGN', 'cris'); +insert into lookups.traffic_cntl (id, label, source) values (9, 'YIELD SIGN', 'cris'); +insert into lookups.traffic_cntl (id, label, source) values (10, 'WARNING SIGN', 'cris'); +insert into lookups.traffic_cntl (id, label, source) values (11, 'CENTER STRIPE/DIVIDER', 'cris'); +insert into lookups.traffic_cntl (id, label, source) values (12, 'NO PASSING ZONE', 'cris'); +insert into lookups.traffic_cntl (id, label, source) values (13, 'RR GATE/SIGNAL', 'cris'); +insert into lookups.traffic_cntl (id, label, source) values (15, 'CROSSWALK', 'cris'); +insert into lookups.traffic_cntl (id, label, source) values (16, 'BIKE LANE', 'cris'); +insert into lookups.traffic_cntl (id, label, source) values (17, 'OTHER (EXPLAIN IN NARRATIVE)', 'cris'); +insert into lookups.traffic_cntl (id, label, source) values (20, 'MARKED LANES', 'cris'); +insert into lookups.traffic_cntl (id, label, source) values (21, 'SIGNAL LIGHT WITH RED LIGHT RUNNING CAMERA', 'cris'); +insert into lookups.wthr_cond (id, label, source) values (0, 'UNKNOWN', 'cris'); +insert into lookups.wthr_cond (id, label, source) values (2, 'RAIN', 'cris'); +insert into lookups.wthr_cond (id, label, source) values (3, 'SLEET/HAIL', 'cris'); +insert into lookups.wthr_cond (id, label, source) values (4, 'SNOW', 'cris'); +insert into lookups.wthr_cond (id, label, source) values (5, 'FOG', 'cris'); +insert into lookups.wthr_cond (id, label, source) values (6, 'BLOWING SAND/SNOW', 'cris'); +insert into lookups.wthr_cond (id, label, source) values (7, 'SEVERE CROSSWINDS', 'cris'); +insert into lookups.wthr_cond (id, label, source) values (8, 'OTHER (EXPLAIN IN NARRATIVE)', 'cris'); +insert into lookups.wthr_cond (id, label, source) values (11, 'CLEAR', 'cris'); +insert into lookups.wthr_cond (id, label, source) values (12, 'CLOUDY', 'cris'); +insert into lookups.drvr_ethncty (id, label, source) values (0, 'UNKNOWN', 'cris'); +insert into lookups.drvr_ethncty (id, label, source) values (1, 'WHITE', 'cris'); +insert into lookups.drvr_ethncty (id, label, source) values (2, 'HISPANIC', 'cris'); +insert into lookups.drvr_ethncty (id, label, source) values (3, 'BLACK', 'cris'); +insert into lookups.drvr_ethncty (id, label, source) values (4, 'ASIAN', 'cris'); +insert into lookups.drvr_ethncty (id, label, source) values (5, 'OTHER', 'cris'); +insert into lookups.drvr_ethncty (id, label, source) values (6, 'AMER. INDIAN/ALASKAN NATIVE', 'cris'); +insert into lookups.drvr_ethncty (id, label, source) values (95, 'AUTONOMOUS', 'cris'); +insert into lookups.gndr (id, label, source) values (0, 'UNKNOWN', 'cris'); +insert into lookups.gndr (id, label, source) values (1, 'MALE', 'cris'); +insert into lookups.gndr (id, label, source) values (2, 'FEMALE', 'cris'); +insert into lookups.gndr (id, label, source) values (95, 'AUTONOMOUS', 'cris'); +insert into lookups.helmet (id, label, source) values (1, 'WORN, DAMAGED', 'cris'); +insert into lookups.helmet (id, label, source) values (2, 'WORN, NOT DAMAGED', 'cris'); +insert into lookups.helmet (id, label, source) values (3, 'WORN, UNK DAMAGE', 'cris'); +insert into lookups.helmet (id, label, source) values (4, 'NOT WORN', 'cris'); +insert into lookups.helmet (id, label, source) values (5, 'UNKNOWN IF WORN', 'cris'); +insert into lookups.helmet (id, label, source) values (97, 'NOT APPLICABLE', 'cris'); +insert into lookups.injry_sev (id, label, source) values (0, 'UNKNOWN', 'cris'); +insert into lookups.injry_sev (id, label, source) values (1, 'SUSPECTED SERIOUS INJURY', 'cris'); +insert into lookups.injry_sev (id, label, source) values (2, 'SUSPECTED MINOR INJURY', 'cris'); +insert into lookups.injry_sev (id, label, source) values (3, 'POSSIBLE INJURY', 'cris'); +insert into lookups.injry_sev (id, label, source) values (4, 'FATAL INJURY', 'cris'); +insert into lookups.injry_sev (id, label, source) values (5, 'NOT INJURED', 'cris'); +insert into lookups.injry_sev (id, label, source) values (95, 'AUTONOMOUS', 'cris'); +insert into lookups.occpnt_pos (id, label, source) values (1, 'FRONT LEFT OR MOTORCYCLE DRIVER', 'cris'); +insert into lookups.occpnt_pos (id, label, source) values (2, 'FRONT CENTER OR MOTORCYCLE SIDECAR PASSENGER', 'cris'); +insert into lookups.occpnt_pos (id, label, source) values (3, 'FRONT RIGHT', 'cris'); +insert into lookups.occpnt_pos (id, label, source) values (4, 'SECOND SEAT LEFT OR MOTORCYCLE BACK PASSENGER', 'cris'); +insert into lookups.occpnt_pos (id, label, source) values (5, 'SECOND SEAT CENTER', 'cris'); +insert into lookups.occpnt_pos (id, label, source) values (6, 'SECOND SEAT RIGHT', 'cris'); +insert into lookups.occpnt_pos (id, label, source) values (7, 'THIRD SEAT LEFT', 'cris'); +insert into lookups.occpnt_pos (id, label, source) values (8, 'THIRD SEAT CENTER', 'cris'); +insert into lookups.occpnt_pos (id, label, source) values (9, 'THIRD SEAT RIGHT', 'cris'); +insert into lookups.occpnt_pos (id, label, source) values (10, 'CARGO AREA', 'cris'); +insert into lookups.occpnt_pos (id, label, source) values (11, 'OUTSIDE VEHICLE', 'cris'); +insert into lookups.occpnt_pos (id, label, source) values (12, 'UNKNOWN', 'cris'); +insert into lookups.occpnt_pos (id, label, source) values (13, 'OTHER IN VEHICLE', 'cris'); +insert into lookups.occpnt_pos (id, label, source) values (14, 'PASSENGER IN BUS', 'cris'); +insert into lookups.occpnt_pos (id, label, source) values (16, 'PEDESTRIAN, PEDALCYCLIST, OR MOTORIZED CONVEYANCE', 'cris'); +insert into lookups.occpnt_pos (id, label, source) values (95, 'AUTONOMOUS', 'cris'); +insert into lookups.occpnt_pos (id, label, source) values (98, 'OTHER (EXPLAIN IN NARRATIVE)', 'cris'); +insert into lookups.prsn_type (id, label, source) values (1, 'DRIVER', 'cris'); +insert into lookups.prsn_type (id, label, source) values (2, 'PASSENGER/OCCUPANT', 'cris'); +insert into lookups.prsn_type (id, label, source) values (3, 'PEDALCYCLIST', 'cris'); +insert into lookups.prsn_type (id, label, source) values (4, 'PEDESTRIAN', 'cris'); +insert into lookups.prsn_type (id, label, source) values (5, 'DRIVER OF MOTORCYCLE TYPE VEHICLE', 'cris'); +insert into lookups.prsn_type (id, label, source) values (6, 'PASSENGER/OCCUPANT ON MOTORCYCLE TYPE VEHICLE', 'cris'); +insert into lookups.prsn_type (id, label, source) values (95, 'AUTONOMOUS', 'cris'); +insert into lookups.prsn_type (id, label, source) values (97, 'NOT APPLICABLE', 'cris'); +insert into lookups.prsn_type (id, label, source) values (98, 'OTHER (EXPLAIN IN NARRATIVE)', 'cris'); +insert into lookups.prsn_type (id, label, source) values (99, 'UNKNOWN', 'cris'); +insert into lookups.rest (id, label, source) values (1, 'SHOULDER & LAP BELT', 'cris'); +insert into lookups.rest (id, label, source) values (2, 'SHOULDER BELT ONLY', 'cris'); +insert into lookups.rest (id, label, source) values (3, 'LAP BELT ONLY', 'cris'); +insert into lookups.rest (id, label, source) values (4, 'CHILD SEAT, FACING FORWARD', 'cris'); +insert into lookups.rest (id, label, source) values (5, 'CHILD SEAT, FACING REAR', 'cris'); +insert into lookups.rest (id, label, source) values (6, 'CHILD SEAT, UNKNOWN', 'cris'); +insert into lookups.rest (id, label, source) values (7, 'CHILD BOOSTER SEAT', 'cris'); +insert into lookups.rest (id, label, source) values (8, 'NONE', 'cris'); +insert into lookups.rest (id, label, source) values (9, 'OTHER (EXPLAIN IN NARRATIVE)', 'cris'); +insert into lookups.rest (id, label, source) values (10, 'UNKNOWN', 'cris'); +insert into lookups.rest (id, label, source) values (11, 'NOT APPLICABLE', 'cris'); +insert into lookups.specimen_type (id, label, source) values (1, 'BREATH', 'cris'); +insert into lookups.specimen_type (id, label, source) values (2, 'BLOOD', 'cris'); +insert into lookups.specimen_type (id, label, source) values (3, 'URINE', 'cris'); +insert into lookups.specimen_type (id, label, source) values (4, 'NONE', 'cris'); +insert into lookups.specimen_type (id, label, source) values (5, 'REFUSED', 'cris'); +insert into lookups.specimen_type (id, label, source) values (6, 'OTHER (EXPLAIN IN NARRATIVE)', 'cris'); +insert into lookups.substnc_tst_result (id, label, source) values (0, 'UNKNOWN', 'cris'); +insert into lookups.substnc_tst_result (id, label, source) values (1, 'Positive', 'cris'); +insert into lookups.substnc_tst_result (id, label, source) values (2, 'Negative', 'cris'); +insert into lookups.substnc_tst_result (id, label, source) values (97, 'NOT APPLICABLE', 'cris'); +insert into lookups.substnc_cat (id, label, source) values (2, 'CNS DEPRESSANTS', 'cris'); +insert into lookups.substnc_cat (id, label, source) values (3, 'CNS STIMULANTS', 'cris'); +insert into lookups.substnc_cat (id, label, source) values (4, 'HALLUCINOGENS', 'cris'); +insert into lookups.substnc_cat (id, label, source) values (6, 'NARCOTIC ANALGESICS', 'cris'); +insert into lookups.substnc_cat (id, label, source) values (7, 'INHALANTS', 'cris'); +insert into lookups.substnc_cat (id, label, source) values (8, 'CANNABIS', 'cris'); +insert into lookups.substnc_cat (id, label, source) values (10, 'DISSOCIATIVE ANESTHETICS', 'cris'); +insert into lookups.substnc_cat (id, label, source) values (11, 'OTHER DRUGS (EXPLAIN IN NARRATIVE)', 'cris'); +insert into lookups.substnc_cat (id, label, source) values (12, 'MULTIPLE DRUGS (EXPLAIN IN NARRATIVE)', 'cris'); +insert into lookups.substnc_cat (id, label, source) values (97, 'NOT APPLICABLE', 'cris'); +insert into lookups.substnc_cat (id, label, source) values (99, 'UNKNOWN', 'cris'); +insert into lookups.autonomous_level_engaged (id, label, source) values (0, 'NO AUTOMATION', 'cris'); +insert into lookups.autonomous_level_engaged (id, label, source) values (1, 'DRIVER ASSISTANCE', 'cris'); +insert into lookups.autonomous_level_engaged (id, label, source) values (2, 'PARTIAL AUTOMATION', 'cris'); +insert into lookups.autonomous_level_engaged (id, label, source) values (3, 'CONDITIONAL AUTOMATION', 'cris'); +insert into lookups.autonomous_level_engaged (id, label, source) values (4, 'HIGH AUTOMATION', 'cris'); +insert into lookups.autonomous_level_engaged (id, label, source) values (5, 'FULL AUTOMATION', 'cris'); +insert into lookups.autonomous_level_engaged (id, label, source) values (6, 'AUTOMATION LEVEL UNKNOWN', 'cris'); +insert into lookups.autonomous_level_engaged (id, label, source) values (94, '2023 CR3 EFFECTIVE 04/01/2023', 'cris'); +insert into lookups.autonomous_level_engaged (id, label, source) values (99, 'UNKNOWN', 'cris'); +insert into lookups.autonomous_unit (id, label, source) values (1, 'YES', 'cris'); +insert into lookups.autonomous_unit (id, label, source) values (2, 'NO', 'cris'); +insert into lookups.autonomous_unit (id, label, source) values (95, 'DATA NOT AVAILABLE AT DATA ENTRY', 'cris'); +insert into lookups.autonomous_unit (id, label, source) values (97, 'NOT APPLICABLE', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (0, 'NONE', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (1, 'ANIMAL ON ROAD - DOMESTIC', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (2, 'ANIMAL ON ROAD - WILD', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (3, 'BACKED WITHOUT SAFETY', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (4, 'CHANGED LANE WHEN UNSAFE', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (14, 'DISABLED IN TRAFFIC LANE', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (15, 'DISREGARD STOP AND GO SIGNAL', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (16, 'DISREGARD STOP SIGN OR LIGHT', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (17, 'DISREGARD TURN MARKS AT INTERSECTION', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (18, 'DISREGARD WARNING SIGN AT CONSTRUCTION', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (19, 'DISTRACTION IN VEHICLE', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (20, 'DRIVER INATTENTION', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (21, 'DROVE WITHOUT HEADLIGHTS', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (22, 'FAILED TO CONTROL SPEED', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (23, 'FAILED TO DRIVE IN SINGLE LANE', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (24, 'FAILED TO GIVE HALF OF ROADWAY', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (25, 'FAILED TO HEED WARNING SIGN OR TRAFFIC CONTROL DEVICE', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (26, 'FAILED TO PASS TO LEFT SAFELY', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (27, 'FAILED TO PASS TO RIGHT SAFELY', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (28, 'FAILED TO SIGNAL OR GAVE WRONG SIGNAL', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (29, 'FAILED TO STOP AT PROPER PLACE', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (30, 'FAILED TO STOP FOR SCHOOL BUS', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (31, 'FAILED TO STOP FOR TRAIN', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (32, 'FAILED TO YIELD RIGHT OF WAY - EMERGENCY VEHICLE', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (33, 'FAILED TO YIELD RIGHT OF WAY - OPEN INTERSECTION', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (34, 'FAILED TO YIELD RIGHT OF WAY - PRIVATE DRIVE', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (35, 'FAILED TO YIELD RIGHT OF WAY - STOP SIGN', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (36, 'FAILED TO YIELD RIGHT OF WAY - TO PEDESTRIAN', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (37, 'FAILED TO YIELD RIGHT OF WAY - TURNING LEFT', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (38, 'FAILED TO YIELD RIGHT OF WAY - TURN ON RED', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (39, 'FAILED TO YIELD RIGHT OF WAY - YIELD SIGN', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (40, 'FATIGUED OR ASLEEP', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (41, 'FAULTY EVASIVE ACTION', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (42, 'FIRE IN VEHICLE', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (43, 'FLEEING OR EVADING POLICE', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (44, 'FOLLOWED TOO CLOSELY', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (45, 'HAD BEEN DRINKING', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (46, 'HANDICAPPED DRIVER (EXPLAIN IN NARRATIVE)', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (47, 'ILL (EXPLAIN IN NARRATIVE)', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (48, 'IMPAIRED VISIBILITY (EXPLAIN IN NARRATIVE)', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (49, 'IMPROPER START FROM A STOPPED, STANDING, OR PARKED POSITION', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (50, 'LOAD NOT SECURED', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (51, 'OPENED DOOR INTO TRAFFIC LANE', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (52, 'OVERSIZED VEHICLE OR LOAD', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (53, 'OVERTAKE AND PASS INSUFFICIENT CLEARANCE', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (54, 'PARKED AND FAILED TO SET BRAKES', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (55, 'PARKED IN TRAFFIC LANE', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (56, 'PARKED WITHOUT LIGHTS', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (57, 'PASSED IN NO PASSING LANE', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (58, 'PASSED ON SHOULDER', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (59, 'PEDESTRIAN FAILED TO YIELD RIGHT OF WAY TO VEHICLE', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (60, 'UNSAFE SPEED', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (61, 'SPEEDING - (OVERLIMIT)', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (62, 'TAKING MEDICATION (EXPLAIN IN NARRATIVE)', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (63, 'TURNED IMPROPERLY - CUT CORNER ON LEFT', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (64, 'TURNED IMPROPERLY - WIDE RIGHT', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (65, 'TURNED IMPROPERLY - WRONG LANE', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (66, 'TURNED WHEN UNSAFE', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (67, 'INTOXICATED - ALCOHOL', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (68, 'INTOXICATED - DRUG', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (69, 'WRONG SIDE - APPROACH OR INTERSECTION', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (70, 'WRONG SIDE - NOT PASSING', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (71, 'WRONG WAY - ONE WAY ROAD', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (72, 'CELL/MOBILE PHONE USE', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (73, 'ROAD RAGE', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (74, 'OTHER (EXPLAIN IN NARRATIVE)', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (75, 'CELL/MOBILE DEVICE USE - TALKING', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (76, 'CELL/MOBILE DEVICE USE - TEXTING', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (77, 'CELL/MOBILE DEVICE USE - OTHER', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (78, 'CELL/MOBILE DEVICE USE - UNKNOWN', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (79, 'FAILED TO SLOW OR MOVE OVER FOR VEHICLES DISPLAYING EMERGENCY LIGHTS', 'cris'); +insert into lookups.contrib_factr (id, label, source) values (80, 'DROVE ON IMPROVED SHOULDER', 'cris'); +insert into lookups.e_scooter (id, label, source) values (1, 'YES', 'cris'); +insert into lookups.e_scooter (id, label, source) values (2, 'NO', 'cris'); +insert into lookups.e_scooter (id, label, source) values (95, 'DATA NOT AVAILABLE AT DATA ENTRY', 'cris'); +insert into lookups.e_scooter (id, label, source) values (97, 'NOT APPLICABLE', 'cris'); +insert into lookups.harm_evnt (id, label, source) values (1, 'PEDESTRIAN', 'cris'); +insert into lookups.harm_evnt (id, label, source) values (2, 'MOTOR VEHICLE IN TRANSPORT', 'cris'); +insert into lookups.harm_evnt (id, label, source) values (3, 'RR TRAIN', 'cris'); +insert into lookups.harm_evnt (id, label, source) values (4, 'PARKED CAR', 'cris'); +insert into lookups.harm_evnt (id, label, source) values (5, 'PEDALCYCLIST', 'cris'); +insert into lookups.harm_evnt (id, label, source) values (6, 'ANIMAL', 'cris'); +insert into lookups.harm_evnt (id, label, source) values (7, 'FIXED OBJECT', 'cris'); +insert into lookups.harm_evnt (id, label, source) values (8, 'OTHER OBJECT', 'cris'); +insert into lookups.harm_evnt (id, label, source) values (9, 'OTHER NON COLLISION', 'cris'); +insert into lookups.harm_evnt (id, label, source) values (10, 'OVERTURNED', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (1, 'BACKING VEHICLE', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (2, 'BICYCLIST FAILED TO CLEAR - MULTIPLE THREAT', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (3, 'BICYCLIST FAILED TO CLEAR - TRAPPED', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (4, 'BICYCLIST FAILED TO CLEAR - UNKNOWN', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (5, 'BICYCLIST INTENTIONALLY CAUSED', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (6, 'BICYCLIST LEFT TURN - OPPOSITE DIRECTION', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (7, 'BICYCLIST LEFT TURN - SAME DIRECTION', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (8, 'BICYCLIST LOST CONTROL - MECHANICAL PROBLEMS', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (9, 'BICYCLIST LOST CONTROL - OTHER/UNKNOWN', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (10, 'BICYCLIST LOST CONTROL - OVERSTEERING, IMPROPER BRAKING, SPEED', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (11, 'BICYCLIST LOST CONTROL - SURFACE CONDITIONS', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (12, 'BICYCLIST OVERTAKING - EXTENDED DOOR', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (13, 'BICYCLIST OVERTAKING - OTHER/UNKNOWN', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (15, 'BICYCLIST OVERTAKING - PASSING ON LEFT', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (16, 'BICYCLIST OVERTAKING - PASSING ON RIGHT', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (17, 'BICYCLIST RIDE OUT - COMMERCIAL DRIVEWAY/ALLEY', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (18, 'BICYCLIST RIDE OUT - MIDBLOCK - UNKNOWN', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (19, 'BICYCLIST RIDE OUT - OTHER MIDBLOCK', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (20, 'BICYCLIST RIDE OUT - PARALLEL PATH', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (21, 'BICYCLIST RIDE OUT - RESIDENTIAL DRIVEWAY', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (22, 'BICYCLIST RIDE OUT - SIGN-CONTROLLED INTERSECTION', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (23, 'BICYCLIST RIDE OUT - SIGNALIZED INTERSECTION', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (24, 'BICYCLIST RIDE THROUGH - SIGN-CONTROLLED INTERSECTION', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (25, 'BICYCLIST RIDE THROUGH - SIGNALIZED INTERSECTION', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (26, 'BICYCLIST RIGHT TURN - OPPOSITE DIRECTION', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (27, 'BICYCLIST RIGHT TURN - SAME DIRECTION', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (28, 'BICYCLIST TURNING ERROR - LEFT TURN', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (29, 'BICYCLIST TURNING ERROR - OTHER', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (30, 'BICYCLIST TURNING ERROR - RIGHT TURN', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (31, 'BICYCLIST LOST CONTROL - ALCOHOL/DRUG IMPAIRMENT', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (32, 'BUS/DELIVERY VEHICLE PULLOVER', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (33, 'CROSSING PATHS - INTERSECTION - OTHER/UNKNOWN', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (34, 'CROSSING PATHS - MIDBLOCK - OTHER/UNKNOWN', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (35, 'CROSSING PATHS - UNCONTROLLED INTERSECTION', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (36, 'HEAD-ON - BICYCLIST', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (37, 'HEAD-ON - MOTORIST', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (38, 'HEAD-ON - UNKNOWN', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (39, 'MOTORIST DRIVE IN/OUT PARKING', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (40, 'MOTORIST DRIVE OUT - COMMERCIAL DRIVEWAY/ALLEY', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (41, 'MOTORIST DRIVE OUT - MIDBLOCK - UNKNOWN', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (42, 'MOTORIST DRIVE OUT - OTHER MIDBLOCK', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (43, 'MOTORIST DRIVE OUT - RESIDENTIAL DRIVEWAY', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (44, 'MOTORIST DRIVE OUT - RIGHT TURN ON RED', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (45, 'MOTORIST DRIVE OUT - SIGN-CONTROLLED INTERSECTION', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (46, 'MOTORIST DRIVE OUT - SIGNALIZED INTERSECTION', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (47, 'MOTORIST DRIVE THROUGH - SIGN-CONTROLLED INTERSECTION', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (48, 'MOTORIST DRIVE THROUGH - SIGNALIZED INTERSECTION', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (49, 'MOTORIST INTENTIONALLY CAUSED', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (50, 'MOTORIST LEFT TURN - OPPOSITE DIRECTION', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (51, 'MOTORIST LEFT TURN - SAME DIRECTION', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (52, 'MOTORIST LOST CONTROL - ALCOHOL/DRUG IMPAIRMENT', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (53, 'MOTORIST LOST CONTROL - MECHANICAL PROBLEMS', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (54, 'MOTORIST LOST CONTROL - OTHER/UNKNOWN', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (55, 'MOTORIST LOST CONTROL - OVERSTEERING, IMPROPER BRAKING, SPEED', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (56, 'MOTORIST LOST CONTROL - SURFACE CONDITIONS', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (57, 'MOTORIST OVERTAKING - BICYCLIST SWERVED', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (58, 'MOTORIST OVERTAKING - MISJUDGED SPACE', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (59, 'MOTORIST OVERTAKING - OTHER/UNKNOWN', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (60, 'MOTORIST OVERTAKING - UNDETECTED BICYCLIST', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (61, 'MOTORIST RIGHT TURN - OPPOSITE DIRECTION', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (62, 'MOTORIST RIGHT TURN - SAME DIRECTION', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (63, 'MOTORIST RIGHT TURN ON RED - OPPOSITE DIRECTION', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (64, 'MOTORIST RIGHT TURN ON RED - SAME DIRECTION', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (65, 'MOTORIST TURN/MERGE - OTHER/UNKNOWN', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (66, 'MOTORIST TURNING ERROR - LEFT TURN', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (67, 'MOTORIST TURNING ERROR - OTHER', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (68, 'MOTORIST TURNING ERROR - RIGHT TURN', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (69, 'MULTIPLE THREAT - MIDBLOCK', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (70, 'MULTIPLE THREAT - SIGN-CONTROLLED INTERSECTION', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (71, 'NON-ROADWAY', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (72, 'PARALLEL PATHS - OTHER/UNKNOWN', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (73, 'SIGN-CONTROLLED INTERSECTION - OTHER/UNKNOWN', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (74, 'SIGNALIZED INTERSECTION - OTHER/UNKNOWN', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (75, 'UNKNOWN APPROACH PATHS', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (76, 'UNKNOWN LOCATION', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (77, 'UNUSUAL CIRCUMSTANCES', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (95, 'DATA NOT AVAILABLE AT DATA ENTRY', 'cris'); +insert into lookups.pbcat_pedalcyclist (id, label, source) values (97, 'NOT APPLICABLE', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (1, 'ASSAULT WITH VEHICLE', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (2, 'BACKING VEHICLE - DRIVEWAY', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (3, 'BACKING VEHICLE - DRIVEWAY/SIDEWALK INTERSECTION', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (4, 'BACKING VEHICLE - OTHER/UNKNOWN', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (5, 'BACKING VEHICLE - PARKING LOT', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (6, 'BACKING VEHICLE - ROADWAY', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (7, 'COMMERCIAL BUS-RELATED', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (8, 'CROSSING AN EXPRESSWAY', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (9, 'CROSSING DRIVEWAY OR ALLEY', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (10, 'DART-OUT', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (11, 'DASH', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (12, 'DISABLED VEHICLE-RELATED', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (13, 'DISPUTE-RELATED', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (14, 'DRIVERLESS VEHICLE', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (15, 'DRIVEWAY CROSSING - OTHER/UNKNOWN', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (16, 'EMERGENCY VEHICLE-RELATED', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (17, 'ENTERING/EXITING PARKED VEHICLE', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (18, 'ICE CREAM/VENDOR TRUCK-RELATED', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (19, 'INTERSECTION - OTHER/UNKNOWN', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (20, 'LYING IN ROADWAY', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (21, 'MAILBOX RELATED', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (22, 'MOTOR VEHICLE LOSS OF CONTROL', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (23, 'MOTORIST ENTERING DRIVEWAY OR ALLEY', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (24, 'MOTORIST FAILED TO YIELD', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (25, 'MOTORIST LEFT TURN - PARALLEL PATHS', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (26, 'MOTORIST LEFT TURN - PERPENDICULAR PATHS', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (27, 'MOTORIST RIGHT TURN - PARALLEL PATHS', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (28, 'MOTORIST RIGHT TURN - PERPENDICULAR PATHS', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (29, 'MOTORIST RIGHT TURN ON RED - PARALLEL PATHS', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (30, 'MOTORIST RIGHT TURN ON RED - PERPENDICULAR PATHS', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (31, 'MOTORIST TURN/MERGE - OTHER/UNKNOWN', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (32, 'MULTIPLE THREAT', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (33, 'NON-INTERSECTION - OTHER/UNKNOWN', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (34, 'OFF ROADWAY - OTHER/UNKNOWN', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (35, 'OFF ROADWAY - PARKING LOT', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (36, 'OTHER - UNKNOWN LOCATION', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (37, 'OTHER UNUSUAL CIRCUMSTANCES', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (38, 'PEDESTRIAN FAILED TO YIELD', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (39, 'PEDESTRIAN LOSS OF CONTROL', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (40, 'PLAY VEHICLE-RELATED', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (41, 'PLAYING IN ROADWAY', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (42, 'SCHOOL BUS-RELATED', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (43, 'STANDING IN ROADWAY', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (44, 'TRAPPED', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (45, 'VEHICLE-VEHICLE/OBJECT', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (46, 'WAITING TO CROSS - VEHICLE ACTION UNKNOWN', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (47, 'WAITING TO CROSS - VEHICLE NOT TURNING', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (48, 'WAITING TO CROSS - VEHICLE TURNING', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (49, 'WALKING ALONG ROADWAY - DIRECTION/POSITION UNKNOWN', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (50, 'WALKING ALONG ROADWAY AGAINST TRAFFIC - FROM BEHIND', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (51, 'WALKING ALONG ROADWAY AGAINST TRAFFIC - FROM FRONT', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (52, 'WALKING ALONG ROADWAY WITH TRAFFIC - FROM BEHIND', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (53, 'WALKING ALONG ROADWAY WITH TRAFFIC - FROM FRONT', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (54, 'WALKING IN ROADWAY', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (55, 'WORKING IN ROADWAY', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (95, 'DATA NOT AVAILABLE AT DATA ENTRY', 'cris'); +insert into lookups.pbcat_pedestrian (id, label, source) values (97, 'NOT APPLICABLE', 'cris'); +insert into lookups.pedalcyclist_action (id, label, source) values (1, 'IN PARKING LOT', 'cris'); +insert into lookups.pedalcyclist_action (id, label, source) values (2, 'NOT IN ROADWAY', 'cris'); +insert into lookups.pedalcyclist_action (id, label, source) values (3, 'OTHER IN ROADWAY (EX. STANDING OR PLAYING)', 'cris'); +insert into lookups.pedalcyclist_action (id, label, source) values (4, 'OTHER RIDING WHILE DISTRACTED (TALKING, EATING, ELECTRONIC DEVICE, ETC.)', 'cris'); +insert into lookups.pedalcyclist_action (id, label, source) values (5, 'RIDING CYCLE WHILE CROSSING ROAD AT DRIVEWAY', 'cris'); +insert into lookups.pedalcyclist_action (id, label, source) values (6, 'RIDING CYCLE WHILE CROSSING ROAD AT INTERSECTION OR CROSSWALK (MARKED OR UNMARKED)', 'cris'); +insert into lookups.pedalcyclist_action (id, label, source) values (7, 'RIDING CYCLE WHILE CROSSING ROAD NOT AT INTERSECTION OR CROSSWALK', 'cris'); +insert into lookups.pedalcyclist_action (id, label, source) values (8, 'RIDING IN BIKE LANE - AGAINST TRAFFIC', 'cris'); +insert into lookups.pedalcyclist_action (id, label, source) values (9, 'RIDING IN BIKE LANE - WITH TRAFFIC', 'cris'); +insert into lookups.pedalcyclist_action (id, label, source) values (10, 'RIDING IN ROADWAY (VEHICLE LANE - UNKNOWN IF BIKE MARKINGS PRESENT) - AGAINST TRAFFIC', 'cris'); +insert into lookups.pedalcyclist_action (id, label, source) values (11, 'RIDING IN ROADWAY (VEHICLE LANE - UNKNOWN IF BIKE MARKINGS PRESENT) - WITH TRAFFIC', 'cris'); +insert into lookups.pedalcyclist_action (id, label, source) values (12, 'RIDING IN ROADWAY (VEHICLE LANE WITH BIKE MARKINGS IN THE LANE) - AGAINST TRAFFIC', 'cris'); +insert into lookups.pedalcyclist_action (id, label, source) values (13, 'RIDING IN ROADWAY (VEHICLE LANE WITH BIKE MARKINGS IN THE LANE) - WITH TRAFFIC', 'cris'); +insert into lookups.pedalcyclist_action (id, label, source) values (14, 'RIDING IN ROADWAY (VEHICLE LANE WITHOUT BIKE MARKINGS) - AGAINST TRAFFIC', 'cris'); +insert into lookups.pedalcyclist_action (id, label, source) values (15, 'RIDING IN ROADWAY (VEHICLE LANE WITHOUT BIKE MARKINGS) - WITH TRAFFIC', 'cris'); +insert into lookups.pedalcyclist_action (id, label, source) values (16, 'RIDING IN SHOULDER - AGAINST TRAFFIC', 'cris'); +insert into lookups.pedalcyclist_action (id, label, source) values (17, 'RIDING IN SHOULDER - WITH TRAFFIC', 'cris'); +insert into lookups.pedalcyclist_action (id, label, source) values (18, 'RIDING ON SIDEWALK', 'cris'); +insert into lookups.pedalcyclist_action (id, label, source) values (19, 'WORKING IN ROADWAY OR SHOULDER (INCIDENT RESPONSE)', 'cris'); +insert into lookups.pedalcyclist_action (id, label, source) values (95, 'DATA NOT AVAILABLE AT DATA ENTRY', 'cris'); +insert into lookups.pedalcyclist_action (id, label, source) values (97, 'NOT APPLICABLE', 'cris'); +insert into lookups.pedalcyclist_action (id, label, source) values (99, 'UNKNOWN', 'cris'); +insert into lookups.pedestrian_action (id, label, source) values (1, 'CONSTRUCTION WORKER IN ROADWAY OR SHOULDER', 'cris'); +insert into lookups.pedestrian_action (id, label, source) values (2, 'CROSSING DRIVEWAY OR ALLEY', 'cris'); +insert into lookups.pedestrian_action (id, label, source) values (3, 'CROSSING ROAD AT INTERSECTION OR CROSSWALK (MARKED OR UNMARKED)', 'cris'); +insert into lookups.pedestrian_action (id, label, source) values (4, 'CROSSING ROAD NOT AT INTERSECTION OR CROSSWALK (MARKED OR UNMARKED)', 'cris'); +insert into lookups.pedestrian_action (id, label, source) values (5, 'CROSSING ROAD WITH DO NOT WALK PHASE OR PEDESTRIAN TRAFFIC CONTROL SIGNAL', 'cris'); +insert into lookups.pedestrian_action (id, label, source) values (6, 'GETTING ON OR OFF VEHICLE', 'cris'); +insert into lookups.pedestrian_action (id, label, source) values (7, 'IN PARKING LOT/PRIVATE PROPERTY', 'cris'); +insert into lookups.pedestrian_action (id, label, source) values (8, 'NOT IN ROADWAY', 'cris'); +insert into lookups.pedestrian_action (id, label, source) values (9, 'OTHER IN ROADWAY (EX. PLAYING OR LYING DOWN)', 'cris'); +insert into lookups.pedestrian_action (id, label, source) values (10, 'OTHER WALKING WHILE DISTRACTED (TALKING, EATING, ELECTRONIC DEVICE, ETC.)', 'cris'); +insert into lookups.pedestrian_action (id, label, source) values (11, 'PUSHING OR WORKING ON VEHICLE IN ROADWAY OR SHOULDER', 'cris'); +insert into lookups.pedestrian_action (id, label, source) values (12, 'STANDING IN MEDIAN', 'cris'); +insert into lookups.pedestrian_action (id, label, source) values (13, 'STANDING IN ROADWAY', 'cris'); +insert into lookups.pedestrian_action (id, label, source) values (14, 'STANDING IN SHOULDER', 'cris'); +insert into lookups.pedestrian_action (id, label, source) values (15, 'STANDING IN SIDEWALK', 'cris'); +insert into lookups.pedestrian_action (id, label, source) values (16, 'WALKING IN MEDIAN', 'cris'); +insert into lookups.pedestrian_action (id, label, source) values (18, 'WALKING IN ROADWAY - AGAINST TRAFFIC', 'cris'); +insert into lookups.pedestrian_action (id, label, source) values (19, 'WALKING IN ROADWAY - WITH TRAFFIC', 'cris'); +insert into lookups.pedestrian_action (id, label, source) values (20, 'WALKING IN SHOULDER - AGAINST TRAFFIC', 'cris'); +insert into lookups.pedestrian_action (id, label, source) values (21, 'WALKING IN SHOULDER - WITH TRAFFIC', 'cris'); +insert into lookups.pedestrian_action (id, label, source) values (22, 'WALKING IN SIDEWALK', 'cris'); +insert into lookups.pedestrian_action (id, label, source) values (23, 'WORKING IN ROADWAY OR SHOULDER (INCIDENT RESPONSE)', 'cris'); +insert into lookups.pedestrian_action (id, label, source) values (24, 'IN A BUILDING OR HOUSE', 'cris'); +insert into lookups.pedestrian_action (id, label, source) values (95, 'DATA NOT AVAILABLE AT DATA ENTRY', 'cris'); +insert into lookups.pedestrian_action (id, label, source) values (97, 'NOT APPLICABLE', 'cris'); +insert into lookups.pedestrian_action (id, label, source) values (99, 'UNKNOWN', 'cris'); +insert into lookups.trvl_dir (id, label, source) values (1, 'NORTH', 'cris'); +insert into lookups.trvl_dir (id, label, source) values (2, 'NORTHEAST', 'cris'); +insert into lookups.trvl_dir (id, label, source) values (3, 'EAST', 'cris'); +insert into lookups.trvl_dir (id, label, source) values (4, 'SOUTHEAST', 'cris'); +insert into lookups.trvl_dir (id, label, source) values (5, 'SOUTH', 'cris'); +insert into lookups.trvl_dir (id, label, source) values (6, 'SOUTHWEST', 'cris'); +insert into lookups.trvl_dir (id, label, source) values (7, 'WEST', 'cris'); +insert into lookups.trvl_dir (id, label, source) values (8, 'NORTHWEST', 'cris'); +insert into lookups.trvl_dir (id, label, source) values (9, 'NOT APPLICABLE', 'cris'); +insert into lookups.trvl_dir (id, label, source) values (11, 'UNKNOWN', 'cris'); +insert into lookups.unit_desc (id, label, source) values (1, 'MOTOR VEHICLE', 'cris'); +insert into lookups.unit_desc (id, label, source) values (2, 'TRAIN', 'cris'); +insert into lookups.unit_desc (id, label, source) values (3, 'PEDALCYCLIST', 'cris'); +insert into lookups.unit_desc (id, label, source) values (4, 'PEDESTRIAN', 'cris'); +insert into lookups.unit_desc (id, label, source) values (5, 'MOTORIZED CONVEYANCE', 'cris'); +insert into lookups.unit_desc (id, label, source) values (6, 'TOWED/TRAILER', 'cris'); +insert into lookups.unit_desc (id, label, source) values (7, 'NON-CONTACT', 'cris'); +insert into lookups.unit_desc (id, label, source) values (8, 'OTHER (EXPLAIN IN NARRATIVE)', 'cris'); +insert into lookups.veh_body_styl (id, label, source) values (0, 'UNKNOWN', 'cris'); +insert into lookups.veh_body_styl (id, label, source) values (9, 'AMBULANCE', 'cris'); +insert into lookups.veh_body_styl (id, label, source) values (23, 'FIRE TRUCK', 'cris'); +insert into lookups.veh_body_styl (id, label, source) values (30, 'PICKUP', 'cris'); +insert into lookups.veh_body_styl (id, label, source) values (47, 'BUS', 'cris'); +insert into lookups.veh_body_styl (id, label, source) values (69, 'SPORT UTILITY VEHICLE', 'cris'); +insert into lookups.veh_body_styl (id, label, source) values (71, 'MOTORCYCLE', 'cris'); +insert into lookups.veh_body_styl (id, label, source) values (87, 'TRUCK TRACTOR', 'cris'); +insert into lookups.veh_body_styl (id, label, source) values (90, 'POLICE MOTORCYCLE', 'cris'); +insert into lookups.veh_body_styl (id, label, source) values (92, 'OTHER (EXPLAIN IN NARRATIVE)', 'cris'); +insert into lookups.veh_body_styl (id, label, source) values (100, 'PASSENGER CAR, 2-DOOR', 'cris'); +insert into lookups.veh_body_styl (id, label, source) values (101, 'FARM EQUIPMENT', 'cris'); +insert into lookups.veh_body_styl (id, label, source) values (102, 'TRAILER, SEMI-TRAILER, OR POLE TRAILER', 'cris'); +insert into lookups.veh_body_styl (id, label, source) values (103, 'VAN', 'cris'); +insert into lookups.veh_body_styl (id, label, source) values (104, 'PASSENGER CAR, 4-DOOR', 'cris'); +insert into lookups.veh_body_styl (id, label, source) values (105, 'POLICE CAR/TRUCK', 'cris'); +insert into lookups.veh_body_styl (id, label, source) values (106, 'TRUCK', 'cris'); +insert into lookups.veh_body_styl (id, label, source) values (107, 'YELLOW SCHOOL BUS', 'cris'); +insert into lookups.veh_body_styl (id, label, source) values (108, 'NEV-NEIGHBORHOOD ELECTRIC VEHICLE', 'cris'); +insert into lookups.veh_body_styl (id, label, source) values (109, 'SCHOOL BUS OTHER', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (0, 'UNK - UNKNOWN', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (1, 'FC - FRONT END DAMAGE CONCENTRATED IMPACT', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (2, 'FD - FRONT END DAMAGE DISTRIBUTED IMPACT', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (3, 'FL - FRONT END (LEFT) DAMAGE PARTIAL CONTACT', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (4, 'FR - FRONT END (RIGHT) DAMAGE PARTIAL CONTACT', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (5, 'BC - BACK END DAMAGE CONCENTRATED IMPACT', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (6, 'BD - BACK END DAMAGE DISTRIBUTED IMPACT', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (7, 'BL - BACK END (LEFT) DAMAGE PARTIAL CONTACT', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (8, 'BR - BACK END (RIGHT) DAMAGE PARTIAL CONTACT', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (9, 'LP - LEFT SIDE DAMAGE ANGULAR IMPACT', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (10, 'RP - RIGHT SIDE DAMAGE ANGULAR IMPACT', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (11, 'LFQ - LEFT FRONT QUARTER DAMAGE ANGULAR IMPACT', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (12, 'RFQ - RIGHT FRONT QUARTER DAMAGE ANGULAR IMPACT', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (13, 'LBQ - LEFT BACK QUARTER DAMAGE ANGULAR IMPACT', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (14, 'RBQ - RIGHT BACK QUARTER DAMAGE ANGULAR IMPACT', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (15, 'LD - DISTRIBUTED LEFT SIDE DAMAGE PARALLEL IMPACT', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (16, 'RD - DISTRIBUTED RIGHT SIDE DAMAGE PARALLEL IMPACT', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (17, 'L&T - LEFT SIDE AND TOP DAMAGE ROLLOVER EFFECTS', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (18, 'R&T - RIGHT SIDE AND TOP DAMAGE ROLLOVER EFFECTS', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (19, 'VX-0 - UNDERCARRIAGE DAMAGE ONLY', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (20, 'VB-1 - VEHICLE BURNED NOT DUE TO COLLISION (ENGINE CATCHES FIRE, CIGARETTE BURNS UPHOLSTERY, ETC.)', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (22, 'VB-7 - VEHICLE CATCHES FIRE DUE TO THE COLLISION (VEHICLE COLLIDES WITH OBJECT OR ANOTHER VEHICLE AND FIRE STARTS)', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (23, 'NA-NOT APPLICABLE ( FARM TRACTOR, ETC.)', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (24, 'TP-0 - TOP DAMAGE ONLY', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (25, 'MC-1 - MOTORCYCLE, SCOOTER, MOPED, ETC. ONLY', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (26, 'MC - MOTORCYCLE, SCOOTER, MOPED, ETC. ONLY', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (27, 'TP - TOP DAMAGE', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (28, 'VB - VEHICLE BURNED', 'cris'); +insert into lookups.veh_damage_description (id, label, source) values (29, 'VX - UNDERCARRIAGE DAMAGE', 'cris'); +insert into lookups.veh_damage_severity (id, label, source) values (0, 'NO DAMAGE', 'cris'); +insert into lookups.veh_damage_severity (id, label, source) values (1, 'DAMAGED 1 MINIMUM', 'cris'); +insert into lookups.veh_damage_severity (id, label, source) values (2, 'DAMAGED 2', 'cris'); +insert into lookups.veh_damage_severity (id, label, source) values (3, 'DAMAGED 3', 'cris'); +insert into lookups.veh_damage_severity (id, label, source) values (4, 'DAMAGED 4', 'cris'); +insert into lookups.veh_damage_severity (id, label, source) values (5, 'DAMAGED 5', 'cris'); +insert into lookups.veh_damage_severity (id, label, source) values (6, 'DAMAGED 6', 'cris'); +insert into lookups.veh_damage_severity (id, label, source) values (7, 'DAMAGED 7 HIGHEST', 'cris'); +insert into lookups.veh_make (id, label, source) values (1, 'ACURA', 'cris'); +insert into lookups.veh_make (id, label, source) values (4, 'AMERICAN MOTORS', 'cris'); +insert into lookups.veh_make (id, label, source) values (6, 'APRILIA', 'cris'); +insert into lookups.veh_make (id, label, source) values (7, 'ASTON MARTIN', 'cris'); +insert into lookups.veh_make (id, label, source) values (8, 'AUDI', 'cris'); +insert into lookups.veh_make (id, label, source) values (10, 'AUTOCAR', 'cris'); +insert into lookups.veh_make (id, label, source) values (11, 'BENTLEY', 'cris'); +insert into lookups.veh_make (id, label, source) values (13, 'BLUE BIRD', 'cris'); +insert into lookups.veh_make (id, label, source) values (14, 'BMW', 'cris'); +insert into lookups.veh_make (id, label, source) values (17, 'BUELL', 'cris'); +insert into lookups.veh_make (id, label, source) values (19, 'CATERPILLAR', 'cris'); +insert into lookups.veh_make (id, label, source) values (21, 'CHRYSLER', 'cris'); +insert into lookups.veh_make (id, label, source) values (23, 'CRANE CARRIER', 'cris'); +insert into lookups.veh_make (id, label, source) values (25, 'DAEWOO', 'cris'); +insert into lookups.veh_make (id, label, source) values (26, 'DAIHATSU', 'cris'); +insert into lookups.veh_make (id, label, source) values (28, 'DIAMOND REO', 'cris'); +insert into lookups.veh_make (id, label, source) values (30, 'DINA TRANSIT BUS', 'cris'); +insert into lookups.veh_make (id, label, source) values (32, 'DUCATI', 'cris'); +insert into lookups.veh_make (id, label, source) values (33, 'FEDERAL MOTORS', 'cris'); +insert into lookups.veh_make (id, label, source) values (34, 'FERRARI', 'cris'); +insert into lookups.veh_make (id, label, source) values (35, 'FIAT', 'cris'); +insert into lookups.veh_make (id, label, source) values (36, 'FLXIBLE TRANSIT BUS', 'cris'); +insert into lookups.veh_make (id, label, source) values (37, 'FORD', 'cris'); +insert into lookups.veh_make (id, label, source) values (38, 'FREIGHTLINER', 'cris'); +insert into lookups.veh_make (id, label, source) values (39, 'GMC', 'cris'); +insert into lookups.veh_make (id, label, source) values (40, 'GILLIG', 'cris'); +insert into lookups.veh_make (id, label, source) values (42, 'HARLEY-DAVIDSON', 'cris'); +insert into lookups.veh_make (id, label, source) values (43, 'HINO', 'cris'); +insert into lookups.veh_make (id, label, source) values (44, 'HONDA', 'cris'); +insert into lookups.veh_make (id, label, source) values (45, 'HYUNDAI', 'cris'); +insert into lookups.veh_make (id, label, source) values (47, 'INFINITI', 'cris'); +insert into lookups.veh_make (id, label, source) values (48, 'INTERNATIONAL', 'cris'); +insert into lookups.veh_make (id, label, source) values (49, 'ISUZU', 'cris'); +insert into lookups.veh_make (id, label, source) values (50, 'IVECO', 'cris'); +insert into lookups.veh_make (id, label, source) values (51, 'JAGUAR', 'cris'); +insert into lookups.veh_make (id, label, source) values (52, 'JOHN DEERE', 'cris'); +insert into lookups.veh_make (id, label, source) values (53, 'KAWASAKI', 'cris'); +insert into lookups.veh_make (id, label, source) values (54, 'KENWORTH', 'cris'); +insert into lookups.veh_make (id, label, source) values (55, 'KIA', 'cris'); +insert into lookups.veh_make (id, label, source) values (56, 'LANCIA', 'cris'); +insert into lookups.veh_make (id, label, source) values (57, 'LAND ROVER', 'cris'); +insert into lookups.veh_make (id, label, source) values (58, 'LEXUS', 'cris'); +insert into lookups.veh_make (id, label, source) values (59, 'LOTUS', 'cris'); +insert into lookups.veh_make (id, label, source) values (60, 'MACK', 'cris'); +insert into lookups.veh_make (id, label, source) values (61, 'MARMON HERRINGTON', 'cris'); +insert into lookups.veh_make (id, label, source) values (62, 'MAYBACH', 'cris'); +insert into lookups.veh_make (id, label, source) values (63, 'MAZDA', 'cris'); +insert into lookups.veh_make (id, label, source) values (64, 'LES AUTOBUS MCI', 'cris'); +insert into lookups.veh_make (id, label, source) values (65, 'MERCEDES-BENZ', 'cris'); +insert into lookups.veh_make (id, label, source) values (68, 'MITSUBISHI', 'cris'); +insert into lookups.veh_make (id, label, source) values (69, 'MOTO GUZZI', 'cris'); +insert into lookups.veh_make (id, label, source) values (70, 'NEOPLAN', 'cris'); +insert into lookups.veh_make (id, label, source) values (71, 'NISSAN', 'cris'); +insert into lookups.veh_make (id, label, source) values (74, 'PETERBILT', 'cris'); +insert into lookups.veh_make (id, label, source) values (75, 'PEUGEOT', 'cris'); +insert into lookups.veh_make (id, label, source) values (76, 'PORSCHE', 'cris'); +insert into lookups.veh_make (id, label, source) values (79, 'ROLLS-ROYCE', 'cris'); +insert into lookups.veh_make (id, label, source) values (80, 'SAAB', 'cris'); +insert into lookups.veh_make (id, label, source) values (81, 'SATURN', 'cris'); +insert into lookups.veh_make (id, label, source) values (82, 'SILVER EAGLE MFG CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (84, 'STERLING', 'cris'); +insert into lookups.veh_make (id, label, source) values (85, 'SUBARU', 'cris'); +insert into lookups.veh_make (id, label, source) values (88, 'SUZUKI', 'cris'); +insert into lookups.veh_make (id, label, source) values (89, 'TRANSPORTATION MFG CORP.', 'cris'); +insert into lookups.veh_make (id, label, source) values (91, 'TOYOTA', 'cris'); +insert into lookups.veh_make (id, label, source) values (92, 'TRIUMPH CAR', 'cris'); +insert into lookups.veh_make (id, label, source) values (95, 'VESPA', 'cris'); +insert into lookups.veh_make (id, label, source) values (96, 'VOLKSWAGEN', 'cris'); +insert into lookups.veh_make (id, label, source) values (98, 'VOLVO', 'cris'); +insert into lookups.veh_make (id, label, source) values (100, 'WHITE', 'cris'); +insert into lookups.veh_make (id, label, source) values (101, 'YAMAHA', 'cris'); +insert into lookups.veh_make (id, label, source) values (102, 'YUGO', 'cris'); +insert into lookups.veh_make (id, label, source) values (104, 'ALFA ROMEO', 'cris'); +insert into lookups.veh_make (id, label, source) values (105, 'BUICK', 'cris'); +insert into lookups.veh_make (id, label, source) values (106, 'CADILLAC', 'cris'); +insert into lookups.veh_make (id, label, source) values (107, 'CHEVROLET', 'cris'); +insert into lookups.veh_make (id, label, source) values (108, 'DATSUN', 'cris'); +insert into lookups.veh_make (id, label, source) values (109, 'DODGE', 'cris'); +insert into lookups.veh_make (id, label, source) values (110, 'GEO', 'cris'); +insert into lookups.veh_make (id, label, source) values (112, 'HUMMER', 'cris'); +insert into lookups.veh_make (id, label, source) values (113, 'LINCOLN', 'cris'); +insert into lookups.veh_make (id, label, source) values (114, 'MERCURY', 'cris'); +insert into lookups.veh_make (id, label, source) values (115, 'MINI', 'cris'); +insert into lookups.veh_make (id, label, source) values (116, 'OLDSMOBILE', 'cris'); +insert into lookups.veh_make (id, label, source) values (117, 'PLYMOUTH', 'cris'); +insert into lookups.veh_make (id, label, source) values (118, 'PONTIAC', 'cris'); +insert into lookups.veh_make (id, label, source) values (119, 'ALL OTHER MAKES', 'cris'); +insert into lookups.veh_make (id, label, source) values (121, 'MERKUR', 'cris'); +insert into lookups.veh_make (id, label, source) values (125, 'AVANTI', 'cris'); +insert into lookups.veh_make (id, label, source) values (146, 'EAGLE', 'cris'); +insert into lookups.veh_make (id, label, source) values (151, 'FORETRAVEL MOTORHOME', 'cris'); +insert into lookups.veh_make (id, label, source) values (155, 'FWD CORPORATION', 'cris'); +insert into lookups.veh_make (id, label, source) values (157, 'GREAT DANE TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (160, 'INDIAN MOTORCYCLE CO.', 'cris'); +insert into lookups.veh_make (id, label, source) values (167, 'LADA', 'cris'); +insert into lookups.veh_make (id, label, source) values (168, 'LAMBORGHINI', 'cris'); +insert into lookups.veh_make (id, label, source) values (171, 'MASERATI', 'cris'); +insert into lookups.veh_make (id, label, source) values (173, 'MONARCH TRAILER CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (178, 'OSHKOSH', 'cris'); +insert into lookups.veh_make (id, label, source) values (179, 'OVERLAND TRUCK/TRAILER', 'cris'); +insert into lookups.veh_make (id, label, source) values (181, 'PIERCE MFG. INC.', 'cris'); +insert into lookups.veh_make (id, label, source) values (183, 'PREVOST', 'cris'); +insert into lookups.veh_make (id, label, source) values (201, 'WINNEBAGO', 'cris'); +insert into lookups.veh_make (id, label, source) values (207, 'OTHER (EXPLAIN IN NARRATIVE)', 'cris'); +insert into lookups.veh_make (id, label, source) values (208, 'UNKNOWN', 'cris'); +insert into lookups.veh_make (id, label, source) values (210, 'ACE WELDING TRAILER COMPANY', 'cris'); +insert into lookups.veh_make (id, label, source) values (211, 'ACIER FABREX INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (212, 'ACRO TRAILER COMPANY', 'cris'); +insert into lookups.veh_make (id, label, source) values (213, 'ACTION EQUIPMENT', 'cris'); +insert into lookups.veh_make (id, label, source) values (214, 'ADVANCE ENGINEERED PRODUCTS', 'cris'); +insert into lookups.veh_make (id, label, source) values (215, 'ADVANCE MIXER', 'cris'); +insert into lookups.veh_make (id, label, source) values (216, 'AJAX MANUFACTURING COMPANY INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (217, 'AJR INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (218, 'ALABAMA TRAILER COMPANY', 'cris'); +insert into lookups.veh_make (id, label, source) values (219, 'ALFAB INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (220, 'ALLENTOWN BRAKE & WHEEL SERVICE', 'cris'); +insert into lookups.veh_make (id, label, source) values (221, 'ALLIED TANK TRUCK', 'cris'); +insert into lookups.veh_make (id, label, source) values (222, 'ALLOY TRAILERS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (223, 'ALMONT', 'cris'); +insert into lookups.veh_make (id, label, source) values (224, 'ALTEC IND INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (225, 'ALUMATECH', 'cris'); +insert into lookups.veh_make (id, label, source) values (226, 'ALUMINUM BODY CORP', 'cris'); +insert into lookups.veh_make (id, label, source) values (227, 'AMERICAN GENERAL', 'cris'); +insert into lookups.veh_make (id, label, source) values (228, 'AMERICAN CARRIER EQUIPMENT', 'cris'); +insert into lookups.veh_make (id, label, source) values (229, 'AMERICAN IRON HORSE', 'cris'); +insert into lookups.veh_make (id, label, source) values (230, 'AMERICAN LA FRANCE', 'cris'); +insert into lookups.veh_make (id, label, source) values (231, 'AMERICAN REBEL', 'cris'); +insert into lookups.veh_make (id, label, source) values (232, 'AMERICAN ROAD TRAILER', 'cris'); +insert into lookups.veh_make (id, label, source) values (233, 'AMERICAN TRAILER MANUFACTURING INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (234, 'AMERICAN TRAILERS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (235, 'ANDERSON MANUFACTURING INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (236, 'ANJI MFG', 'cris'); +insert into lookups.veh_make (id, label, source) values (237, 'ARLINGTON POWER SYSTEMS', 'cris'); +insert into lookups.veh_make (id, label, source) values (238, 'ARMOR CHASSIS LLC', 'cris'); +insert into lookups.veh_make (id, label, source) values (239, 'ARTECH ENG INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (240, 'ASPEN METAL PROD & FABRICATORS LTD', 'cris'); +insert into lookups.veh_make (id, label, source) values (241, 'ASUNA', 'cris'); +insert into lookups.veh_make (id, label, source) values (242, 'ATK', 'cris'); +insert into lookups.veh_make (id, label, source) values (243, 'ATLAS MFG CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (244, 'ATLAS TRUCK BODIES', 'cris'); +insert into lookups.veh_make (id, label, source) values (245, 'AUTOCAR LLC', 'cris'); +insert into lookups.veh_make (id, label, source) values (246, 'AZTEC PRODUCTS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (247, 'BAME TRAILER', 'cris'); +insert into lookups.veh_make (id, label, source) values (248, 'BANKHEAD ENTERPRISES', 'cris'); +insert into lookups.veh_make (id, label, source) values (249, 'BAR-BEL FABRICATION CO INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (250, 'BARRETT TRAILERS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (251, 'BEALL AND/OR TECWELD', 'cris'); +insert into lookups.veh_make (id, label, source) values (252, 'BEDARD TANKERS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (253, 'BENSON TRUCK BODIES', 'cris'); +insert into lookups.veh_make (id, label, source) values (254, 'BERING', 'cris'); +insert into lookups.veh_make (id, label, source) values (255, 'BETTER BUILT TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (256, 'BIG BEAR CHOPPERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (257, 'BIG DOG', 'cris'); +insert into lookups.veh_make (id, label, source) values (258, 'BILT-RITE TRAILERS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (259, 'BLACK BEAR MFG', 'cris'); +insert into lookups.veh_make (id, label, source) values (260, 'BOBKO', 'cris'); +insert into lookups.veh_make (id, label, source) values (261, 'BOCATS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (262, 'BOISE MOBILE EQUIPMENT', 'cris'); +insert into lookups.veh_make (id, label, source) values (263, 'BOONE TRAILERS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (264, 'BORCO EQUIPMENT CO INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (265, 'BOYD TANK TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (266, 'BOYDSTUN METAL WORKS', 'cris'); +insert into lookups.veh_make (id, label, source) values (267, 'BRENNER TANK INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (268, 'BRENT INDUSTRIES', 'cris'); +insert into lookups.veh_make (id, label, source) values (269, 'BROOKFIELD TRAILER CORP', 'cris'); +insert into lookups.veh_make (id, label, source) values (270, 'BUILT-RITE TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (271, 'BULK MFG', 'cris'); +insert into lookups.veh_make (id, label, source) values (272, 'BURKETT''S AUTORAMA INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (273, 'BUTLER', 'cris'); +insert into lookups.veh_make (id, label, source) values (274, 'BWS MANUFACTURING', 'cris'); +insert into lookups.veh_make (id, label, source) values (275, 'C Z ENGINEERING', 'cris'); +insert into lookups.veh_make (id, label, source) values (276, 'C/S TRAILER', 'cris'); +insert into lookups.veh_make (id, label, source) values (277, 'CAGIVA', 'cris'); +insert into lookups.veh_make (id, label, source) values (278, 'CAPACITY OF TEXAS', 'cris'); +insert into lookups.veh_make (id, label, source) values (279, 'CENTENNIAL INDUSTRIES', 'cris'); +insert into lookups.veh_make (id, label, source) values (280, 'CENTREVILLE TAG', 'cris'); +insert into lookups.veh_make (id, label, source) values (281, 'CHALLENGE-COOK BROTHERS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (282, 'CHAMBERLAIN TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (283, 'CHAMPION TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (284, 'CHANCE COACH TRANSIT BUS', 'cris'); +insert into lookups.veh_make (id, label, source) values (285, 'CHAPARRAL MANUFACTURING INC.', 'cris'); +insert into lookups.veh_make (id, label, source) values (286, 'CHAPARRAL TRAILERS OF AR', 'cris'); +insert into lookups.veh_make (id, label, source) values (287, 'CHARMAC TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (288, 'CHEETAH CHASSIS', 'cris'); +insert into lookups.veh_make (id, label, source) values (289, 'CHEROKEE MFG CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (290, 'CHEROKEE PRODUCTS', 'cris'); +insert into lookups.veh_make (id, label, source) values (291, 'CHIEF INDUSTRIES INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (292, 'CIMC TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (293, 'CIRCLE J', 'cris'); +insert into lookups.veh_make (id, label, source) values (294, 'CIRCLE R INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (295, 'CITY TRAILER SALES', 'cris'); +insert into lookups.veh_make (id, label, source) values (296, 'CLARK TRAILER SERVICE INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (297, 'CLEMENT INDUSTRIES', 'cris'); +insert into lookups.veh_make (id, label, source) values (298, 'CLOUGH EQUIPMENT', 'cris'); +insert into lookups.veh_make (id, label, source) values (299, 'COAST MECH INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (300, 'COBRA MFG INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (301, 'COLUMBIA BODY & EQUIP CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (302, 'COLUMBIA TRAILER CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (303, 'COMANCHE MFG INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (304, 'COMET CORPORATION', 'cris'); +insert into lookups.veh_make (id, label, source) values (306, 'CONSTRUCTION TRAILER SPECIALISTS', 'cris'); +insert into lookups.veh_make (id, label, source) values (307, 'CONTRACT MANUFACTURING INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (308, 'CORN BELT MFG CO INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (309, 'CORNELIUS MFG INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (310, 'CORNHUSKER', 'cris'); +insert into lookups.veh_make (id, label, source) values (311, 'COTTINGHAM MONTONE CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (312, 'COTTRELL INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (313, 'COUNTRY COACH MOTORHOME', 'cris'); +insert into lookups.veh_make (id, label, source) values (314, 'COZAD TRAILER SALES', 'cris'); +insert into lookups.veh_make (id, label, source) values (315, 'CPI MOTOR COMPANY', 'cris'); +insert into lookups.veh_make (id, label, source) values (316, 'CPS TRAILER CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (317, 'CRESCENT EQUIP CO INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (318, 'CRONKITE IND INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (319, 'CROSS TRUCK EQUIP CO INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (320, 'CROWN COACH', 'cris'); +insert into lookups.veh_make (id, label, source) values (321, 'CRYENCO', 'cris'); +insert into lookups.veh_make (id, label, source) values (322, 'CUSTOM TRAILER INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (323, 'D & B TRAILER', 'cris'); +insert into lookups.veh_make (id, label, source) values (324, 'DACO TRAILER CORP', 'cris'); +insert into lookups.veh_make (id, label, source) values (325, 'DANCO TRAILERS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (326, 'SPRINTER', 'cris'); +insert into lookups.veh_make (id, label, source) values (327, 'DELAVAN IND INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (328, 'DELOUPE INC.', 'cris'); +insert into lookups.veh_make (id, label, source) values (329, 'DELTA MANUFACTURING INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (330, 'DELTA TRUCK TRAILER COMPANY', 'cris'); +insert into lookups.veh_make (id, label, source) values (331, 'DERBI', 'cris'); +insert into lookups.veh_make (id, label, source) values (332, 'DETERMAN WELDING & TANK', 'cris'); +insert into lookups.veh_make (id, label, source) values (333, 'DIAMOND STEEL COMPANY', 'cris'); +insert into lookups.veh_make (id, label, source) values (334, 'DICO CO INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (335, 'DOONAN', 'cris'); +insert into lookups.veh_make (id, label, source) values (336, 'DORSEY TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (337, 'DRESSEN CUSTOM TRAILER INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (338, 'DUNHAM MFG CO INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (339, 'DUPLEX', 'cris'); +insert into lookups.veh_make (id, label, source) values (340, 'DUR-A-LITE INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (341, 'DYNAWELD INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (342, 'E D ETNYRE & CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (343, 'EAGER BEAVER', 'cris'); +insert into lookups.veh_make (id, label, source) values (344, 'EAGLE TRANSIT BUSES', 'cris'); +insert into lookups.veh_make (id, label, source) values (345, 'EAGLEROCK TRAILES INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (346, 'EAST MANUFACTURING', 'cris'); +insert into lookups.veh_make (id, label, source) values (347, 'ECONOLINE TRAILERS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (348, 'EIGHT POINT', 'cris'); +insert into lookups.veh_make (id, label, source) values (349, 'EL DORADO', 'cris'); +insert into lookups.veh_make (id, label, source) values (350, 'ELECTRIC VEHICLE TECHNOLOGIES', 'cris'); +insert into lookups.veh_make (id, label, source) values (351, 'EMERGENCY ONE', 'cris'); +insert into lookups.veh_make (id, label, source) values (352, 'EMPIRE LIKENS', 'cris'); +insert into lookups.veh_make (id, label, source) values (353, 'EVANS TANK TRAILER', 'cris'); +insert into lookups.veh_make (id, label, source) values (354, 'EVANS-PLUGGE CO INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (355, 'EVERLITE INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (356, 'EVOBUS', 'cris'); +insert into lookups.veh_make (id, label, source) values (357, 'EXXISS ALUMINUM TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (358, 'FALCON TRAILERWORKS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (359, 'FEATHERLITE MANUFACTURING INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (361, 'FERREE TRAILER CORP', 'cris'); +insert into lookups.veh_make (id, label, source) values (362, 'FLORIG EQUIPMENT CO INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (363, 'FLOW BOY MFG', 'cris'); +insert into lookups.veh_make (id, label, source) values (364, 'FONTAINE SPECIALIZED INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (365, 'FONTAINE TRAILER CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (366, 'FRUEHAUF', 'cris'); +insert into lookups.veh_make (id, label, source) values (367, 'GALBREATH INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (368, 'GALLATY TR MFG', 'cris'); +insert into lookups.veh_make (id, label, source) values (369, 'GALYEAN EQUIP CO INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (370, 'GCL TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (371, 'GLOBAL ELECTRIC MOTORS', 'cris'); +insert into lookups.veh_make (id, label, source) values (372, 'GENERAL TRAILER CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (373, 'GENESIS TRANSIT BUSES', 'cris'); +insert into lookups.veh_make (id, label, source) values (374, 'GIANT', 'cris'); +insert into lookups.veh_make (id, label, source) values (375, 'GILMORE', 'cris'); +insert into lookups.veh_make (id, label, source) values (376, 'GILPIN''S WELDING & MACH WORKS', 'cris'); +insert into lookups.veh_make (id, label, source) values (378, 'GOOSENECK TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (379, 'GRAYCO', 'cris'); +insert into lookups.veh_make (id, label, source) values (380, 'GUTHRIE TRAILER SALES', 'cris'); +insert into lookups.veh_make (id, label, source) values (381, 'HACKNEY & SONS', 'cris'); +insert into lookups.veh_make (id, label, source) values (382, 'HACKNEY BROS BODY', 'cris'); +insert into lookups.veh_make (id, label, source) values (383, 'HALLIBUTRON SERVICES', 'cris'); +insert into lookups.veh_make (id, label, source) values (384, 'HARDEE MFG CO.', 'cris'); +insert into lookups.veh_make (id, label, source) values (385, 'HARLEY MURRAY INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (386, 'HARMON TANK', 'cris'); +insert into lookups.veh_make (id, label, source) values (387, 'HATFIELD WELDING & TRAILER SALES', 'cris'); +insert into lookups.veh_make (id, label, source) values (388, 'HAUL MARK IND', 'cris'); +insert into lookups.veh_make (id, label, source) values (389, 'HAWKEYE', 'cris'); +insert into lookups.veh_make (id, label, source) values (390, 'HEIL CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (391, 'HEIL KALYN SIEBERT', 'cris'); +insert into lookups.veh_make (id, label, source) values (392, 'HENDRICKSON', 'cris'); +insert into lookups.veh_make (id, label, source) values (393, 'HERRIN WELDING', 'cris'); +insert into lookups.veh_make (id, label, source) values (394, 'HESSE', 'cris'); +insert into lookups.veh_make (id, label, source) values (395, 'HIGH VIEW MANUFACTURING INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (396, 'HILBILT MFG CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (397, 'HILL', 'cris'); +insert into lookups.veh_make (id, label, source) values (398, 'HILLSBORO INDS', 'cris'); +insert into lookups.veh_make (id, label, source) values (399, 'HOBBS', 'cris'); +insert into lookups.veh_make (id, label, source) values (400, 'HOGG/DAVIS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (401, 'HOLDEN IND', 'cris'); +insert into lookups.veh_make (id, label, source) values (402, 'HOMEMADE VEHICLE', 'cris'); +insert into lookups.veh_make (id, label, source) values (403, 'HOOPER TRAILER', 'cris'); +insert into lookups.veh_make (id, label, source) values (404, 'HUDSON BROS TRAILER MFG INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (405, 'HURST TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (406, 'HUSABERG', 'cris'); +insert into lookups.veh_make (id, label, source) values (407, 'HUSQVARNA', 'cris'); +insert into lookups.veh_make (id, label, source) values (408, 'HYOSUNG', 'cris'); +insert into lookups.veh_make (id, label, source) values (409, 'HYSTER', 'cris'); +insert into lookups.veh_make (id, label, source) values (410, 'HYUNDAI STEEL INDUSTRIES', 'cris'); +insert into lookups.veh_make (id, label, source) values (411, 'I R WITZER CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (412, 'IC CORPORATION', 'cris'); +insert into lookups.veh_make (id, label, source) values (413, 'IMPERIAL TR SER', 'cris'); +insert into lookups.veh_make (id, label, source) values (414, 'INDEPENDENT TRAILER MFG', 'cris'); +insert into lookups.veh_make (id, label, source) values (415, 'INDIANA PHOENIX', 'cris'); +insert into lookups.veh_make (id, label, source) values (416, 'INNOVATIVE TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (417, 'INTERMOUNTAIN WHOLE SALE INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (418, 'INTERNATIONAL TANK & TRAILER CORP', 'cris'); +insert into lookups.veh_make (id, label, source) values (419, 'INTERNATIONAL TRAILER CORP', 'cris'); +insert into lookups.veh_make (id, label, source) values (420, 'INTERSTATE TRAILER', 'cris'); +insert into lookups.veh_make (id, label, source) values (421, 'INTERSTATE TRAILERS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (422, 'INTERSTATE WEST CORPORATION', 'cris'); +insert into lookups.veh_make (id, label, source) values (423, 'J & L', 'cris'); +insert into lookups.veh_make (id, label, source) values (424, 'JACOBSEN TRAILER', 'cris'); +insert into lookups.veh_make (id, label, source) values (425, 'JA-MAR MFG INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (426, 'JAMES RUSSELL ENG WORKS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (427, 'JANTZ-FEMCO', 'cris'); +insert into lookups.veh_make (id, label, source) values (428, 'JD BERTOLINI IND LTD', 'cris'); +insert into lookups.veh_make (id, label, source) values (429, 'JEEP', 'cris'); +insert into lookups.veh_make (id, label, source) values (430, 'JET COMPANY INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (431, 'JFW MANUFACTURING CO INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (432, 'JOHN EVANS MFG', 'cris'); +insert into lookups.veh_make (id, label, source) values (433, 'J-ROD INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (434, 'KALMAR', 'cris'); +insert into lookups.veh_make (id, label, source) values (435, 'KALYN CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (436, 'KANN MFG CORP', 'cris'); +insert into lookups.veh_make (id, label, source) values (437, 'KENT TRUCK-TRAILER SERVICE', 'cris'); +insert into lookups.veh_make (id, label, source) values (438, 'KENTUCKY MFG', 'cris'); +insert into lookups.veh_make (id, label, source) values (439, 'KIDRON INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (440, 'KIEFER BUILT INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (441, 'KILLEBREW MFG CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (442, 'KOLBERG MFG', 'cris'); +insert into lookups.veh_make (id, label, source) values (443, 'KOLSTAD', 'cris'); +insert into lookups.veh_make (id, label, source) values (444, 'KOVATCH', 'cris'); +insert into lookups.veh_make (id, label, source) values (445, 'KROHNERT STAINLESS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (446, 'KTM', 'cris'); +insert into lookups.veh_make (id, label, source) values (447, 'KWIK-LOC', 'cris'); +insert into lookups.veh_make (id, label, source) values (448, 'L & L MANUFACTURING', 'cris'); +insert into lookups.veh_make (id, label, source) values (449, 'L & M MANUFACTURING INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (450, 'L & S LINE', 'cris'); +insert into lookups.veh_make (id, label, source) values (451, 'LAFORZA', 'cris'); +insert into lookups.veh_make (id, label, source) values (452, 'LAMCO MFG & DISTR CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (453, 'LANDOLL CORP', 'cris'); +insert into lookups.veh_make (id, label, source) values (454, 'LBT INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (455, 'LEE CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (457, 'LOAD KING', 'cris'); +insert into lookups.veh_make (id, label, source) values (458, 'LOADCRAFT TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (459, 'LODAL', 'cris'); +insert into lookups.veh_make (id, label, source) values (460, 'LOWBOY', 'cris'); +insert into lookups.veh_make (id, label, source) values (461, 'LOX EQUIPMENT COMPANY', 'cris'); +insert into lookups.veh_make (id, label, source) values (462, 'LUBBOCK', 'cris'); +insert into lookups.veh_make (id, label, source) values (463, 'LUFKIN INDUSTRIES', 'cris'); +insert into lookups.veh_make (id, label, source) values (464, 'M & W TRAILERS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (465, 'M H EBY TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (466, 'MAC TRAILER MFG', 'cris'); +insert into lookups.veh_make (id, label, source) values (467, 'MAC-LANDER', 'cris'); +insert into lookups.veh_make (id, label, source) values (468, 'IVECO-MAGIRUS', 'cris'); +insert into lookups.veh_make (id, label, source) values (469, 'MANAC INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (470, 'MARQUEZ MANUFACTURING CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (471, 'MATE', 'cris'); +insert into lookups.veh_make (id, label, source) values (472, 'MATLOCK TRAILER CORPORATION', 'cris'); +insert into lookups.veh_make (id, label, source) values (473, 'MAURER MANUFACTURING INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (474, 'MAVERICK (FRELL INC)', 'cris'); +insert into lookups.veh_make (id, label, source) values (475, 'MAXIM', 'cris'); +insert into lookups.veh_make (id, label, source) values (476, 'MC CULLOUGH ALUM', 'cris'); +insert into lookups.veh_make (id, label, source) values (477, 'MC CULLOUGH CORP', 'cris'); +insert into lookups.veh_make (id, label, source) values (478, 'MCCLAIN INDUSTRIES', 'cris'); +insert into lookups.veh_make (id, label, source) values (479, 'MCCORD MANUFACTURING INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (480, 'MERRITT EQUIPMENT CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (481, 'MICKEY BODY CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (482, 'MIDLAND MANUFACTURING LIMITED', 'cris'); +insert into lookups.veh_make (id, label, source) values (483, 'MILLER', 'cris'); +insert into lookups.veh_make (id, label, source) values (484, 'MINESOTA VALLEY ENGINEERING', 'cris'); +insert into lookups.veh_make (id, label, source) values (485, 'MISSISSIPPI TANK CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (486, 'MOND INDUSTRIES INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (487, 'MONON', 'cris'); +insert into lookups.veh_make (id, label, source) values (488, 'MONROE MTRS WALLY-MO DIV', 'cris'); +insert into lookups.veh_make (id, label, source) values (489, 'MORITZ INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (490, 'MOTOR COACH INDUSTRIES', 'cris'); +insert into lookups.veh_make (id, label, source) values (491, 'MOTORRAD UND ZWEIRADWERK', 'cris'); +insert into lookups.veh_make (id, label, source) values (492, 'MURPHY MANUFACTURING CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (493, 'NABORS TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (494, 'NECKOVER TR MFG', 'cris'); +insert into lookups.veh_make (id, label, source) values (495, 'NELSON MFG', 'cris'); +insert into lookups.veh_make (id, label, source) values (496, 'NEVILLE WELDING INC.', 'cris'); +insert into lookups.veh_make (id, label, source) values (497, 'NEW CASTLE TRAILER', 'cris'); +insert into lookups.veh_make (id, label, source) values (498, 'NEW FLYER', 'cris'); +insert into lookups.veh_make (id, label, source) values (499, 'NISSAN DIESEL', 'cris'); +insert into lookups.veh_make (id, label, source) values (500, 'NORTH AMERICAN BUS INDUSTRIES (NABI)', 'cris'); +insert into lookups.veh_make (id, label, source) values (501, 'NORTHCUTT TRAILER & EQUIP.', 'cris'); +insert into lookups.veh_make (id, label, source) values (502, 'NOVA BUS CORPORATION', 'cris'); +insert into lookups.veh_make (id, label, source) values (503, 'NOVA FABRICATING', 'cris'); +insert into lookups.veh_make (id, label, source) values (504, 'NUVAN TECHNOLOGY INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (505, 'O T FABRICATING INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (506, 'OKLAHOMA GOOSENECK', 'cris'); +insert into lookups.veh_make (id, label, source) values (507, 'ON THE ROAD INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (508, 'ONNEN TANK TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (509, 'ONTARIO BUS', 'cris'); +insert into lookups.veh_make (id, label, source) values (510, 'ORANGE BLOSSOM TRAILER', 'cris'); +insert into lookups.veh_make (id, label, source) values (511, 'ORION BUS', 'cris'); +insert into lookups.veh_make (id, label, source) values (512, 'OTTAWA', 'cris'); +insert into lookups.veh_make (id, label, source) values (513, 'OWEN CUSTOM', 'cris'); +insert into lookups.veh_make (id, label, source) values (514, 'OWENS-CLASSIC', 'cris'); +insert into lookups.veh_make (id, label, source) values (515, 'PALM MFG AND SALES', 'cris'); +insert into lookups.veh_make (id, label, source) values (516, 'PALMER MACHINE WORKS', 'cris'); +insert into lookups.veh_make (id, label, source) values (517, 'PARAMOUNT TANK', 'cris'); +insert into lookups.veh_make (id, label, source) values (518, 'PASSPORT', 'cris'); +insert into lookups.veh_make (id, label, source) values (519, 'PAUL KROHNERT MFG', 'cris'); +insert into lookups.veh_make (id, label, source) values (520, 'PEERLESS', 'cris'); +insert into lookups.veh_make (id, label, source) values (521, 'PENNSTYLE CAMPERS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (522, 'PHELAN MFG', 'cris'); +insert into lookups.veh_make (id, label, source) values (523, 'PHOENIX PROD INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (524, 'PIAGGIO', 'cris'); +insert into lookups.veh_make (id, label, source) values (525, 'PIKE TRAILER', 'cris'); +insert into lookups.veh_make (id, label, source) values (526, 'PINES TRAILER CORP', 'cris'); +insert into lookups.veh_make (id, label, source) values (527, 'PITTS ENTERPRISES', 'cris'); +insert into lookups.veh_make (id, label, source) values (528, 'POLAR', 'cris'); +insert into lookups.veh_make (id, label, source) values (529, 'POLARIS', 'cris'); +insert into lookups.veh_make (id, label, source) values (531, 'PRAIRIE TRAILER SALES & SERVICE', 'cris'); +insert into lookups.veh_make (id, label, source) values (532, 'R & S BODY', 'cris'); +insert into lookups.veh_make (id, label, source) values (533, 'R M WARREN MANUFACTURING', 'cris'); +insert into lookups.veh_make (id, label, source) values (534, 'RAGLAND INDUSTRIES INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (535, 'RANCH MFG CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (536, 'RAVENS METAL PRODUCTS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (537, 'RED RIVER MANUFACTURING', 'cris'); +insert into lookups.veh_make (id, label, source) values (538, 'REDI-HAUL', 'cris'); +insert into lookups.veh_make (id, label, source) values (539, 'REIDS', 'cris'); +insert into lookups.veh_make (id, label, source) values (540, 'REINKE MFG CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (541, 'REITNOUER', 'cris'); +insert into lookups.veh_make (id, label, source) values (542, 'RELIABLE', 'cris'); +insert into lookups.veh_make (id, label, source) values (543, 'RELIABLE TANK', 'cris'); +insert into lookups.veh_make (id, label, source) values (544, 'RELIANCE TRAILER MFG', 'cris'); +insert into lookups.veh_make (id, label, source) values (545, 'REMTEC INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (546, 'RENAULT', 'cris'); +insert into lookups.veh_make (id, label, source) values (547, 'ROAD RAILER', 'cris'); +insert into lookups.veh_make (id, label, source) values (548, 'ROAD SYSTEMS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (549, 'ROADMASTER RAIL', 'cris'); +insert into lookups.veh_make (id, label, source) values (550, 'ROADRUNNER TRAILER & HITCH CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (551, 'ROCKHILL BODY CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (552, 'ROGER MFG', 'cris'); +insert into lookups.veh_make (id, label, source) values (553, 'ROGERS BROTHERS CORP', 'cris'); +insert into lookups.veh_make (id, label, source) values (554, 'R-WAY CORPORATION', 'cris'); +insert into lookups.veh_make (id, label, source) values (555, 'S/M EQUIP COR', 'cris'); +insert into lookups.veh_make (id, label, source) values (556, 'SAUK CENTRE WELDING & MACHINE', 'cris'); +insert into lookups.veh_make (id, label, source) values (557, 'SAVAGE', 'cris'); +insert into lookups.veh_make (id, label, source) values (558, 'SAVANNAH MACHINE SHOP & LOADER CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (559, 'SCANIA', 'cris'); +insert into lookups.veh_make (id, label, source) values (560, 'SCHALLER MFG INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (561, 'SCHIEN BODY & EQUIP', 'cris'); +insert into lookups.veh_make (id, label, source) values (562, 'SCHWARTZ MFG CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (563, 'SEAGRAVE FIRE APPARATUS', 'cris'); +insert into lookups.veh_make (id, label, source) values (564, 'SHELBY TRAILER & MFG CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (565, 'SHOALS AMERICAN IND', 'cris'); +insert into lookups.veh_make (id, label, source) values (566, 'SIEBERT TRAILERS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (567, 'SIMCO', 'cris'); +insert into lookups.veh_make (id, label, source) values (568, 'SKODA', 'cris'); +insert into lookups.veh_make (id, label, source) values (569, 'SKYLINE TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (570, 'SMART', 'cris'); +insert into lookups.veh_make (id, label, source) values (571, 'SMITHCO MANUFACTURING', 'cris'); +insert into lookups.veh_make (id, label, source) values (572, 'SOMERSET WELDING & STEEL', 'cris'); +insert into lookups.veh_make (id, label, source) values (573, 'SOONER TRAILER MFG CO INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (574, 'SPARTA MANUFACTURING CORP', 'cris'); +insert into lookups.veh_make (id, label, source) values (575, 'SPARTAN MOTORS', 'cris'); +insert into lookups.veh_make (id, label, source) values (576, 'SPECTOR MANUFACTURING', 'cris'); +insert into lookups.veh_make (id, label, source) values (577, 'SSI', 'cris'); +insert into lookups.veh_make (id, label, source) values (578, 'STAINLESS TANK & EQUIPME', 'cris'); +insert into lookups.veh_make (id, label, source) values (580, 'STANDARD T/T', 'cris'); +insert into lookups.veh_make (id, label, source) values (581, 'STANDARD TRAILER CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (582, 'STAR TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (583, 'STARLITE TRAILER MFG CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (584, 'STECO INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (585, 'STEPHENS PNEUMATIC', 'cris'); +insert into lookups.veh_make (id, label, source) values (586, 'STEWART & STEVENSON', 'cris'); +insert into lookups.veh_make (id, label, source) values (587, 'STOUGHTON TRAILERS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (588, 'STRICK TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (589, 'STUART', 'cris'); +insert into lookups.veh_make (id, label, source) values (590, 'SUMMIT TRAILER SALES INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (591, 'SUNSHINE STAINLESS TANK', 'cris'); +insert into lookups.veh_make (id, label, source) values (592, 'SUPERIOR IDEAL INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (593, 'SUPERIOR TRAILER WORKS', 'cris'); +insert into lookups.veh_make (id, label, source) values (594, 'SUPREME CORP', 'cris'); +insert into lookups.veh_make (id, label, source) values (595, 'SUTPHEN CORP.', 'cris'); +insert into lookups.veh_make (id, label, source) values (596, 'T & L MANUFACTURING CO INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (597, 'TA BROUILLETTE & SON INC.', 'cris'); +insert into lookups.veh_make (id, label, source) values (598, 'TALBERT TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (599, 'TARASPORT TRAILERS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (600, 'TARGET TRAILER', 'cris'); +insert into lookups.veh_make (id, label, source) values (601, 'TEREX / TEREX ADVANCE', 'cris'); +insert into lookups.veh_make (id, label, source) values (602, 'TESLA', 'cris'); +insert into lookups.veh_make (id, label, source) values (603, 'TEXAS BRAGG ENTERPRISES', 'cris'); +insert into lookups.veh_make (id, label, source) values (604, 'TEXAS TRAILER SERVICE CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (605, 'THAYCO TRAILER CORP', 'cris'); +insert into lookups.veh_make (id, label, source) values (606, 'THE BUDD COMPANY', 'cris'); +insert into lookups.veh_make (id, label, source) values (607, 'THEURER TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (608, 'THIELE INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (609, 'THOMAS', 'cris'); +insert into lookups.veh_make (id, label, source) values (610, 'THOMPSON TANK', 'cris'); +insert into lookups.veh_make (id, label, source) values (611, 'TI-BROOK', 'cris'); +insert into lookups.veh_make (id, label, source) values (612, 'TIMPTE', 'cris'); +insert into lookups.veh_make (id, label, source) values (613, 'TITAN TRAILER CORP', 'cris'); +insert into lookups.veh_make (id, label, source) values (614, 'TITAN TRAILER MFG', 'cris'); +insert into lookups.veh_make (id, label, source) values (615, 'TITAN TRAILER-PDQ', 'cris'); +insert into lookups.veh_make (id, label, source) values (616, 'TOP ENTERPRISES INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (617, 'TOP HAT INDUSTRIES INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (618, 'TRAIL KING', 'cris'); +insert into lookups.veh_make (id, label, source) values (619, 'TRAILERS-R-US', 'cris'); +insert into lookups.veh_make (id, label, source) values (620, 'TRAILERS DE MONTERREY S A', 'cris'); +insert into lookups.veh_make (id, label, source) values (621, 'TRAILERS UNLIMITED OF ARLINGTON INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (622, 'TRAIL EZE DAKOTA MFG', 'cris'); +insert into lookups.veh_make (id, label, source) values (623, 'TRAILMASTER', 'cris'); +insert into lookups.veh_make (id, label, source) values (624, 'TRAILMASTER TANKS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (625, 'TRAILMOBILE', 'cris'); +insert into lookups.veh_make (id, label, source) values (626, 'TRAIL-RITE TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (627, 'TRAILSTAR MFG CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (628, 'TRANSCRAFT CORP', 'cris'); +insert into lookups.veh_make (id, label, source) values (629, 'TRANSGLOBAL IND', 'cris'); +insert into lookups.veh_make (id, label, source) values (630, 'TRANSPORT TECH CORP', 'cris'); +insert into lookups.veh_make (id, label, source) values (631, 'TRANSPORT TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (632, 'TRAVIS BODY & TRAILER', 'cris'); +insert into lookups.veh_make (id, label, source) values (633, 'TREMCAR', 'cris'); +insert into lookups.veh_make (id, label, source) values (634, 'TRINITY TRAILER MFG INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (635, 'TRIPLE B TRUCK BODY', 'cris'); +insert into lookups.veh_make (id, label, source) values (636, 'TRI-QUEST INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (637, 'TUFF BOY INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (638, 'TVR', 'cris'); +insert into lookups.veh_make (id, label, source) values (639, 'TWIN CITY WELDING & TRAILER SALES', 'cris'); +insert into lookups.veh_make (id, label, source) values (640, 'TWO K MFG', 'cris'); +insert into lookups.veh_make (id, label, source) values (641, 'U S LIBERTY TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (642, 'U SAVE TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (643, 'U-HAUL INTERNATIONAL', 'cris'); +insert into lookups.veh_make (id, label, source) values (644, 'ULTRA LITE MFG', 'cris'); +insert into lookups.veh_make (id, label, source) values (645, 'UNIMOG', 'cris'); +insert into lookups.veh_make (id, label, source) values (646, 'UNITED EXPRESS LINE INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (647, 'UNVERFERTH MFG CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (648, 'USTS MFG', 'cris'); +insert into lookups.veh_make (id, label, source) values (649, 'UTILIMASTER', 'cris'); +insert into lookups.veh_make (id, label, source) values (650, 'UTILITY EQUP', 'cris'); +insert into lookups.veh_make (id, label, source) values (651, 'UTILITY TOOL & BODY COMPANY INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (652, 'UTILITY TRAILER MFG', 'cris'); +insert into lookups.veh_make (id, label, source) values (653, 'VAN HOOL', 'cris'); +insert into lookups.veh_make (id, label, source) values (654, 'VANCO INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (655, 'VANGUARD NATIONAL TRAILER CORP', 'cris'); +insert into lookups.veh_make (id, label, source) values (656, 'VANTAGE DUMP TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (657, 'VERMEER MFG. CO.', 'cris'); +insert into lookups.veh_make (id, label, source) values (658, 'VICTORIA IRON & METAL', 'cris'); +insert into lookups.veh_make (id, label, source) values (659, 'VICTORY MOTORCYCLES', 'cris'); +insert into lookups.veh_make (id, label, source) values (660, 'VIM TRAILER MFG INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (661, 'VULCAN TRAILER MFG CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (662, 'WABASH NATIONAL CORP', 'cris'); +insert into lookups.veh_make (id, label, source) values (663, 'WALKER STAINLESS EQUIP CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (664, 'WALTON PRODUCTS', 'cris'); +insert into lookups.veh_make (id, label, source) values (665, 'WARREN INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (666, 'WELCH TRAILER', 'cris'); +insert into lookups.veh_make (id, label, source) values (667, 'WELD IT', 'cris'); +insert into lookups.veh_make (id, label, source) values (668, 'WELLCO MFG', 'cris'); +insert into lookups.veh_make (id, label, source) values (669, 'WELLS CARGO', 'cris'); +insert into lookups.veh_make (id, label, source) values (670, 'WESCO TRUCK & TRAILER SALES', 'cris'); +insert into lookups.veh_make (id, label, source) values (671, 'WESTERN RV', 'cris'); +insert into lookups.veh_make (id, label, source) values (672, 'WESTERN STAR/AUTO CAR', 'cris'); +insert into lookups.veh_make (id, label, source) values (673, 'WESTERN TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (674, 'WESTERN TRUCK & TRAILER CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (675, 'WEST-MARK CORP', 'cris'); +insert into lookups.veh_make (id, label, source) values (676, 'WHEELER STEEL WORKS', 'cris'); +insert into lookups.veh_make (id, label, source) values (677, 'WHITE BEAR EQUIPMENT CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (678, 'WHITE/GMC', 'cris'); +insert into lookups.veh_make (id, label, source) values (679, 'WILKENS MFG INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (680, 'WILLIAMS (MOYOCK MFG INC)', 'cris'); +insert into lookups.veh_make (id, label, source) values (681, 'WILLIAMS MFG CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (682, 'WILLIAMSEN TRUCK EQUIPMENT', 'cris'); +insert into lookups.veh_make (id, label, source) values (683, 'WIL-RO INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (684, 'WILSON TRAILER CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (685, 'WISCONSIN', 'cris'); +insert into lookups.veh_make (id, label, source) values (686, 'WORKHORSE CUSTOM CHASSIS', 'cris'); +insert into lookups.veh_make (id, label, source) values (687, 'X-L SPECIALIZED', 'cris'); +insert into lookups.veh_make (id, label, source) values (688, 'X-TEN CORPORATION', 'cris'); +insert into lookups.veh_make (id, label, source) values (689, 'YOUNG TANK INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (690, 'ZELIGSON', 'cris'); +insert into lookups.veh_make (id, label, source) values (691, 'ZONGSHEN', 'cris'); +insert into lookups.veh_make (id, label, source) values (692, 'PETER PIRSCH & SONS CO.', 'cris'); +insert into lookups.veh_make (id, label, source) values (693, 'BUGATTI', 'cris'); +insert into lookups.veh_make (id, label, source) values (694, 'AZURE DYNAMICS', 'cris'); +insert into lookups.veh_make (id, label, source) values (695, 'BASHAN', 'cris'); +insert into lookups.veh_make (id, label, source) values (696, 'BRAE TRAILERS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (697, 'BRI-MAR MANUFACTURING', 'cris'); +insert into lookups.veh_make (id, label, source) values (698, 'BUS & COACH INTL (BCI)', 'cris'); +insert into lookups.veh_make (id, label, source) values (699, 'CAN-AM', 'cris'); +insert into lookups.veh_make (id, label, source) values (700, 'COMPETITION TRAILERS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (701, 'FISKER AUTOMOTIVE', 'cris'); +insert into lookups.veh_make (id, label, source) values (702, 'FLOE INTERNATIONAL', 'cris'); +insert into lookups.veh_make (id, label, source) values (703, 'GM', 'cris'); +insert into lookups.veh_make (id, label, source) values (704, 'HERITAGE TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (705, 'KYMCO USA INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (706, 'MAC LTT', 'cris'); +insert into lookups.veh_make (id, label, source) values (707, 'MCLAREN AUTOMOTIVE', 'cris'); +insert into lookups.veh_make (id, label, source) values (708, 'MITSUBISHI FUSO TRUCK OF AMERICA INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (709, 'PEABODY ITL COR', 'cris'); +insert into lookups.veh_make (id, label, source) values (710, 'RAM', 'cris'); +insert into lookups.veh_make (id, label, source) values (711, 'STEAIRS WELDING', 'cris'); +insert into lookups.veh_make (id, label, source) values (712, 'TERMINAL SERVICE COMPANY', 'cris'); +insert into lookups.veh_make (id, label, source) values (713, 'VT HACKNEY', 'cris'); +insert into lookups.veh_make (id, label, source) values (714, 'ALMAC INDUSTRIES LIMITED', 'cris'); +insert into lookups.veh_make (id, label, source) values (715, 'AMERICAN CRUISER MOTOR HOME', 'cris'); +insert into lookups.veh_make (id, label, source) values (716, 'ARO', 'cris'); +insert into lookups.veh_make (id, label, source) values (717, 'AXLE & EQUIPMENT SALES CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (718, 'BEBCO', 'cris'); +insert into lookups.veh_make (id, label, source) values (719, 'BIG TEX TRAILER MFG INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (720, 'BILL SCHIFSKY ENTERPRISES', 'cris'); +insert into lookups.veh_make (id, label, source) values (721, 'CMC TRAILERS DIST INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (722, 'COLLIERS EQUIPMENT', 'cris'); +insert into lookups.veh_make (id, label, source) values (723, 'COMMERCIAL BODY SALES', 'cris'); +insert into lookups.veh_make (id, label, source) values (724, 'ETON', 'cris'); +insert into lookups.veh_make (id, label, source) values (725, 'GENUINE SCOOTER CO.', 'cris'); +insert into lookups.veh_make (id, label, source) values (726, 'LIL CAT INC.', 'cris'); +insert into lookups.veh_make (id, label, source) values (727, 'M. V. AGUSTA', 'cris'); +insert into lookups.veh_make (id, label, source) values (728, 'MAHINDRA AND MAHINDRA', 'cris'); +insert into lookups.veh_make (id, label, source) values (729, 'OSHKOSH MOTOR TRUCK CO.', 'cris'); +insert into lookups.veh_make (id, label, source) values (730, 'SMITH ELECTRIC', 'cris'); +insert into lookups.veh_make (id, label, source) values (731, 'STERLING TRUCK', 'cris'); +insert into lookups.veh_make (id, label, source) values (732, 'SYM', 'cris'); +insert into lookups.veh_make (id, label, source) values (733, 'TRAVALONG INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (734, 'TRIPLE R TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (735, 'TRIUMPH MOTORCYCLE', 'cris'); +insert into lookups.veh_make (id, label, source) values (736, 'WESTLAND', 'cris'); +insert into lookups.veh_make (id, label, source) values (737, 'WITZCO TRAILERS INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (738, 'YIBEN', 'cris'); +insert into lookups.veh_make (id, label, source) values (739, 'ZERO MOTORCYCLES INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (740, 'DRAGON PRODUCTS LTD', 'cris'); +insert into lookups.veh_make (id, label, source) values (741, 'STEALTH TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (742, 'BEALL TRANS-LINER', 'cris'); +insert into lookups.veh_make (id, label, source) values (743, 'BELSHE TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (744, 'CO CHEROKE MFG CO', 'cris'); +insert into lookups.veh_make (id, label, source) values (745, 'DRAGON ESP LTD', 'cris'); +insert into lookups.veh_make (id, label, source) values (746, 'FERRARA FIRE APPARATUS', 'cris'); +insert into lookups.veh_make (id, label, source) values (747, 'GENESIS', 'cris'); +insert into lookups.veh_make (id, label, source) values (748, 'JENSEN', 'cris'); +insert into lookups.veh_make (id, label, source) values (749, 'KIMBLE CHASSIS', 'cris'); +insert into lookups.veh_make (id, label, source) values (750, 'POMONA SHEET METAL WORKS', 'cris'); +insert into lookups.veh_make (id, label, source) values (751, 'ROYAL ENFIELD MOTORS', 'cris'); +insert into lookups.veh_make (id, label, source) values (753, 'TEMSA BUS', 'cris'); +insert into lookups.veh_make (id, label, source) values (754, 'KARMA AUTOMOTIVE LLC', 'cris'); +insert into lookups.veh_make (id, label, source) values (755, 'BYD COACH AND BUS LLC', 'cris'); +insert into lookups.veh_make (id, label, source) values (756, 'CENTEX', 'cris'); +insert into lookups.veh_make (id, label, source) values (757, 'PROTERRA', 'cris'); +insert into lookups.veh_make (id, label, source) values (758, 'BREMACH MOTORS USA', 'cris'); +insert into lookups.veh_make (id, label, source) values (759, 'FOREST RIVER TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (760, 'GRANDE WEST', 'cris'); +insert into lookups.veh_make (id, label, source) values (761, 'HYUNDAI TRANSLEAD TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (762, 'KEARNEY TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (763, 'LEDWELL TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (764, 'SOUTHWEST GOOSENECK TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (765, 'TIGER TRUCK', 'cris'); +insert into lookups.veh_make (id, label, source) values (766, 'CARRIAGE TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (767, 'CENTEX TRAILERS LTD', 'cris'); +insert into lookups.veh_make (id, label, source) values (768, 'CHANJE', 'cris'); +insert into lookups.veh_make (id, label, source) values (769, 'DEMCO', 'cris'); +insert into lookups.veh_make (id, label, source) values (770, 'FELLING TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (771, 'LION EBUS', 'cris'); +insert into lookups.veh_make (id, label, source) values (772, 'LUCON TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (773, 'PJ TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (774, 'POLESTAR', 'cris'); +insert into lookups.veh_make (id, label, source) values (775, 'PRATT TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (776, 'ROSENBAUER AMERICA', 'cris'); +insert into lookups.veh_make (id, label, source) values (777, 'THOR MOTOR COACH', 'cris'); +insert into lookups.veh_make (id, label, source) values (778, 'VOLVO TRUCKS', 'cris'); +insert into lookups.veh_make (id, label, source) values (779, 'XOS', 'cris'); +insert into lookups.veh_make (id, label, source) values (780, 'MURRAY TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (781, 'TIFFIN MOTORHOMES INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (782, 'RANCO TRAILER', 'cris'); +insert into lookups.veh_make (id, label, source) values (783, 'GRUMMAN LLV', 'cris'); +insert into lookups.veh_make (id, label, source) values (784, 'ALPHA HD TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (785, 'BIG JOHN', 'cris'); +insert into lookups.veh_make (id, label, source) values (786, 'DEEP SOUTH CARGO TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (787, 'GLOBAL ENVIRONMENTAL PRODUCTS', 'cris'); +insert into lookups.veh_make (id, label, source) values (788, 'HERCULES ENTERPRISES', 'cris'); +insert into lookups.veh_make (id, label, source) values (789, 'KAUFMAN TRAILERS', 'cris'); +insert into lookups.veh_make (id, label, source) values (790, 'KING KUTTER II', 'cris'); +insert into lookups.veh_make (id, label, source) values (791, 'LIDDELL INDUSTRIES INC', 'cris'); +insert into lookups.veh_make (id, label, source) values (792, 'LUCID MOTORS', 'cris'); +insert into lookups.veh_make (id, label, source) values (793, 'RIVIAN', 'cris'); +insert into lookups.veh_make (id, label, source) values (794, 'ALEXANDER DENNIS', 'cris'); +insert into lookups.veh_make (id, label, source) values (795, 'ARCTIC CAT', 'cris'); +insert into lookups.veh_make (id, label, source) values (796, 'AUTOMOBILI PININFARINA', 'cris'); +insert into lookups.veh_make (id, label, source) values (797, 'BRIGHTDROP', 'cris'); +insert into lookups.veh_make (id, label, source) values (799, 'CHE', 'cris'); +insert into lookups.veh_make (id, label, source) values (800, 'CRUISE', 'cris'); +insert into lookups.veh_make (id, label, source) values (801, 'DENNIS EAGLE', 'cris'); +insert into lookups.veh_make (id, label, source) values (802, 'ELECTRA MECCANICA VEHICLES CORPORATION', 'cris'); +insert into lookups.veh_make (id, label, source) values (803, 'ENERGICA', 'cris'); +insert into lookups.veh_make (id, label, source) values (805, 'FISKER INC.', 'cris'); +insert into lookups.veh_make (id, label, source) values (808, 'GREENPOWER MOTORS', 'cris'); +insert into lookups.veh_make (id, label, source) values (809, 'IRIZAR', 'cris'); +insert into lookups.veh_make (id, label, source) values (811, 'LION', 'cris'); +insert into lookups.veh_make (id, label, source) values (812, 'LIVEWIRE', 'cris'); +insert into lookups.veh_make (id, label, source) values (813, 'LORDSTOWN EV CORPORATION', 'cris'); +insert into lookups.veh_make (id, label, source) values (815, 'ORANGE EV', 'cris'); +insert into lookups.veh_make (id, label, source) values (817, 'ROKON', 'cris'); +insert into lookups.veh_make (id, label, source) values (818, 'TOY', 'cris'); +insert into lookups.veh_make (id, label, source) values (819, 'VINFAST TRADING AND PRODUCTION LLC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1, 'ALFA ROMEO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4, 'AMBASSADOR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5, 'COMMANDO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (6, 'GREMLIN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (8, 'JAVELIN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (9, 'JEEP CHEROKEE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (10, 'WAGONEER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (11, 'JEEPSTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (13, 'RAMBLER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (14, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (15, 'FOX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (20, 'BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (21, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (24, 'APOLLO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (25, 'CENTURY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (26, 'CENTURY WAGON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (27, 'CENTURY LUXUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (28, 'REGAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (29, 'LESABRE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (30, 'LE SABRE LUXUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (31, 'ESTATE WAGON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (32, 'ELECTRA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (33, 'RIVIERA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (34, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (35, 'CALAIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (36, 'DEVILLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (37, 'ELDORADO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (39, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (40, 'CAPRI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (43, 'BEL AIR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (44, 'BISCAYNE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (45, 'BLAZER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (46, 'CAMARO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (47, 'CAPRICE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (48, 'CHEVELLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (49, 'CHEVY II', 'cris'); +insert into lookups.veh_mod (id, label, source) values (50, 'CORVETTE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (51, 'CORVAIR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (52, 'EL CAMINO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (53, 'IMPALA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (54, 'LAGUNA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (55, 'LUV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (56, 'MALIBU', 'cris'); +insert into lookups.veh_mod (id, label, source) values (57, 'MONTE CARLO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (58, 'NOVA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (59, 'VEGA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (60, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (61, 'IMPERIAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (62, 'NEWPORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (63, 'NEW YORKER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (64, 'TOWN & COUNTRY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (65, '300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (66, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (69, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (70, 'DEERE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (71, 'T OR REO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (73, 'CHALLENGER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (74, 'CHARGER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (75, 'COLT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (76, 'CORONET', 'cris'); +insert into lookups.veh_mod (id, label, source) values (77, 'CRESTWOOD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (78, 'DART', 'cris'); +insert into lookups.veh_mod (id, label, source) values (79, 'MONACO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (80, 'POLARA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (82, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (83, 'FEDERAL MOTORS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (84, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (86, 'BRONCO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (88, 'COURIER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (89, 'CUSTOM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (90, 'FAIRLANE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (91, 'FALCON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (92, 'GALAXIE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (93, 'LTD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (94, 'MACH I OR II', 'cris'); +insert into lookups.veh_mod (id, label, source) values (95, 'MAVERICK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (96, 'MUSTANG', 'cris'); +insert into lookups.veh_mod (id, label, source) values (97, 'PINTO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (98, 'RANCHERO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (99, 'THUNDERBIRD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (100, 'TORINO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (101, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (103, 'SPRINT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (104, 'JIMMY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (105, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (107, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (109, 'SCOUT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (110, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (111, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (114, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (115, 'MARK SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (117, 'ROTARY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (118, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (119, 'COMET', 'cris'); +insert into lookups.veh_mod (id, label, source) values (120, 'COUGAR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (122, 'MARQUIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (123, 'MONTEGO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (124, 'MONTEREY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (125, 'PARK LANE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (126, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (128, 'MOTO GUIZZI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (129, 'CUSTOM CRUISER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (130, 'CUTLASS SUPREME', 'cris'); +insert into lookups.veh_mod (id, label, source) values (131, 'DELTA 88', 'cris'); +insert into lookups.veh_mod (id, label, source) values (132, 'OMEGA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (133, '98', 'cris'); +insert into lookups.veh_mod (id, label, source) values (134, 'TORONADO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (135, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (136, 'OPEL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (142, 'DUSTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (143, 'FURY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (144, 'GTX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (145, 'SATELLITE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (146, 'SCAMP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (147, 'TRAILDUSTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (148, 'VALIANT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (149, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (150, 'BONNEVILLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (151, 'CATALINA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (152, 'FIREBIRD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (153, 'GRAND AM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (154, 'GRAND PRIX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (155, 'GRAND VILLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (156, 'LEMANS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (157, 'TEMPEST', 'cris'); +insert into lookups.veh_mod (id, label, source) values (158, 'VENTURA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (159, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (160, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (163, 'ROLLS ROYCE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (166, 'SILVER EAGLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (168, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (171, 'CARINA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (172, 'CELICA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (173, 'COROLLA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (174, 'CORONA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (175, 'HI-LUX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (176, 'LAND CRUISER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (177, 'MX MARK II', 'cris'); +insert into lookups.veh_mod (id, label, source) values (178, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (179, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (181, 'BEETLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (182, 'KARMANN-GHIA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (183, 'DASHER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (184, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (185, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (192, 'SKYHAWK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (193, 'SKYLARK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (194, 'SEVILLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (195, 'C-SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (196, 'CHEVETTE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (197, 'CONCOURS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (198, 'G SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (199, 'MONZA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (200, 'CORDOBA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (201, 'ASPEN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (202, 'CUSTOM 500, STATION WAGON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (203, 'ELITE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (204, 'GRANADA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (205, 'C-SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (206, 'G SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (208, 'TRAVELALL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (210, 'MONARCH', 'cris'); +insert into lookups.veh_mod (id, label, source) values (212, 'GRAN FURY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (213, 'VOLARE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (214, 'ASTRE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (215, 'SUNBIRD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (216, 'TRANSPORTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (217, 'RABBIT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (218, 'SCIROCCO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (220, 'INLINE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (221, 'ARROW', 'cris'); +insert into lookups.veh_mod (id, label, source) values (222, 'LTD II', 'cris'); +insert into lookups.veh_mod (id, label, source) values (223, 'CONCORD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (224, 'LEBARON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (225, 'MAGNUM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (226, 'OMNI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (227, 'BERTONE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (228, 'FAIRMONT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (229, 'FIESTA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (230, 'FUTURA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (231, 'GENERAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (232, 'MAGNA VAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (233, 'RALLY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (234, 'RALLY CAMPER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (235, 'VANDURA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (236, 'ACCORD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (237, 'VERSAILLES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (238, 'ZEPHYR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (239, 'CALAIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (240, 'HORIZON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (241, 'SAPPORO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (242, 'PHOENIX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (243, 'THING', 'cris'); +insert into lookups.veh_mod (id, label, source) values (244, 'SPIRIT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (246, '5000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (247, 'COMMERCIAL CHASSIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (249, 'SUBURBAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (251, 'CELESTE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (252, 'DIPLOMAT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (253, 'ST REGIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (255, 'CABALLERO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (256, 'CIVIC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (257, 'RX SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (260, 'CUTLASS SALON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (261, 'DELTA 88 ROYALE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (262, '98 LUXURY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (263, '98 REGENCY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (264, 'CHAMP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (265, 'LANCER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (269, 'CRESSIDA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (272, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (273, 'CITATION', 'cris'); +insert into lookups.veh_mod (id, label, source) values (275, 'EAGLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (276, '210', 'cris'); +insert into lookups.veh_mod (id, label, source) values (277, '310', 'cris'); +insert into lookups.veh_mod (id, label, source) values (278, '510', 'cris'); +insert into lookups.veh_mod (id, label, source) values (279, '200SX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (280, '280ZX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (281, '810', 'cris'); +insert into lookups.veh_mod (id, label, source) values (282, 'BRAVA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (283, '124', 'cris'); +insert into lookups.veh_mod (id, label, source) values (284, '128', 'cris'); +insert into lookups.veh_mod (id, label, source) values (285, '131', 'cris'); +insert into lookups.veh_mod (id, label, source) values (286, 'PRELUDE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (287, 'BETA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (289, 'COBRA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (290, 'MIRADA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (292, 'ESCORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (293, 'ARIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (294, 'RELIANT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (295, 'LYNX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (297, 'MAXIMA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (299, 'CIMARRON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (300, 'CAVALIER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (301, '024 DE TOMASO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (303, 'J-2000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (304, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (305, 'GLC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (306, 'BRAT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (307, 'DL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (308, 'STARLET', 'cris'); +insert into lookups.veh_mod (id, label, source) values (309, '4000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (310, '633 CSI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (311, '733I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (312, '300 SD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (313, '380 SLC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (314, '924', 'cris'); +insert into lookups.veh_mod (id, label, source) values (315, '928', 'cris'); +insert into lookups.veh_mod (id, label, source) values (316, 'JETTA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (317, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (318, '308GTS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (319, 'SPIDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (320, 'STRADA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (321, 'X 1/9', 'cris'); +insert into lookups.veh_mod (id, label, source) values (322, 'ZAGATO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (325, 'TR-8', 'cris'); +insert into lookups.veh_mod (id, label, source) values (326, 'GLF', 'cris'); +insert into lookups.veh_mod (id, label, source) values (327, 'EXP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (330, 'STANZA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (331, 'SPIRIT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (332, 'T-1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (335, 'TOWN CAR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (336, 'CELEBRITY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (337, 'QUANTUM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (338, '6000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (339, 'CIERA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (340, 'FIRENZA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (341, 'SENTRA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (342, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (343, 'ALLIANCE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (344, 'ENCORE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (346, 'QUATTRO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (348, 'S SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (349, 'E-CLASS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (350, 'LASER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (352, '300ZX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (353, 'PULSAR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (355, '400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (356, '600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (357, 'RANGER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (358, 'TEMPO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (359, 'S TRUCK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (360, 'CIVIC CRX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (361, 'TOPAZ', 'cris'); +insert into lookups.veh_mod (id, label, source) values (362, 'COLT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (363, 'CONQUEST', 'cris'); +insert into lookups.veh_mod (id, label, source) values (364, 'FIERO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (365, 'PARISIENNE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (366, 'SUPRA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (367, 'TERCEL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (368, 'VAN WAGON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (370, 'ASTRO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (372, 'GEO SPRINT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (373, '5TH AVENUE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (374, 'LANCER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (375, 'AEROSTAR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (376, 'TAURUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (377, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (378, 'SABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (379, 'CARAVELLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (380, 'CAMRY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (381, 'GOLF', 'cris'); +insert into lookups.veh_mod (id, label, source) values (382, 'CABRIOLET', 'cris'); +insert into lookups.veh_mod (id, label, source) values (383, 'VANAGON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (385, 'TURISMO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (386, 'IMPULSE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (387, 'TROOPER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (388, 'MARK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (389, 'MIRAGE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (390, 'TREDIA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (391, 'CORDIA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (392, 'GALANT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (393, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (394, 'CONQUEST', 'cris'); +insert into lookups.veh_mod (id, label, source) values (395, '4RUNNER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (396, 'SAMURAI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (399, 'BERETTA/CORSICA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (400, 'SHADOW', 'cris'); +insert into lookups.veh_mod (id, label, source) values (402, 'REATTA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (403, 'ALLANTE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (404, 'CONQUEST TSI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (405, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (406, 'DYNASTY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (407, 'FESTIVA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (408, 'PROBE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (409, 'SCORPIO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (410, 'TRACER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (411, 'MONTERO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (412, 'PRECIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (413, 'STARION', 'cris'); +insert into lookups.veh_mod (id, label, source) values (414, 'SUNDANCE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (415, 'SAFARI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (417, 'FOX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (420, 'LUMINA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (421, 'SALON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (422, 'SPIRIT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (423, 'METRO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (424, 'PRIZM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (425, 'SPECTRUM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (426, 'STORM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (427, 'TRACKER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (428, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (429, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (430, 'MX-6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (431, 'MX-5 MIATA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (432, 'MILANO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (433, 'MPV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (434, 'PROTEGE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (435, 'ECLIPSE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (436, 'SIGMA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (437, 'AXXESS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (438, '240SX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (439, 'ACCLAIM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (440, 'LASER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (441, 'TRANS SPORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (442, 'JUSTY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (443, 'LEGACY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (444, 'LOYALE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (445, 'SIDEKICK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (446, 'SWIFT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (447, 'MR2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (448, 'INTEGRA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (449, 'LEGEND', 'cris'); +insert into lookups.veh_mod (id, label, source) values (450, 'NSX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (451, '80/90 SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (452, '100/200 SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (453, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (454, 'ROADMASTER ESTATE WAGON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (455, 'BROUGHAM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (456, 'CHARADE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (458, 'STEALTH', 'cris'); +insert into lookups.veh_mod (id, label, source) values (459, 'SONOMA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (460, 'EXCEL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (461, 'SCOUPE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (462, 'SONATA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (463, 'G20', 'cris'); +insert into lookups.veh_mod (id, label, source) values (464, 'M30', 'cris'); +insert into lookups.veh_mod (id, label, source) values (465, 'Q45', 'cris'); +insert into lookups.veh_mod (id, label, source) values (466, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (467, 'AMIGO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (468, 'NAVAJO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (469, '3000 GT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (470, 'BRAVADA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (471, 'SILHOUETTE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (472, 'CORRADO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (473, 'PASSAT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (474, 'VIGOR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (475, 'ROADMASTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (476, 'EAGLE TALON TSI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (478, 'SAFARI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (479, 'YUKON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (480, 'ELANTRA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (481, 'ES 250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (482, '300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (483, '400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (484, 'SC 300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (485, 'SC 400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (486, 'MX-3 GS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (487, 'DIAMANTE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (488, 'EXPO LRV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (489, 'EXPO SPORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (490, 'NX2000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (491, 'ACHIEVA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (492, '968', 'cris'); +insert into lookups.veh_mod (id, label, source) values (493, 'SVX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (494, 'PASEO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (495, 'PREVIA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (496, '960', 'cris'); +insert into lookups.veh_mod (id, label, source) values (497, 'EAGLE VISION', 'cris'); +insert into lookups.veh_mod (id, label, source) values (498, '525 I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (499, 'CONCORDE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (500, 'ALTIMA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (501, 'QUEST', 'cris'); +insert into lookups.veh_mod (id, label, source) values (502, 'INTREPID', 'cris'); +insert into lookups.veh_mod (id, label, source) values (503, 'VIPER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (504, 'DEL SOL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (505, 'J30', 'cris'); +insert into lookups.veh_mod (id, label, source) values (506, 'STYLUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (507, '626', 'cris'); +insert into lookups.veh_mod (id, label, source) values (508, '929', 'cris'); +insert into lookups.veh_mod (id, label, source) values (509, '400/500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (510, '500 SL/600 SL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (511, 'VILLAGER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (512, 'SC1', 'cris'); +insert into lookups.veh_mod (id, label, source) values (513, 'SL1', 'cris'); +insert into lookups.veh_mod (id, label, source) values (514, 'SW1', 'cris'); +insert into lookups.veh_mod (id, label, source) values (515, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (516, 'IMPREZA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (517, 'T100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (518, 'EUROVAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (519, 'GTI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (520, '240', 'cris'); +insert into lookups.veh_mod (id, label, source) values (521, '850 GLT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (522, '318', 'cris'); +insert into lookups.veh_mod (id, label, source) values (523, '325', 'cris'); +insert into lookups.veh_mod (id, label, source) values (524, '530', 'cris'); +insert into lookups.veh_mod (id, label, source) values (525, '540', 'cris'); +insert into lookups.veh_mod (id, label, source) values (526, '740', 'cris'); +insert into lookups.veh_mod (id, label, source) values (527, '840', 'cris'); +insert into lookups.veh_mod (id, label, source) values (529, 'LHS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (531, 'PATHFINDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (533, 'NEON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (535, 'PASSPORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (536, 'RODEO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (539, '323', 'cris'); +insert into lookups.veh_mod (id, label, source) values (540, 'NEON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (541, 'VOYAGER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (543, '740', 'cris'); +insert into lookups.veh_mod (id, label, source) values (544, '760', 'cris'); +insert into lookups.veh_mod (id, label, source) values (545, '780', 'cris'); +insert into lookups.veh_mod (id, label, source) values (546, '940', 'cris'); +insert into lookups.veh_mod (id, label, source) values (547, 'TAHOE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (548, 'CIRRUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (549, 'AVENGER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (550, 'CARAVAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (551, 'STRATUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (552, 'ASPIRE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (553, 'CONTOUR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (554, 'EXPLORER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (555, 'WINDSTAR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (556, 'SIERRA PICKUP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (557, 'ACCENT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (558, 'MILLENIA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (559, 'MYSTIQUE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (560, 'AURORA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (561, 'SUNFIRE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (562, '911 CARRERA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (563, 'AVALON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (564, 'TL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (565, 'Z3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (566, 'K SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (567, 'DAKOTA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (568, 'RAM VAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (570, 'SAVANA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (571, 'ODYSSEY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (572, 'I30', 'cris'); +insert into lookups.veh_mod (id, label, source) values (573, 'HOMBRE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (574, 'SEPHIA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (575, 'SPORTAGE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (576, 'LEGACY OUTBACK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (577, 'LX 450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (578, 'BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (579, 'BREEZE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (580, 'X90', 'cris'); +insert into lookups.veh_mod (id, label, source) values (581, 'RAV4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (582, 'CL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (583, 'RL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (584, 'SLX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (585, 'A-4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (586, 'A-6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (587, 'A-8', 'cris'); +insert into lookups.veh_mod (id, label, source) values (588, '328', 'cris'); +insert into lookups.veh_mod (id, label, source) values (589, '528', 'cris'); +insert into lookups.veh_mod (id, label, source) values (590, 'CATERA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (591, 'KODIAK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (592, 'VENTURE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (593, 'SEBRING', 'cris'); +insert into lookups.veh_mod (id, label, source) values (595, 'B SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (596, 'D-SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (597, 'PROSPECTOR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (598, 'RAIDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (599, 'RAMCHARGER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (600, 'ECONOLINE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (601, 'EXPEDITION', 'cris'); +insert into lookups.veh_mod (id, label, source) values (602, 'F SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (603, 'BRIGADIER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (604, 'SUBURBAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (605, 'CR-V', 'cris'); +insert into lookups.veh_mod (id, label, source) values (608, 'QX4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (609, 'OASIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (611, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (612, 'DEFENDER 90', 'cris'); +insert into lookups.veh_mod (id, label, source) values (613, 'DISCOVERY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (614, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (615, 'MED. DUTY TRUCK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (616, 'B-SERIES PICKUP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (618, 'MOUNTAINEER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (620, 'BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (621, 'PROWLER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (622, 'FIREFLY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (623, '900', 'cris'); +insert into lookups.veh_mod (id, label, source) values (624, '9000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (625, 'ESTEEM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (626, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (628, 'BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (629, 'TACOMA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (631, 'CABRIOLET', 'cris'); +insert into lookups.veh_mod (id, label, source) values (632, '5 SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (633, '7 SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (634, 'FRONTIER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (635, 'DURANGO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (636, 'TIBURON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (637, 'LX 470', 'cris'); +insert into lookups.veh_mod (id, label, source) values (638, 'NAVIGATOR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (639, '320 ML', 'cris'); +insert into lookups.veh_mod (id, label, source) values (640, '320 CLK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (641, 'SCORPIO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (642, 'XR4TI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (643, 'INTRIGUE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (644, 'LSS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (645, 'BOXSTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (646, 'FORESTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (647, 'STREEGA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (648, 'SIENNA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (651, 'TT COUPE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (652, '3 SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (653, '6 SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (654, '8 SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (655, 'M SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (656, 'Z SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (657, 'ESCALADE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (658, 'SILVERADO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (659, 'DENALI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (660, 'ENVOY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (661, 'VEHICROSS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (662, 'ES SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (663, 'GS SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (664, 'LS SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (665, 'LX SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (666, 'RX SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (667, 'SC SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (669, 'CONTINENTAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (670, 'LS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (671, 'C', 'cris'); +insert into lookups.veh_mod (id, label, source) values (672, 'CL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (673, 'CLK-CLASS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (674, 'E-CLASS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (675, 'M-CLASS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (676, 'S', 'cris'); +insert into lookups.veh_mod (id, label, source) values (677, 'SL-CLASS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (678, 'SLK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (679, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (680, 'ALERO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (681, 'MONTANA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (683, '9-3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (684, '9-5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (685, 'VITARA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (686, 'CAMRY SOLARA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (687, 'TUNDRA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (688, 'S80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (689, 'X5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (690, 'EAGLE VISION', 'cris'); +insert into lookups.veh_mod (id, label, source) values (691, 'LANOS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (692, 'LEGANZA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (693, 'NUBIRA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (694, 'XTERRA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (695, 'EXCURSION', 'cris'); +insert into lookups.veh_mod (id, label, source) values (696, 'FOCUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (697, 'INSIGHT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (698, 'S2000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (699, 'LS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (700, 'LW', 'cris'); +insert into lookups.veh_mod (id, label, source) values (701, 'ECHO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (702, 'PRIUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (705, 'MDX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (706, 'S-4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (707, 'S-8', 'cris'); +insert into lookups.veh_mod (id, label, source) values (708, 'ALLROAD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (709, 'PT CRUISER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (710, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (711, 'ESCAPE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (712, 'EXPLORER SPORT TRAC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (713, 'SANTA FE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (714, 'XG300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (715, 'OPTIMA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (716, 'RIO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (717, 'SPECTRA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (718, 'IS 300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (719, 'TRIBUTE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (720, 'AZTEC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (721, 'HIGHLANDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (722, 'SEQUOIA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (723, 'S60', 'cris'); +insert into lookups.veh_mod (id, label, source) values (724, 'RSX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (725, 'S-6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (726, 'Z8', 'cris'); +insert into lookups.veh_mod (id, label, source) values (727, 'RENDEZVOUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (728, 'CTS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (729, 'ESCALADE EXT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (730, 'AVALANCHE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (731, 'EXPRESS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (732, 'TRAILBLAZER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (734, 'PROWLER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (735, 'VOYAGER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (736, 'XG350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (737, 'I35', 'cris'); +insert into lookups.veh_mod (id, label, source) values (738, 'AXIOM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (739, 'SEDONA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (740, 'FREELANDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (741, 'BLACKWOOD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (742, 'COOPER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (743, 'G', 'cris'); +insert into lookups.veh_mod (id, label, source) values (744, 'LANCER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (745, 'L SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (746, 'S SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (747, 'VUE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (748, 'AERIO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (749, 'XL-7', 'cris'); +insert into lookups.veh_mod (id, label, source) values (754, 'CABRIO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (755, 'XC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (756, 'Z4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (757, 'XLR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (758, 'SSR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (759, 'CROSSFIRE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (760, 'ELEMENT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (761, 'PILOT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (762, 'H2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (763, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (764, 'G35', 'cris'); +insert into lookups.veh_mod (id, label, source) values (765, 'M45', 'cris'); +insert into lookups.veh_mod (id, label, source) values (766, 'ASCENDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (767, 'SORENTO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (768, 'GX 470', 'cris'); +insert into lookups.veh_mod (id, label, source) values (769, 'AVIATOR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (771, 'SPEED PROTEGE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (772, 'PROTEGE5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (773, 'MARAUDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (774, 'ECLIPSE SPYDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (775, 'OUTLANDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (776, '350Z', 'cris'); +insert into lookups.veh_mod (id, label, source) values (777, 'MURANO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (778, 'VIBE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (779, 'ION', 'cris'); +insert into lookups.veh_mod (id, label, source) values (780, 'BAJA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (781, 'XC90', 'cris'); +insert into lookups.veh_mod (id, label, source) values (783, 'ALTIMA HYBRID', 'cris'); +insert into lookups.veh_mod (id, label, source) values (784, 'ARMADA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (785, 'CLS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (786, 'COOPER CLUBMAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (787, 'DISCOVERY II', 'cris'); +insert into lookups.veh_mod (id, label, source) values (788, 'IS 350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (789, 'IS 350 C', 'cris'); +insert into lookups.veh_mod (id, label, source) values (790, 'IS F', 'cris'); +insert into lookups.veh_mod (id, label, source) values (791, 'LX 570', 'cris'); +insert into lookups.veh_mod (id, label, source) values (792, 'MIGHTY MAX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (793, 'MILAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (794, 'NAVIGATOR L', 'cris'); +insert into lookups.veh_mod (id, label, source) values (795, 'RX7', 'cris'); +insert into lookups.veh_mod (id, label, source) values (796, 'RX8', 'cris'); +insert into lookups.veh_mod (id, label, source) values (797, 'SC 430', 'cris'); +insert into lookups.veh_mod (id, label, source) values (798, 'SLR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (799, 'SP / SPX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (800, 'SPACE WAGON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (801, 'SPECTRA5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (802, '9-2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (803, '93', 'cris'); +insert into lookups.veh_mod (id, label, source) values (804, '95', 'cris'); +insert into lookups.veh_mod (id, label, source) values (805, '181', 'cris'); +insert into lookups.veh_mod (id, label, source) values (806, '405', 'cris'); +insert into lookups.veh_mod (id, label, source) values (807, '504', 'cris'); +insert into lookups.veh_mod (id, label, source) values (808, '505', 'cris'); +insert into lookups.veh_mod (id, label, source) values (809, '604', 'cris'); +insert into lookups.veh_mod (id, label, source) values (810, '911', 'cris'); +insert into lookups.veh_mod (id, label, source) values (811, '944', 'cris'); +insert into lookups.veh_mod (id, label, source) values (812, 'TRANSIT BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (813, 'BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (814, 'E SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (815, 'F SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (816, 'G SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (817, 'K SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (818, 'P SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (819, 'R SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (820, 'V SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (821, 'W-SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (822, '100 SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (826, '128I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (828, '135I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (830, '164', 'cris'); +insert into lookups.veh_mod (id, label, source) values (831, '190', 'cris'); +insert into lookups.veh_mod (id, label, source) values (832, '200 GTX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (833, '200 SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (834, '2000 GTX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (835, '200SX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (836, '240', 'cris'); +insert into lookups.veh_mod (id, label, source) values (837, '260', 'cris'); +insert into lookups.veh_mod (id, label, source) values (838, '280', 'cris'); +insert into lookups.veh_mod (id, label, source) values (839, '300-CLASS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (840, '300ZX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (841, '308', 'cris'); +insert into lookups.veh_mod (id, label, source) values (842, '320I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (843, '323', 'cris'); +insert into lookups.veh_mod (id, label, source) values (844, '328', 'cris'); +insert into lookups.veh_mod (id, label, source) values (845, '330', 'cris'); +insert into lookups.veh_mod (id, label, source) values (846, '335', 'cris'); +insert into lookups.veh_mod (id, label, source) values (847, '348', 'cris'); +insert into lookups.veh_mod (id, label, source) values (848, '350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (849, '360', 'cris'); +insert into lookups.veh_mod (id, label, source) values (850, '370Z', 'cris'); +insert into lookups.veh_mod (id, label, source) values (851, '380-CLASS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (852, '400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (853, '420', 'cris'); +insert into lookups.veh_mod (id, label, source) values (854, '425', 'cris'); +insert into lookups.veh_mod (id, label, source) values (855, '430', 'cris'); +insert into lookups.veh_mod (id, label, source) values (856, '430', 'cris'); +insert into lookups.veh_mod (id, label, source) values (857, '456', 'cris'); +insert into lookups.veh_mod (id, label, source) values (858, '500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (860, '524', 'cris'); +insert into lookups.veh_mod (id, label, source) values (861, '533', 'cris'); +insert into lookups.veh_mod (id, label, source) values (862, '535', 'cris'); +insert into lookups.veh_mod (id, label, source) values (863, '545', 'cris'); +insert into lookups.veh_mod (id, label, source) values (864, '550', 'cris'); +insert into lookups.veh_mod (id, label, source) values (865, 'F550', 'cris'); +insert into lookups.veh_mod (id, label, source) values (866, '560', 'cris'); +insert into lookups.veh_mod (id, label, source) values (867, 'MAYBACH', 'cris'); +insert into lookups.veh_mod (id, label, source) values (868, '575', 'cris'); +insert into lookups.veh_mod (id, label, source) values (869, '599 GTB FIORANO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (870, '6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (871, '60 SPECIAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (872, '600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (874, '635 CSI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (875, '645 CI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (876, '650I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (877, '720', 'cris'); +insert into lookups.veh_mod (id, label, source) values (878, '720 SERIES TRUCK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (879, '735', 'cris'); +insert into lookups.veh_mod (id, label, source) values (880, '745', 'cris'); +insert into lookups.veh_mod (id, label, source) values (881, '750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (882, '760', 'cris'); +insert into lookups.veh_mod (id, label, source) values (883, '80 SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (884, '850', 'cris'); +insert into lookups.veh_mod (id, label, source) values (885, '88', 'cris'); +insert into lookups.veh_mod (id, label, source) values (886, '88 ROYALE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (888, '90 SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (889, '9-7X', 'cris'); +insert into lookups.veh_mod (id, label, source) values (892, 'A3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (893, 'A5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (894, 'ACADIA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (895, 'ACADIAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (898, 'ALFA ROMERO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (902, 'ALL TERRAIN PICKUP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (904, 'ALL TERRAIN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (908, 'ALLURE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (909, 'ALPINA B7', 'cris'); +insert into lookups.veh_mod (id, label, source) values (910, 'ALTRA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (911, 'AMANTI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (912, 'AMBULANCE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (914, 'ARNAGE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (915, 'ASPEN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (916, 'ASTRA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (918, 'ATC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (919, 'AURA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (920, 'AVEO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (921, 'AVIATOR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (922, 'AZERA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (923, 'AZURE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (924, 'B210', 'cris'); +insert into lookups.veh_mod (id, label, source) values (925, 'B', 'cris'); +insert into lookups.veh_mod (id, label, source) values (927, 'BITURBO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (928, 'BORREGO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (929, 'BREVA 1100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (931, 'BREVA 750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (932, 'BRONCO/BRONCO II', 'cris'); +insert into lookups.veh_mod (id, label, source) values (933, 'BROOKLANDS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (934, 'B-SERIES TRUCK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (935, 'B-SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (936, 'BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (937, 'BUS CHASSIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (938, 'BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (939, 'TRANSIT BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (940, 'BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (941, 'BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (942, 'ORION VI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (943, 'BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (944, 'BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (945, 'TRANSIT BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (946, 'C/T', 'cris'); +insert into lookups.veh_mod (id, label, source) values (947, 'C116', 'cris'); +insert into lookups.veh_mod (id, label, source) values (948, 'C120', 'cris'); +insert into lookups.veh_mod (id, label, source) values (949, 'C30', 'cris'); +insert into lookups.veh_mod (id, label, source) values (950, 'C70', 'cris'); +insert into lookups.veh_mod (id, label, source) values (951, 'CALIBER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (952, 'CALIFORNIA 1100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (955, 'CALIFORNIA III', 'cris'); +insert into lookups.veh_mod (id, label, source) values (956, 'CALIFORNIA VINTAGE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (957, 'CAMPER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (958, 'CANYON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (959, 'CARAVAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (960, 'CARMAQUE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (961, 'CARRERA GT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (962, 'CAYENNE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (963, 'CAYMAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (964, 'CC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (965, 'CEMENT MIXER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (966, 'CENTURION', 'cris'); +insert into lookups.veh_mod (id, label, source) values (967, 'CENTURY II', 'cris'); +insert into lookups.veh_mod (id, label, source) values (968, 'CHASSIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (970, 'CHEROKEE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (972, 'CINCO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (973, 'CITYLINER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (974, 'CJ5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (975, 'CJ7', 'cris'); +insert into lookups.veh_mod (id, label, source) values (976, 'CLASSIC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (977, 'CLUBWAGON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (978, 'COBALT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (979, 'COLORADO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (980, 'COMANCHE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (981, 'COMANCHE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (982, 'COMMANDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (983, 'COMPASS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (984, 'CONCRETE MIXER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (985, 'CONDOR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (986, 'CONQUEST', 'cris'); +insert into lookups.veh_mod (id, label, source) values (987, 'CONTINENTAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (988, 'CONVENTIONAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (990, 'CORNICHE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (991, 'CORNICHE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (992, 'CORSICA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (993, 'COUNTACH', 'cris'); +insert into lookups.veh_mod (id, label, source) values (994, 'COUPE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (995, 'CROWN VICTORIA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (996, 'C-SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (997, 'CSX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (998, 'CUBE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (999, 'CUSTOM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1000, 'CUTLASS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1001, 'CUTLASS BROUGHAM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1002, 'CUTLASS CALAIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1003, 'CUTLASS CIERA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1004, 'CUTLASS CRUISER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1005, 'CUTLASS GL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1006, 'CUTLASS GLS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1007, 'CUTLASS LS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1008, 'CX-7', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1009, 'CX-9', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1010, 'D-10 MILITARY BLAZER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1011, 'D21 SERIES TRUCK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1012, 'DAYTONA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1013, 'DAYTONA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1016, 'DB7', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1017, 'DB9', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1018, 'DBS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1019, 'DEFENDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1020, 'DELTA 88 INTERNATIONAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1021, 'DIABLO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1022, 'DIAMOND', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1030, 'DRILL RIG', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1031, 'DTS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1032, 'DYNASTY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1034, 'ECO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1035, 'EDGE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1036, 'EDS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1037, 'EIGHT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1038, 'ELAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1039, 'ELECTRA ESTATE WAGON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1040, 'ELISE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1041, 'ENCLAVE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1042, 'ENDEAVOR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1043, 'ENTOURAGE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1044, 'ENZO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1045, 'EOS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1046, 'EPICA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1047, 'EQUATOR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1048, 'EQUINOX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1049, 'EQUIPMENT CARRIER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1050, 'ES 300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1051, 'ES 330', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1052, 'ES 350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1053, 'ESPRIT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1057, 'EV PLUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1058, 'EVO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1059, 'EX35', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1060, 'EXECUTIVE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1061, 'EXECUTIVE XJ6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1062, 'EXIGE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1063, 'EXPO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1064, 'EXPRESS RV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1066, 'F355', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1067, 'F40', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1068, 'F50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1069, 'F550', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1070, 'F575', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1071, 'FCX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1072, 'FE TRUCK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1073, 'FG TRUCK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1074, 'FH TRUCK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1075, 'FIFTH AVENUE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1076, 'FIRETRUCK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1077, 'FIRETRUCK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1078, 'PETER PIRSCH', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1079, 'PIERCE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1080, 'FIRETRUCK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1081, 'FIRETRUCK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1082, 'EAGLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1083, 'FIT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1084, 'FIVE HUNDRED', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1085, 'FJ CRUISER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1086, 'FK TRUCK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1087, 'FLEETWOOD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1088, 'FLEX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1089, 'FLYING SPUR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1090, 'FM TRUCK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1091, 'FORENZA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1092, 'FORSA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1093, 'FORTE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1094, 'FREESTAR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1095, 'FREESTYLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1096, 'FUEGO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1097, 'FUSION', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1098, 'FWD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1099, 'FX35', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1100, 'FX50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1101, 'G3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1102, 'G37', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1103, 'G5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1104, 'G6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1105, 'G8', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1106, 'GALLARDO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1107, 'GENESIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1108, 'GL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1109, 'GL-10', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1110, 'GL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1111, 'GLI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1112, 'GLIDER KIT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1113, 'GLK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1114, 'GRAND MARQUIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1115, 'GRAND CARAVAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1116, 'GRAND CHEROKEE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1117, 'GRAND LEMANS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1118, 'GRAND VITARA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1119, 'GRAND VOYAGER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1120, 'GRAND VOYAGER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1121, 'GRAND WAGONEER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1122, 'GRAND WAGONEER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1123, 'GRANSPORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1124, 'GRANTURISMO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1127, 'GS 300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1128, 'GS 350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1129, 'GS 400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1130, 'GS 430', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1131, 'GS 450H HYBRID', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1132, 'GS 460', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1133, 'GT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1134, 'GT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1135, 'GTO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1136, 'GT-R', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1137, 'GT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1138, 'H-1', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1140, 'H-3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1141, 'HATCHBACK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1142, 'HHR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1143, 'HMC2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1144, 'HMC4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1145, 'HMCO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1148, 'HONEYBEE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1149, 'HP2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1150, 'I-MARK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1151, 'INCOMPLETE VEHICLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1152, 'INTER FRONT LOADER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1153, 'INTER REAR LOADER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1154, 'INTER SIDE LOADER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1155, 'INTREPID', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1156, 'IS 250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1157, 'IS 250 C', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1159, 'J10 PICKUP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1161, 'J20 PICKUP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1162, 'JALPA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1163, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1165, 'JIMNY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1166, 'JOURNEY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1167, 'KING CAB', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1168, 'KOMBI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1171, 'L100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1172, 'L200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1173, 'L300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1174, 'L7', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1175, 'LACROSSE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1176, 'LASER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1177, 'LAURENTIAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1179, 'L', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1181, 'LIBERTY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1182, 'LM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1183, 'LOW ENTRY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1184, 'LP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1185, 'LPS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1186, 'LR2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1187, 'LR3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1188, 'LS 400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1189, 'LS 430', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1190, 'LS 460', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1191, 'LS 600H L', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1192, 'LS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1193, 'LUCERNE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1195, 'M128 GT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1196, 'M138 SPYDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1197, 'M35', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1198, 'MARINER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1199, 'MARINER HYBRID', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1200, 'MARK LT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1201, 'MARK MKS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1202, 'MARK MKT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1203, 'MARK MKX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1204, 'MARK MKZ', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1205, 'MARK VI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1206, 'MARK VII', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1207, 'MARK VIII', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1208, 'COROLLA MATRIX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1209, 'MAXIMA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1210, 'MAZDA3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1211, '5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1212, 'MEDALLION', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1213, 'METRO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1214, 'METROPOLITAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1215, 'MICRA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1216, 'MICRA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1217, 'MILAN HYBRID', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1218, 'MILANO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1223, 'MINI RAM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1225, 'MIXER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1226, 'ADVANCE MIXER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1227, 'MONDIAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1228, 'MONTERO SPORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1231, 'MOTORHOME', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1233, 'MOTORHOME', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1246, 'MOTORHOME', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1247, 'MOTORHOME', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1248, 'MPV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1249, 'MTD COUNTRY SQUIRE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1250, 'MULSANNE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1251, 'MULTI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1252, 'MURCIELAGO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1254, 'N W BET CONVERT GLX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1255, 'NEON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1257, 'NEW BEETLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1258, 'NEW S4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1259, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1260, 'NITRO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1263, 'NORGE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1264, 'NX COUPE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1265, 'OPTIMA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1266, 'OPTRA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1267, 'OTHER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1268, 'OUTBACK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1269, 'OUTLOOK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1270, 'PACIFICA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1271, 'PARK AVENUE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1272, 'PARK WARD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1273, 'PATRIOT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1274, 'PHAETON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1275, 'PHANTOM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1276, 'PININFARINA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1277, 'PONY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1278, 'PREMIER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1279, 'GEO PRIZM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1280, 'PROFESSIONAL CHASSIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1281, 'PULSAR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1282, 'PUP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1283, 'PURSUIT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1284, 'Q5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1285, 'Q7', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1286, 'QUATTROPORTE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1287, 'QX56', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1288, 'R SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1289, 'R32', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1290, 'R8', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1291, 'RAIDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1292, 'RAINIER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1293, 'RALLY WAGON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1294, 'RALLY WAGON / VAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1296, 'RAM WAGON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1297, 'RAMPAGE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1298, 'RANGE ROVER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1299, 'RANGE ROVER SPORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1300, 'R', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1301, 'RDX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1302, 'RECYCLE EQUIPMENT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1303, 'REGENCY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1304, 'RELAY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1305, 'RENO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1306, 'RIDGELINE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1307, 'RIO5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1308, 'ROADSTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1310, 'ROGUE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1311, 'RONDO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1312, 'ROUTAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1313, 'ROYAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1314, 'RS4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1315, 'RS6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1316, 'RX 300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1317, 'RX 330', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1318, 'RX 350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1319, 'RX 400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1320, 'RX 400 HYBRID', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1321, 'RX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1322, 'S15', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1323, 'S40', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1324, 'S5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1325, 'S70', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1326, 'S90', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1327, 'SA310', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1328, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1332, 'SAPPORO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1333, 'SC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1335, 'SC2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1336, 'SCHOOL BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1337, 'SCHOOL BUS / TRANSIT BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1340, 'SENTRA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1342, 'SHELBY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1343, 'SHORT BED', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1345, 'SILVER SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1346, 'SILVERSTAR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1350, 'SKY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1352, 'SL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1353, 'SL2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1355, 'SOLSTICE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1356, 'SOMERSET', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1357, 'SOUL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1358, 'SOVERIGN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1360, 'SPECIALTY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1361, 'GEO SPECTRUM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1362, 'SPEED 3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1363, 'SPEED 6 AWD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1364, 'SPEED MIATA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1365, 'SPIDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1367, 'SPORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1369, 'SPORTVAN / VAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1371, 'SPRINTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1372, 'SPYDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1373, 'SRX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1374, 'STANDARD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1375, 'STANDARD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1376, 'STANZA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1377, 'STELLAR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1378, 'STELVIO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1379, 'STEP VAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1380, 'STEPVAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1381, 'STS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1382, 'S-TYPE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1383, 'SUMMIT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1384, 'SUNBURST', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1386, 'SUNRUNNER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1387, 'SUPER 8', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1388, 'SW2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1389, 'SYCLONE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1390, 'TALON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1391, 'T-C BY MASERATI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1392, 'TERRAIN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1393, 'TERRAZA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1394, 'TESTAROSSA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1395, 'THINK NEIGHBOR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1396, 'TIGUAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1397, 'TITAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1398, 'TOPKICK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1399, 'TORRENT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1400, 'TOUAREG', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1401, 'TOURING LIMO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1402, 'TR7', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1403, 'TRACKER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1404, 'TRANSIT BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1405, 'TRANSIT BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1406, 'TRANSIT BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1407, 'SETRA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1408, 'TRANSIT BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1409, 'TRANSIT BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1410, 'TRANSIT BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1411, 'TRANSIT BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1412, 'TRANSIT CONNECT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1414, 'TRAVERSE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1415, 'TRIBECA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1416, 'TRIBUTE HYBRID', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1430, 'TSX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1431, 'TUCSON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1432, 'TURBO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1433, 'TYPHOON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1434, 'UPLANDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1436, 'V10 CENTAURO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1437, 'V40', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1438, 'V50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1439, 'V7 CLASSIC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1440, 'V70', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1441, 'V8 QUATTRO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1442, 'V90', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1443, 'VALUE VAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1444, 'VAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1445, 'VAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1446, 'VANDENPLAS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1447, 'VANQUISH', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1448, 'V8', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1449, 'VENZA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1450, 'VERACRUZ', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1451, 'VERONA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1452, 'VERSA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1453, 'VEYRON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1454, 'VIRAGE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1455, 'VISION', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1459, 'WAGON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1461, 'WAGONEER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1462, 'WAVE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1463, 'WRANGLER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1464, 'WRANGLER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1465, 'X TRAIL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1466, 'X3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1467, 'X6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1468, 'XC60', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1469, 'XC70', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1470, 'XF SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1471, 'XJ SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1472, 'XK SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1474, 'XR3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1475, 'XT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1476, 'X-TYPE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1477, 'YARIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1479, 'ZEPHYR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1502, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1503, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1504, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1505, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1507, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1510, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1512, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1515, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1517, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1519, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1521, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1522, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1523, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1524, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1525, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1527, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1528, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1530, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1531, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1532, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1533, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1534, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1535, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1536, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1537, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1538, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1539, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1542, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1543, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1545, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1546, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1548, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1549, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1551, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1553, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1555, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1557, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1558, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1559, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1561, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1562, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1563, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1564, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1565, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1569, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1589, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1594, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1598, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1600, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1603, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1610, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1611, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1614, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1616, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1620, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1621, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1623, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1625, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1643, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1645, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1646, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1647, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1648, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1649, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1650, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1651, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1652, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1653, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1654, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1655, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1656, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1657, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1658, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1659, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1660, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1661, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1662, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1663, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1664, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1665, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1666, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1667, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1668, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1669, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1670, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1671, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1672, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1673, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1674, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1675, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1676, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1677, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1678, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1679, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1680, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1681, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1682, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1683, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1684, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1685, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1686, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1687, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1688, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1689, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1690, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1691, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1692, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1693, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1694, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1695, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1696, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1697, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1698, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1699, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1700, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1701, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1702, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1703, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1704, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1705, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1706, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1707, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1708, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1709, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1710, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1711, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1712, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1713, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1714, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1715, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1716, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1717, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1718, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1719, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1720, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1721, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1722, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1723, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1724, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1725, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1726, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1727, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1728, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1729, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1730, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1731, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1732, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1733, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1734, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1735, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1736, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1737, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1738, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1739, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1741, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1742, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1743, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1744, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1745, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1746, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1747, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1748, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1749, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1750, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1751, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1752, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1753, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1754, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1755, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1756, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1757, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1758, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1759, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1760, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1761, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1762, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1763, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1764, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1765, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1766, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1767, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1768, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1769, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1770, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1771, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1772, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1773, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1774, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1775, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1776, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1777, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1778, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1779, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1780, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1781, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1782, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1783, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1784, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1785, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1786, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1787, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1788, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1789, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1790, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1791, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1792, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1793, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1794, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1795, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1796, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1797, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1798, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1799, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1800, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1801, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1802, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1803, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1804, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1805, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1806, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1807, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1808, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1809, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1810, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1811, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1812, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1813, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1814, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1815, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1816, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1817, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1818, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1819, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1820, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1821, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1822, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1823, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1824, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1825, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1826, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1827, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1828, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1829, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1830, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1831, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1832, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1833, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1834, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1835, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1836, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1837, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1838, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1839, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1840, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1841, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1842, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1843, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1844, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1845, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1846, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1847, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1848, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1849, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1850, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1851, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1852, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1853, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1854, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1855, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1856, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1857, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1858, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1859, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1860, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1861, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1862, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1863, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1864, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1865, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1866, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1867, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1868, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1869, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1870, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1871, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1872, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1873, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1874, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1875, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1876, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1877, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1878, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1879, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1880, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1881, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1882, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1883, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1884, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1885, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1886, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1887, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1889, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1890, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1891, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1892, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1893, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1894, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1895, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1896, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1897, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1898, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1899, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1900, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1901, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1902, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1903, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1904, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1905, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1906, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1907, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1908, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1909, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1910, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1911, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1912, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1913, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1914, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1915, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1916, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1917, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1918, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1919, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1920, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1921, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1922, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1923, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1924, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1925, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1926, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1927, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1928, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1929, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1930, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1931, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1932, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1933, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1934, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1935, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1936, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1937, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1938, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1939, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1940, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1941, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1942, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1943, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1944, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1945, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1946, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1947, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1948, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1949, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1950, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1951, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1952, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1953, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1954, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1955, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1956, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1957, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1958, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1959, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1960, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1962, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1963, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1964, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1965, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1966, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1967, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1968, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1969, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1970, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1971, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1972, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1973, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1974, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1975, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1976, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1977, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1978, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1979, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1980, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1981, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1982, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1983, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1984, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1985, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1986, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1987, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1988, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1989, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1990, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1991, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1992, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1993, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1994, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1995, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1996, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1997, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (1998, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2000, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2001, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2002, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2003, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2004, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2005, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2006, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2007, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2008, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2009, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2011, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2012, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2013, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2014, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2015, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2016, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2017, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2018, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2019, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2020, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2021, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2022, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2023, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2024, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2025, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2026, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2027, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2028, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2029, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2030, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2031, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2032, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2033, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2034, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2035, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2036, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2037, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2038, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2039, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2040, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2041, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2042, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2043, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2044, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2045, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2046, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2047, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2048, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2049, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2050, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2051, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2052, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2053, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2054, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2055, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2056, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2057, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2058, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2059, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2060, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2061, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2062, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2063, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2064, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2065, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2066, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2067, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2068, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2069, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2070, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2071, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2072, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2073, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2074, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2075, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2076, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2077, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2078, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2079, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2080, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2081, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2082, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2083, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2084, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2085, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2086, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2087, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2088, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2089, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2090, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2091, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2092, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2093, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2094, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2095, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2096, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2097, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2098, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2099, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2100, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2101, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2102, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2103, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2104, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2105, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2106, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2107, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2108, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2109, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2110, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2111, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2112, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2113, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2114, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2115, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2116, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2117, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2118, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2119, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2120, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2121, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2122, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2123, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2124, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2125, 'EL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2126, 'ILX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2127, 'RLX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2128, 'ZDX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2130, 'HMC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2131, 'HMR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2137, 'CHEROKEE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2141, 'RAPIDE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2144, '80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2145, '90', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2146, '100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2147, '200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2148, 'A4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2149, 'A6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2150, 'A7', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2151, 'A8', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2152, 'RS5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2153, 'S4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2154, 'S6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2155, 'S7', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2156, 'S8', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2157, 'TT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2158, 'TTS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2159, 'AVANTI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2160, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2161, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2163, '128', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2164, '135', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2165, '320', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2166, '525', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2167, '633', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2168, '635', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2169, '640', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2170, '645', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2171, '650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2172, '733', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2173, '1M', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2174, 'ACTIVE E', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2175, 'ACTIVEHYBRID 3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2177, 'M', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2178, 'M3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2179, 'M5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2180, 'M6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2181, 'X1', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2182, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2183, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2184, 'ENCORE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2186, 'PARK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2187, 'VERANO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2188, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2189, '60', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2190, 'ATS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2191, 'COMMERCIAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2192, 'CTS-V', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2196, 'STS-V', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2197, 'XLR-V', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2198, 'XTS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2199, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2200, 'BERETTA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2201, 'C10', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2202, 'C1500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2203, 'C1500 SUBURBAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2204, 'C20', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2205, 'C2500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2206, 'C2500 SUBURBAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2207, 'C30', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2208, 'CAPTIVA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2209, 'CRUZE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2210, 'D10', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2211, 'D30', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2212, 'EQUINOX SPORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2213, 'K10', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2214, 'K1500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2215, 'K1500 SUBURBAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2216, 'K20', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2217, 'K2500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2218, 'K2500 SUBURBAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2219, 'K30', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2220, 'K3500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2221, 'MONTE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2223, 'R10', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2224, 'R10 SUBURBAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2225, 'R1500 SUBURBAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2226, 'R20', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2227, 'R20 SUBURBAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2228, 'R2500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2229, 'R2500 SUBURBAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2230, 'R30', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2231, 'R3500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2232, 'S TRUCK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2233, 'S10', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2234, 'S10 BLAZER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2235, 'S10 ELECTRIC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2236, 'SILVERADO C1500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2237, 'SILVERADO C2500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2238, 'SILVERADO C3500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2239, 'SILVERADO K1500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2240, 'SILVERADO K2500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2241, 'SILVERADO K3500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2242, 'SILVERADO SS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2243, 'SONIC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2244, 'SPARK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2245, 'SS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2246, 'TAHOE C1500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2247, 'TAHOE K1500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2248, 'TRAX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2249, 'V10', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2250, 'V10 BLAZER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2251, 'V10 SUBURBAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2252, 'V1500 SUBURBAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2253, 'V20', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2254, 'V2500 SUBURBAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2255, 'V30', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2256, 'V3500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2257, 'VOLT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2258, '200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2259, '300C', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2260, '300M', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2261, 'E', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2264, 'NEW', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2265, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2266, '2000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2267, 'COLT 100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2269, 'D-100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2270, 'D-150', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2271, 'D-250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2272, 'D-350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2273, 'D50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2275, 'RAM 1500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2276, 'RAM 2500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2277, 'RAM 50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2278, 'RAM SRT10', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2279, 'RAM TRUCK 1500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2280, 'RAM TRUCK 2500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2281, 'RAM 3500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2283, 'RAMCHARGER AD-150', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2285, 'RAMCHARGER AW-150', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2286, 'ST', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2287, 'W100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2288, 'W-100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2289, 'W-150', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2290, 'W-250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2291, 'W-350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2293, 'EAGLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2294, '458', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2295, '599', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2296, '612', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2301, '512TR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2302, 'CALIFORNIA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2304, 'F430', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2305, 'FF', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2307, '500 ABARTH', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2308, '500 LOUNGE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2309, '500 POP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2310, '500 SPORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2311, '500L EASY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2312, '500L LOUNGE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2313, '500L POP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2314, '500L TREKKING', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2316, 'KARMA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2317, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2318, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2319, 'BRONCO II', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2320, 'C-MAX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2321, 'CROWN VIC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2322, 'ECOSPORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2323, 'F100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2324, 'F150', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2325, 'F250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2326, 'F350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2327, 'F450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2328, 'KA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2329, 'MONDEO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2332, '825', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2333, 'E2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2334, 'E4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2335, 'E6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2336, 'EL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2337, 'ES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2338, 'EV1', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2339, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2340, 'C1500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2341, 'C2500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2342, 'C3500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2343, 'G20', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2344, 'GEO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2345, 'K1500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2346, 'K1500 JIMMY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2347, 'K1500 SUBURBAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2348, 'K2500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2349, 'K2500 SUBURBAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2350, 'K3500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2351, 'R1500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2352, 'R1500 SUBURBAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2353, 'R2500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2355, 'R35 CONVENTIONAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2356, 'SIERRA C1500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2357, 'SIERRA C2500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2358, 'SIERRA C3500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2359, 'SIERRA DENALI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2360, 'SIERRA K1500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2361, 'SIERRA K2500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2362, 'SIERRA K3500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2364, 'V15 CONVENTIONAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2365, 'V25 CONVENTIONAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2366, 'V35 CONVENTIONAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2367, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2368, 'CROSSTOUR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2369, 'CR-Z', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2370, 'EV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2372, 'H1', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2373, 'H3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2374, 'H3T', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2376, 'HMCS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2379, 'EQUUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2380, 'SANTA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2381, 'VELOSTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2382, 'VERACRUZGLS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2385, 'EX37', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2386, 'FX37', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2387, 'FX45', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2388, 'G25', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2389, 'JX35', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2390, 'M35H', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2391, 'M37', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2392, 'M56', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2393, 'Q50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2394, 'Q60', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2396, 'QX50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2397, 'QX70', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2398, 'ESTAR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2399, 'CONVENTIONAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2400, 'I-280', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2401, 'I-350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2402, 'I-370', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2403, 'PICKUP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2404, 'SPACE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2405, 'EXECUTIVE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2406, 'F-TYPE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2407, 'SUPER V8', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2408, 'VANDEN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2409, 'XF', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2410, 'XFR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2411, 'XJ', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2412, 'XJ12', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2413, 'XJ6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2414, 'XJ6L', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2415, 'XJ8', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2416, 'XJL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2417, 'XJR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2419, 'XJS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2421, 'XK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2422, 'XK8', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2423, 'XKR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2424, 'J10', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2425, 'J20', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2426, 'CADENZA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2427, 'NEW SPECTRA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2428, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2429, 'LAFORZA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2430, 'AVENTADOR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2433, 'LR4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2434, 'RANGE ROV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2435, 'RANGE RVR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2436, 'CT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2437, 'ES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2438, 'GS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2439, 'GX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2440, 'HS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2441, 'IS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2442, 'IS-F', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2444, 'LS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2445, 'LX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2446, 'RX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2447, 'SC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2448, 'CONTINTL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2449, 'MKS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2450, 'MKT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2451, 'MKX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2452, 'MKZ', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2453, 'T C', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2454, 'EVORA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2455, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2457, 'GHIBLI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2461, '323/SE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2462, '6I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2463, '6S', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2464, 'B2000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2465, 'B2200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2466, 'B2300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2467, 'B2500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2468, 'B2600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2469, 'B3000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2470, 'B4000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2471, 'CX-5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2472, 'MAZDA2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2473, 'MAZDA3I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2474, 'MAZDA3S', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2475, 'MAZDA6I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2476, 'MAZDA6S', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2477, 'MAZDASPEED3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2478, 'MAZDASPEED6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2479, 'MIATA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2480, 'MX-3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2481, 'MX5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2482, 'MX-5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2483, 'MP4-12C', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2484, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2486, 'CLA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2487, 'E300D', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2488, 'E320', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2489, 'E420', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2490, 'GLA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2491, 'ML-CLASS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2492, 'SL65AMG', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2493, 'SLS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2494, 'VIANO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2495, 'I MIEV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2496, 'MIGHTY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2497, 'OUTLANDER SPORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2498, 'SP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2499, 'SPACE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2500, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2501, '720', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2502, '200SX/SE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2503, '240SX/SE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2504, 'D21', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2505, 'JUKE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2506, 'LEAF', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2507, 'LONG', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2508, 'NX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2509, 'SHORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2510, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2512, 'AZTEK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2513, 'J2000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2515, '924S', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2517, 'BOXSTERS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2518, 'CARRERA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2519, 'PANAMERA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2520, 'PROMASTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2521, 'TRUCK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2522, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2523, '18I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2527, 'SPORTWAGON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2529, 'GHOST', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2535, '92X', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2536, '9-4X', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2537, 'LS1', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2538, 'LS2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2539, 'LW1', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2540, 'LW2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2541, 'LW200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2542, 'LW300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2544, 'FORTWO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2547, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2548, '825', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2549, '827', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2550, 'B9 TRIBECA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2551, 'BRZ', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2553, 'LEGCY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2554, 'LGCY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2555, 'XV CROSSTREK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2556, 'GRAND', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2557, 'KIZASHI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2559, 'SX4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2560, 'XL7', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2561, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2562, 'MODEL S', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2563, '3/4 TON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2565, '4RUNNER/SR5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2566, 'DELUXE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2567, 'HIGLANDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2569, 'PICKUP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2570, 'FR-S', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2571, 'SCION IQ', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2572, 'SCION IQ ELECTRIC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2573, 'SCION TC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2574, 'SCION XA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2575, 'SCION XB', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2576, 'SCION XD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2577, 'SR5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2578, 'XTRACAB', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2579, 'TR8', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2582, 'TVR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2584, 'NEW GTI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2585, 'NEW JETTA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2586, 'NW BET CONVERT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2587, 'PSAT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2588, '242', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2589, '244', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2590, '245', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2591, '262', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2592, '264', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2593, '265', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2594, '745', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2595, '765', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2596, '850', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2597, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2598, 'GV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2599, 'GVC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2600, 'GVL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2601, 'GVS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2602, 'GVX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2603, '2.2CL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2604, '2.3CL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2605, '2.5TL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2606, '3.0CL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2607, '3.2CL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2608, '3.2TL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2609, '3.5RL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2610, 'TLX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2611, 'ADVANCE MIXER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2612, '4C', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2613, 'VELOCE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2614, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2615, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2616, 'H1', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2617, '10TH ANNIVERSARY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2618, 'BANDERA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2619, 'CLASSIC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2620, 'CLASSIC CHOPPER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2621, 'JUDGE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2622, 'LEGEND', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2623, 'LSC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2624, 'OUTLAW', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2625, 'RANGER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2626, 'ROADSTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2627, 'SLAMMER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2628, 'STALKER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2629, 'TEJAS SJ', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2630, 'TEXAS CHOPPER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2631, 'ATLANTIC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2632, 'CAPONORD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2633, 'DORSODURO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2634, 'ETV 1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2635, 'MANA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2636, 'MOJITO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2637, 'MXV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2638, 'RALLY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2639, 'RS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2640, 'RST FUTURA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2641, 'RSV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2642, 'RSV4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2643, 'RXV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2644, 'SCARABEO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2645, 'SHIVER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2646, 'SL1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2647, 'SPORTCITY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2648, 'SPORTCITY 250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2649, 'SR MOTARD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2650, 'SR50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2651, 'SXV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2652, 'TUONO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2653, 'HUNTER 244', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2654, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2655, 'V12 VANTAGE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2656, '50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2657, '90', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2658, '110', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2659, '125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2660, '200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2661, '250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2662, '260', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2663, '350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2664, '406', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2665, '450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2666, '490', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2667, '503', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2668, '600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2669, '605', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2670, 'A4 ALLROAD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2671, 'Q3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2672, 'RS7', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2673, 'SPORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2674, 'SQ5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2675, 'TT RS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2676, 'ACL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2677, 'ACM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2678, 'AT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2679, 'C / DC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2680, 'CONSTRUKTOR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2681, 'DK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2682, 'DS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2683, 'S', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2684, 'XPEDITOR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2685, 'XPERT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2686, 'XSPOTTER-OFF', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2687, 'XSPOTTER-ON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2688, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2689, 'TRANSIT CONNECT E', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2690, 'BASHAN ATV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2691, 'BASHAN DIRT BIKE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2692, 'BASHAN MOTORCYCLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2693, 'BASHAN SCOOTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2694, '155', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2695, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2696, 'FLYING SPUR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2697, 'HD67MX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2698, 'LD15A', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2699, 'MD23M', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2700, 'MD26M', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2701, 'ATHENA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2702, 'BEAR BONES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2703, 'DEVILS ADVOCATE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2704, 'GTX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2705, 'MERC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2706, 'MISS BEHAVIN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2707, 'PARADOX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2708, 'RAGE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2709, 'REAPER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2710, 'SCREAMIN DEMON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2711, 'THE SLED', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2712, 'VENOM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2713, 'AEROGLIDE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2714, 'AEROSPORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2715, 'BOXER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2716, 'BULLDOG', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2717, 'CHOPPER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2718, 'COYOTE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2719, 'HUSKY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2720, 'K9', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2721, 'K-9', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2722, 'MASTIFF', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2723, 'MUTT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2724, 'PITBULL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2725, 'PROGLIDE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2726, 'PROSPORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2727, 'RIDGEBACK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2728, 'VINTAGE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2729, 'WOLF', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2730, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2731, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2732, '228', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2733, '428', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2734, '435', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2735, '228I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2736, 'ACTIVEHYBRID 5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2737, 'C600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2738, 'C650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2739, 'F1200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2740, 'F650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2741, 'F700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2742, 'F800', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2743, 'G450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2744, 'G650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2745, 'HP4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2746, 'I3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2747, 'I8', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2748, 'K1', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2749, 'K100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2750, 'K1100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2751, 'K1200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2752, 'K1300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2753, 'K1600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2754, 'K75', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2755, 'M235I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2756, 'M235XI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2757, 'M4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2758, 'R NINE T', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2759, 'R100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2760, 'R1100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2761, 'R1150', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2762, 'R1200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2763, 'R65', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2764, 'R650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2765, 'R80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2766, 'R850', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2767, 'R900', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2768, 'S 1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2769, 'X4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2770, '1125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2771, 'BLAST', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2772, 'CYCLONE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2773, 'FIREBOLT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2774, 'LIGHTNING', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2775, 'RS SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2776, 'THUNDERBOLT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2777, 'ULYSSES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2778, 'WHITE LIGHTNING', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2779, 'XB12SCG', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2780, 'XB9SX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2781, 'FALCON 45', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2782, '195', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2783, 'ELR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2784, 'CAGIVA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2785, 'F4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2786, 'TE E', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2787, 'WXC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2788, 'COMMANDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2789, 'COMMANDER MAX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2790, 'DS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2791, 'MAVERICK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2792, 'MAVERICK MAX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2793, 'OUTLANDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2794, 'OUTLANDER MAX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2795, 'RENEGADE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2796, 'SPYDER ROADSTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2797, 'PHETT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2798, 'TJ5000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2799, 'TJ6500T', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2800, 'TJ7000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2801, 'TJ9000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2802, 'CT660', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2803, '7000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2804, 'B7T042', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2805, 'C4500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2806, 'C5000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2807, 'C5500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2808, 'C6000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2809, 'C65', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2810, 'C6500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2811, 'C7500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2812, 'C8500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2813, 'CAPRICE / IMPALA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2814, 'CITY EXPRESS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2815, 'CUTAWAY VAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2816, 'EXPRESS CUTAWAY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2817, 'EXPRESS G1500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2818, 'EXPRESS G2500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2819, 'EXPRESS G3500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2820, 'EXPRESS G4500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2821, 'EXPRESS VAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2824, 'G10', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2825, 'G20', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2826, 'G30', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2827, 'GMT-400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2828, 'G-P', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2829, 'HI-CUBE VAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2830, 'IMPALA LIMITED', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2831, 'ME6000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2832, 'ME6500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2833, 'P20', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2834, 'P30', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2835, 'PS4500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2836, 'PS6500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2837, 'S6000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2838, 'SPARK EV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2839, 'TILT MASTER W35042', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2840, 'TILT MASTER W4S042', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2841, 'TILT MASTER W4T042', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2842, 'TILT MASTER W5R042', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2843, 'TILT MASTER W5S042', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2844, 'TILT MASTER W5T042', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2845, 'TILT MASTER W6R042', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2846, 'TILT MASTER W7R042', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2847, 'TILT MASTER W7R042HV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2848, 'T-SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2849, 'VAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2850, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2851, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2852, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2853, 'AFFINITY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2854, 'ALLURE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2855, 'INSPIRE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2856, 'INTRIGUE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2857, 'ISLANDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2858, 'LEXA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2859, 'LTC CHASSIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2860, 'MAGNA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2861, 'TRIBUTE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2862, 'CITY HOP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2863, 'GTR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2864, 'OLIVER CITY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2865, 'STYLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2866, 'VEER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2867, 'CHASSIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2868, 'SCHOOL BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2869, 'ROCKY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2870, 'ATLANTIS 50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2871, 'BOULEVARD 151', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2872, '258', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2873, 'RAM 4500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2874, 'RAM 5500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2875, 'RD200 / RD250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2876, '620', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2877, '650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2878, '748', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2879, '749', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2880, '750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2881, '848', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2882, '851', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2883, '888', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2884, '900', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2885, '906', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2886, '907', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2887, '916', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2888, '996', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2889, '999', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2890, '1098', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2891, '1198', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2892, 'DESMOSEDICI RR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2893, 'DIAVEL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2894, 'E900', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2895, 'HYPERMOTARD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2896, 'M600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2897, 'M750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2898, 'M900', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2899, 'MONSTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2900, 'MULTISTRADA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2901, 'SPORTCLASSIC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2902, 'ST2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2903, 'ST3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2904, 'ST4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2905, 'STREETFIGHTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2906, 'SUPERBIKE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2907, 'SUPERSPORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2908, 'DUPLEX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2909, 'AXESS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2910, 'ESCORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2911, 'E-Z RIDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2912, 'E-Z RIDER II', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2913, 'TRANSMARK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2914, 'TRANSMARK XHF', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2915, 'CLASSIC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2916, 'SPORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2917, 'BEAMER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2918, 'BEAMER II', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2919, 'BEAMER III', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2920, 'BEAMER MATRIX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2921, 'BEAMER MATRIX II', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2922, 'BEAMER R2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2923, 'BEAMER R4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2924, 'LIGHTNING', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2925, 'MATRIX 50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2926, 'MATRIX R4-150', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2927, 'RASCAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2928, 'ROVER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2929, 'ROVER GT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2930, 'SIERRA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2931, 'SIERRA UTILITY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2932, 'THUNDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2933, 'TXL-50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2934, 'TXL-90', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2935, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2936, 'VECTOR 250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2937, 'VIPER 150R', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2938, 'VIPER 40E', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2939, 'VIPER 50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2940, 'VIPER 50M', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2941, 'VIPER 70', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2942, 'VIPER 70-4S', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2943, 'VIPER 70M', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2944, 'VIPER 90', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2945, 'VIPER 90-4S', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2946, 'VIPER 90R', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2947, 'VIPER JR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2948, 'YUKON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2949, 'YUKON II', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2950, '417', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2951, '458 ITALIA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2952, '458 SPECIALE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2953, '458 SPIDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2954, '512TR / F512M', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2955, 'LAFERRARI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2956, '500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2961, '500L', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2966, 'CL-SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2967, 'C-SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2968, 'F-150 HERITAGE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2969, 'F53', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2970, 'F530', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2971, 'F59', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2972, 'F590', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2973, 'F600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2974, 'F6000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2975, 'F650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2976, 'F700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2977, 'F7000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2978, 'F750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2979, 'F800', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2980, 'F8000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2981, 'FT800', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2982, 'FT8000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2983, 'FT900', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2984, 'H-SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2985, 'LOW CAB FORWARD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2986, 'LOW TILT CARGO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2987, 'L-SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2988, 'N-SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2989, 'P600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2990, 'P800F', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2991, 'TAURUS X', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2992, 'TRANSIT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2993, '108SD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2994, '114SD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2995, 'ARGOSY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2996, 'CASCADIA 113', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2997, 'CASCADIA 125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2998, 'CHASSIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (2999, 'COE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3000, 'COLUMBIA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3001, 'CONVENTIONAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3002, 'HC CARGO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3003, 'LEGACY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3004, 'M2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3005, 'MEDIUM CONVENTIONAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3006, 'RIV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3007, 'SPORT CHASSIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3008, '358', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3009, 'SPRINTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3010, 'AMERICA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3011, 'BXU', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3012, 'CB', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3013, 'CRANE CARRIER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3014, 'FD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3015, 'RB', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3016, 'GENESIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3019, 'BLUR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3020, 'BUDDY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3021, 'RATTLER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3022, 'ROUGHHOUSE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3023, 'STELLA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3024, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3025, '2WM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3026, 'C116', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3027, 'INCOMPLETE MOTORHOME CHASSIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3028, 'SCHOOL BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3029, 'SHUTTLE BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3030, 'SUBURBAN BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3031, 'TRANSIT BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3032, 'E4 S', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3033, 'E6 S', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3034, 'EL XD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3035, 'EM 1400/1400 LSV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3036, '4000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3037, '5000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3038, '5500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3039, '6000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3040, '7000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3041, 'B7T042', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3042, 'B-SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3043, 'C4500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3044, 'C5000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3045, 'C5500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3046, 'C6000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3047, 'C6400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3048, 'C6500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3049, 'C7000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3050, 'C7500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3051, 'C8500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3052, 'CUTAWAY VAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3053, 'D9500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3054, 'F9500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3055, 'FORWARD CONTROL CHASSIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3056, 'GLIDER KIT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3057, 'GMT-400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3058, 'G-P', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3059, 'H7500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3060, 'H9500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3061, 'HI-CUBE VAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3062, 'J7500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3063, 'J9500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3064, 'M9500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3065, 'ME6000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3066, 'ME6500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3067, 'MOTOR HOME CHASSIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3068, 'N9500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3069, 'NEW SIERRA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3070, 'P6S042', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3071, 'PS4500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3072, 'PS6500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3073, 'R15 CONVENTIONAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3077, 'R25 CONVENTIONAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3078, 'S6000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3079, 'SEO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3080, 'SIERRA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3089, 'T-SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3090, 'W3500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3091, 'W4500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3092, 'WT5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3093, 'YUKON XL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3094, 'FLD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3095, 'FLH80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3096, 'FLHP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3097, 'FLHPE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3098, 'FLHPEI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3099, 'FLHPI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3100, 'FLHR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3101, 'FLHR/I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3102, 'FLHRC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3103, 'FLHRCI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3104, 'FLHRI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3105, 'FLHRS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3106, 'FLHRSE3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3107, 'FLHRSE4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3108, 'FLHRSEI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3109, 'FLHRSEI1', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3110, 'FLHRSI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3111, 'FLHS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3112, 'FLHT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3113, 'FLHTC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3114, 'FLHTC/I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3115, 'FLHTCI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3116, 'FLHTCSE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3117, 'FLHTCSE2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3118, 'FLHTCU', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3119, 'FLHTCU/I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3120, 'FLHTCUI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3121, 'FLHTCUL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3122, 'FLHTCUSE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3123, 'FLHTCUSE3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3124, 'FLHTCUSE4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3125, 'FLHTCUSE5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3126, 'FLHTCUSE6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3127, 'FLHTCUSE7', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3128, 'FLHTCUTG', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3129, 'FLHTI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3130, 'FLHTK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3131, 'FLHTKL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3132, 'FLHTKSE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3133, 'FLHTNSE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3134, 'FLHTP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3135, 'FLHTPI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3136, 'FLHX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3137, 'FLHXI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3138, 'FLHXS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3139, 'FLHXSE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3140, 'FLHXSE2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3141, 'FLHXSE3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3142, 'FLHXXX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3143, 'FLRT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3144, 'FLS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3145, 'FLST', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3146, 'FLSTC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3147, 'FLSTCI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3148, 'FLSTF', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3149, 'FLSTFB', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3150, 'FLSTFI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3151, 'FLSTFSE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3152, 'FLSTI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3153, 'FLSTN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3154, 'FLSTNI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3155, 'FLSTS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3156, 'FLSTSB', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3157, 'FLSTSC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3158, 'FLSTSE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3159, 'FLSTSE2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3160, 'FLSTSE3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3161, 'FLSTSI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3162, 'FLT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3163, 'FLTC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3164, 'FLTCUI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3165, 'FLTR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3166, 'FLTRI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3167, 'FLTRSE3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3168, 'FLTRSEI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3169, 'FLTRSEI2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3170, 'FLTRU', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3171, 'FLTRUSE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3172, 'FLTRX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3173, 'FLTRXS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3174, 'FLTRXSE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3175, 'FXB', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3176, 'FXCW', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3177, 'FXCWC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3178, 'FXD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3179, 'FXDB', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3180, 'FXDBI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3181, 'FXDBP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3182, 'FXDC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3183, 'FXDCI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3184, 'FXDF', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3185, 'FXDF2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3186, 'FXDFSE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3187, 'FXDFSE-2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3188, 'FXDG', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3189, 'FXDI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3190, 'FXDI35', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3191, 'FXDL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3192, 'FXDLI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3193, 'FXDP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3194, 'FXDS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3195, 'FXDSE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3196, 'FXDSE2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3197, 'FXDWG', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3198, 'FXDWG2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3199, 'FXDWG3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3200, 'FXDWGI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3201, 'FXDX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3202, 'FXDXI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3203, 'FXDXT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3204, 'FXE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3205, 'FXEF', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3206, 'FXLR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3207, 'FXR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3208, 'FXR2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3209, 'FXR3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3210, 'FXR4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3211, 'FXRC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3212, 'FXRD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3213, 'FXRDG', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3214, 'FXRP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3215, 'FXRP-F', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3216, 'FXRP-W', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3217, 'FXRS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3218, 'FXRT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3219, 'FXS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3220, 'FXSB', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3221, 'FXSBSE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3222, 'FXST', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3223, 'FXSTB', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3224, 'FXSTBI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3225, 'FXSTC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3226, 'FXSTD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3227, 'FXSTDI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3228, 'FXSTDSE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3229, 'FXSTDSE2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3230, 'FXSTI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3231, 'FXSTS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3232, 'FXSTSB', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3233, 'FXSTSI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3234, 'FXSTSSE2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3235, 'FXSTSSE3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3236, 'FXWG', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3237, 'FXWG-CA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3238, 'MT500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3239, 'VRSCA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3240, 'VRSCAW', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3241, 'VRSCAWA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3242, 'VRSCB', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3243, 'VRSCD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3244, 'VRSCDA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3245, 'VRSCDX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3246, 'VRSCDXA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3247, 'VRSCF', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3248, 'VRSCR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3249, 'VRSCSE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3250, 'VRSCX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3251, 'VRSCXA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3252, 'XG500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3253, 'XG750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3254, 'XL1200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3255, 'XL883', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3256, 'XLH', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3257, 'XLH1100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3258, 'XLH1200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3259, 'XLH883', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3260, 'XLS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3261, 'XLX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3262, 'XR100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3263, 'XR1200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3264, 'SF', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3265, 'BULLET', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3266, 'BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3267, 'CRANE/DRILL RIG', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3268, 'DOCKMASTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3269, 'FIRETRUCK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3270, 'GLIDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3271, 'H', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3272, 'TRUCK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3273, 'VT-100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3274, '198/258/268', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3275, '238/258', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3276, '258/268', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3277, '308/338', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3278, '338/358', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3279, 'FA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3280, 'FB', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3281, 'FD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3282, 'FE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3283, 'FF', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3284, 'FG', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3285, 'GC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3286, 'HINO 145', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3287, 'HINO 165', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3288, 'HINO 185', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3289, 'HINO 238', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3290, 'HINO 268', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3291, 'HINO 308', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3292, 'HINO 338', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3293, 'SG', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3294, 'ACCORD CROSSTOUR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3295, 'ATC110', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3296, 'ATC125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3297, 'ATC185', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3298, 'ATC200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3299, 'ATC250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3300, 'ATC350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3301, 'ATC70', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3302, 'C70', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3303, 'CB1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3304, 'CB1100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3305, 'CB125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3306, 'CB250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3307, 'CB300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3308, 'CB400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3309, 'CB450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3310, 'CB500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3311, 'CB550', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3312, 'CB559', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3313, 'CB600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3314, 'CB650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3315, 'CB700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3316, 'CB750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3317, 'CB900', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3318, 'CBR1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3319, 'CBR1100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3320, 'CBR250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3321, 'CBR300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3322, 'CBR500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3323, 'CBR600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3324, 'CBR650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3325, 'CBR900', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3326, 'CBR929', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3327, 'CBX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3328, 'CBX250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3329, 'CBX550', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3330, 'CH125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3331, 'CH150', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3332, 'CH250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3333, 'CH50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3334, 'CH80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3335, 'CHF50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3336, 'CM200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3337, 'CM250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3338, 'CM400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3339, 'CM450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3340, 'CMX250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3341, 'CMX450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3342, 'CN250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3343, 'CR125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3344, 'CR250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3345, 'CR450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3346, 'CR480', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3347, 'CR500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3348, 'CR60', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3349, 'CR80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3350, 'CR85', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3351, 'CRF100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3352, 'CRF110', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3353, 'CRF125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3354, 'CRF150', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3355, 'CRF230', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3356, 'CRF250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3357, 'CRF450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3358, 'CRF50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3359, 'CRF70', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3360, 'CRF80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3361, 'CT110', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3362, 'CT1100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3363, 'CT70', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3364, 'CTX1300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3365, 'CTX700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3366, 'CX500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3367, 'CX650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3368, 'EZ90', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3369, 'FCX CLARITY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3370, 'FIT EV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3371, 'FL250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3372, 'FL350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3373, 'FL400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3374, 'FSC600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3375, 'FT500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3376, 'GB500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3377, 'GL1100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3378, 'GL12', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3379, 'GL1200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3380, 'GL1500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3381, 'GL1800', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3382, 'GL500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3383, 'GL650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3384, 'GROM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3385, 'MB50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3386, 'MRT260E', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3387, 'MUV700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3388, 'NA50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3389, 'NB50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3390, 'NC50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3391, 'NC700JD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3392, 'NC700X', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3393, 'NC750SA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3394, 'NCH50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3395, 'NH125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3396, 'NH80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3397, 'NHX110', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3398, 'NN50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3399, 'NPS50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3400, 'NQ50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3401, 'NRX1800', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3402, 'NS400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3403, 'NS50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3404, 'NSA700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3405, 'NSF250R', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3406, 'NSS250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3407, 'NSS300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3408, 'NT650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3409, 'NT700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3410, 'NU50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3411, 'NX125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3412, 'NX250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3413, 'NX50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3414, 'NX650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3415, 'PA50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3416, 'PC800', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3417, 'PCX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3418, 'PS250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3419, 'QR50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3420, 'RVF750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3421, 'RVT1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3422, 'SA50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3423, 'SA50 - SB50P', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3424, 'SB50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3425, 'SE50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3426, 'SH150', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3427, 'ST1100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3428, 'ST1300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3429, 'SXS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3430, 'TG50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3431, 'TLR200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3432, 'TR200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3433, 'TRX 700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3434, 'TRX125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3435, 'TRX200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3436, 'TRX250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3437, 'TRX300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3438, 'TRX350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3439, 'TRX400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3440, 'TRX420', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3441, 'TRX450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3442, 'TRX50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3443, 'TRX500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3444, 'TRX650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3445, 'TRX680', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3446, 'TRX70', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3447, 'TRX90', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3448, 'VF1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3449, 'VF1100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3450, 'VF500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3451, 'VF700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3452, 'VF750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3453, 'VFR1200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3454, 'VFR700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3455, 'VFR750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3456, 'VFR800', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3457, 'VT1100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3458, 'VT1300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3459, 'VT500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3460, 'VT600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3461, 'VT700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3462, 'VT750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3463, 'VT800', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3464, 'VTR1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3465, 'VTR250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3466, 'VTX1300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3467, 'VTX1800', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3468, 'WW150', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3469, 'XL100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3470, 'XL125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3471, 'XL185', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3472, 'XL200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3473, 'XL250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3474, 'XL350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3475, 'XL500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3476, 'XL600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3477, 'XL80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3478, 'XR100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3479, 'XR200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3480, 'XR250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3481, 'XR350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3482, 'XR400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3483, 'XR50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3484, 'XR500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3485, 'XR600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3486, 'XR650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3487, 'XR70', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3488, 'XR80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3489, 'Z50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3490, 'ZA50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3491, 'ZB50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3492, 'H1 ALPHA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3493, 'H2 SUT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3494, '350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3495, '499', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3496, '501', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3497, '600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3498, 'FC400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3499, 'FC450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3500, 'FC501', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3501, 'FC600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3502, 'FE250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3503, 'FE350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3504, 'FE390', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3505, 'FE400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3506, 'FE450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3507, 'FE450 / FS450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3508, 'FE450/FX450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3509, 'FE501', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3510, 'FE550', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3511, 'FE570', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3512, 'FE600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3513, 'FE650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3514, 'FS450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3515, 'FS600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3516, 'FS650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3517, 'FX400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3518, 'FX600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3519, 'FX650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3520, 'TE250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3521, 'TE300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3522, '125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3523, '250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3524, '260', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3525, '350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3526, '360', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3527, '510', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3528, '610', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3529, 'CR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3530, 'FC250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3531, 'FC450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3532, 'FE250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3533, 'FE350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3534, 'FE501', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3535, 'SM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3536, 'SMR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3537, 'SMS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3538, 'TC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3539, 'TC125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3540, 'TC250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3541, 'TC85', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3542, 'TE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3543, 'TE250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3544, 'TE300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3545, 'TR650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3546, 'TXC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3547, 'WR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3548, 'GT250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3549, 'GT650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3550, 'GV250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3551, 'GV650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3552, 'MS3-250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3553, 'SD50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3554, 'SF50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3555, 'ST7', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3556, 'TE-450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3557, '150', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3558, '230', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3559, '260', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3560, 'ELANTRA COUPE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3561, 'ELANTRA GT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3562, 'ELANTRA TOURING', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3563, 'GENESIS COUPE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3564, 'SANTA FE SPORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3565, 'XG', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3568, '1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3569, '3000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3570, 'CENTENNIAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3571, 'CHIEF', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3572, 'CHIEFTAIN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3573, 'SCOUT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3574, 'SPORT CHIEF', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3575, 'GLIDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3576, 'Q40', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3577, 'Q70', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3578, 'Q70L', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3579, 'QX60', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3580, 'QX80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3581, '700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3582, '900', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3583, '1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3584, '2000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3585, '3000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3586, '4000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3587, '5500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3588, '5600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3589, '5900', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3590, '7000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3591, '8000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3592, '8300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3593, '9000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3594, '9100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3595, '9200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3596, '9300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3597, '9370', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3598, '9400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3599, '9600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3600, '9670', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3601, '9900', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3602, 'CARGOSTAR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3603, 'CF', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3604, 'CO 9600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3605, 'CO 9670', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3606, 'CO 9700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3607, 'CO-LFE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3608, 'CO-PAYSTAR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3609, 'CO-TRANSTAR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3610, 'LONESTAR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3611, 'METRO II', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3612, 'PAYSTAR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3613, 'PROSTAR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3614, 'PROSTAR LMTD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3615, 'PROSTAR PREMIUM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3616, 'S-SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3617, 'S-SERIES RHD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3618, 'TERRASTAR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3619, 'K900', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3620, 'TRANSTAR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3621, 'X-CO MDLS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3622, 'X-CON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3623, 'XT SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3624, 'FRR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3625, 'FSR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3626, 'FTR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3627, 'FTR / FVR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3628, 'FTR / FVR / EVR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3629, 'FVR / EVR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3630, 'HTR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3631, 'HVR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3632, 'HXR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3633, 'I-290', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3634, 'KS22', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3635, 'LT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3636, 'MR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3637, 'NPR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3638, 'NQR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3639, 'NRR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3640, 'T6F042-FTR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3641, 'T7F042-FVR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3642, 'T8F042-FXR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3643, 'T8F064-FXR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3644, 'EURO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3645, 'Z100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3646, 'Z110', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3647, 'Z120', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3648, 'Z220', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3649, 'Z230', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3650, 'Z340', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3651, 'Z450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3652, 'MAGIRUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3653, 'JEEP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3654, 'JEEP TRUCK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3659, 'SCRAMBLER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3660, 'WRANGLER / TJ', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3661, 'WRANGLER / YJ', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3662, 'WRANGLER UNLIMITED', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3663, 'COMMERCIAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3664, 'TYPE A', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3665, 'CYT 30', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3666, 'CYT 50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3667, 'CYT 60T', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3668, 'OTTAWA 4X2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3669, 'OTTAWA 6X4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3670, '1600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3671, 'AR50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3672, 'AR80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3673, 'BN125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3674, 'EJ650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3675, 'EL250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3676, 'EL650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3677, 'EN450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3678, 'EN500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3679, 'ER650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3680, 'EX250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3681, 'EX300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3682, 'EX305', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3683, 'EX500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3684, 'EX650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3685, 'KAF300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3686, 'KAF400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3687, 'KAF550', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3688, 'KAF620', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3689, 'KAF820', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3690, 'KAF920', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3691, 'KAF950', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3692, 'KD80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3693, 'KDX175', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3694, 'KDX200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3695, 'KDX220', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3696, 'KDX250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3697, 'KDX420', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3698, 'KDX450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3699, 'KDX50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3700, 'KDX80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3701, 'KE100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3702, 'KE125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3703, 'KE175', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3704, 'KEF300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3705, 'KL250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3706, 'KL600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3707, 'KL650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3708, 'KLE650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3709, 'KLF110', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3710, 'KLF185', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3711, 'KLF220', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3712, 'KLF250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3713, 'KLF300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3714, 'KLF400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3715, 'KLT110', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3716, 'KLT160', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3717, 'KLT185', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3718, 'KLT200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3719, 'KLT250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3720, 'KLX110', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3721, 'KLX125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3722, 'KLX140', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3723, 'KLX250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3724, 'KLX300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3725, 'KLX400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3726, 'KLX450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3727, 'KLX650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3728, 'KM100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3729, 'KRF-750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3730, 'KRF800', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3731, 'KRT750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3732, 'KRT800', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3733, 'KSF250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3734, 'KSF400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3735, 'KSF450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3736, 'KSF50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3737, 'KSF80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3738, 'KSF90', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3739, 'KSV700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3740, 'KVF300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3741, 'KVF360', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3742, 'KVF400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3743, 'KVF650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3744, 'KVF700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3745, 'KVF750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3746, 'KVS700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3747, 'KX100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3748, 'KX125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3749, 'KX250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3750, 'KX420', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3751, 'KX450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3752, 'KX500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3753, 'KX60', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3754, 'KX65', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3755, 'KX80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3756, 'KX85', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3757, 'KXF250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3758, 'KXT250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3759, 'KZ1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3760, 'KZ1100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3761, 'KZ1300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3762, 'KZ250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3763, 'KZ305', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3764, 'KZ440', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3765, 'KZ550', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3766, 'KZ650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3767, 'KZ700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3768, 'KZ750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3769, 'LE650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3770, 'NINJA ZX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3771, 'VF700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3772, 'VN1500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3773, 'VN1600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3774, 'VN1700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3775, 'VN2000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3776, 'VN700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3777, 'VN750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3778, 'VN800', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3779, 'VN900', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3780, 'VULCAN 2000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3781, 'ZG1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3782, 'ZG1200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3783, 'ZG1400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3784, 'ZL1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3785, 'ZL600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3786, 'ZL900', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3787, 'ZN1100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3788, 'ZN1300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3789, 'ZN700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3790, 'ZN750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3791, 'ZR1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3792, 'ZR1100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3793, 'ZR1200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3794, 'ZR550', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3795, 'ZR750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3796, 'ZX1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3797, 'ZX1100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3798, 'ZX1200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3799, 'ZX1400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3800, 'ZX550', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3801, 'ZX600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3802, 'ZX636', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3803, 'ZX750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3804, 'ZX900', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3805, 'COE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3806, 'CONSTRUCTION', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3807, 'EXPORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3808, 'K260/K360', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3809, 'K270/K370', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3810, 'OFF HIGHWAY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3811, 'NEW SPORTAGE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3812, 'SOUL EV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3813, '50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3814, '85', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3815, '105', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3816, '125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3817, '150', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3818, '200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3819, '250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3820, '300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3821, '350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3822, '360', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3823, '380', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3824, '400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3825, '450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3826, '500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3827, '505', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3828, '520', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3829, '525', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3830, '530', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3831, '560', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3832, '620', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3833, '625', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3834, '640', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3835, '690', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3836, '950', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3837, '990', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3838, '1190', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3839, '1290', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3840, '125 / 200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3841, '125/150', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3842, '50 / 65', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3843, '65/85', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3844, 'DESERT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3845, 'ENDURO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3846, 'MOTOCROSS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3847, 'ROAD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3848, 'TRIAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3849, 'AGILITY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3850, 'BET & WIN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3851, 'COMPAGNO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3852, 'DOWNTOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3853, 'FLAT BED', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3854, 'GRAND VISTA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3855, 'KYMCO ATV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3856, 'LIKE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3857, 'MONGOOSE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3858, 'MONGOOSE/MXU', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3859, 'MOVIE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3860, 'MXER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3861, 'MXU', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3862, 'PEOPLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3863, 'QUANNON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3864, 'RED STICKER ATV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3865, 'SENTO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3866, 'SPORTY ATV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3867, 'SPORTY UTILITY ATV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3868, 'STING 50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3869, 'SUPER 8', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3870, 'SUPER 9', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3871, 'SUPER 9 50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3872, 'UTILITY ATV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3873, 'UXV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3874, 'VENOX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3875, 'VITALITY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3876, 'XCITING', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3877, 'YAGER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3878, 'ZX50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3879, 'HURACAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3880, 'VENENO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3882, 'RANGE ROVER EVOQUE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3883, 'GS GENERATION 2006', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3884, 'NX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3885, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3886, 'MKC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3887, 'BRUTALE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3888, 'SM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3889, 'TE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3890, 'B3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3891, 'B5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3892, 'F3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3893, 'F5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3894, 'F6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3895, 'S3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3896, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3897, '200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3898, '250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3899, '300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3900, '400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3901, '500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3902, '600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3903, '700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3904, '800', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3905, 'SAVAGE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3906, 'TR20', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3907, 'TR40', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3908, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3909, 'CAB OVER ENGINE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3910, 'CCV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3911, 'CONVENTIONAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3912, 'CONVENTIONAL HEAVY DUTY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3913, 'CONVENTIONAL LIGHTWEIGHT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3914, 'GLIDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3915, '228', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3916, 'COUPE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3917, '3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3921, 'SPEED', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3928, '650S', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3929, 'P1', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3930, '300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3933, '380', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3936, 'B250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3937, 'C GENERATION 2006', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3938, 'CLK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3941, 'E', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3946, 'ML', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3950, 'SL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3954, 'SPRINTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3955, 'HD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3956, 'COOPER COUPE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3957, 'COOPER ROADSTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3958, 'MIGHTY MAX / S', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3959, 'MPV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3960, 'S', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3961, 'SPX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3962, 'FE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3964, 'FG', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3966, 'FH', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3968, 'FK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3970, 'FM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3972, '1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3973, 'BREVA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3976, 'CALIFORNIA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3980, 'DAYTONA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3981, 'GRISO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3982, 'V11', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3983, 'COUNTRY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3984, 'SKORPION', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3985, 'TOUR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3986, 'NV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3987, 'NV200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3988, 'ROGUE SELECT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3989, 'TRUCK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3996, 'VERSA NOTE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3997, 'CLA83', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3998, 'CMA83', 'cris'); +insert into lookups.veh_mod (id, label, source) values (3999, 'CPB12', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4000, 'CPC12', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4001, 'UD1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4002, 'UD1200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4003, 'UD1300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4004, 'UD1400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4005, 'UD1800', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4006, 'UD2000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4007, 'UD2300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4008, 'UD2600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4009, 'UD2800', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4010, 'UD3000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4011, 'UD3300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4012, 'UD550', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4013, 'UD600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4014, 'ORION I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4015, 'ORION II', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4016, 'ORION V', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4017, 'ORION II', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4018, 'ORION V', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4019, 'ORION VI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4020, 'ORION VII', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4021, 'CHASSIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4022, 'CONVENTIONAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4023, 'FORWARD MOUNTED', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4024, 'JOHN DEERE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4025, 'LOW TILT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4026, 'S SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4027, 'SHUTTLE BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4028, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4029, 'RV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4030, 'FIRE CAB CHASSIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4031, 'ROGUE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4032, 'YT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4033, '200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4034, '210', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4035, '220', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4036, '270', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4037, '310', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4038, '320', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4039, '325', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4040, '330', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4041, '335', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4042, '337', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4043, '340', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4044, '348', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4045, '349', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4046, '352', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4047, '353', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4048, '357', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4049, '359', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4050, '362', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4051, '365', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4052, '367', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4053, '372', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4054, '375', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4055, '376', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4056, '377', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4057, '378', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4058, '379', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4059, '382', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4060, '384', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4061, '385', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4062, '386', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4063, '387', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4064, '388', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4065, '389', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4066, '397', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4067, '567', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4068, '579', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4069, '587', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4070, 'BV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4071, 'FLY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4072, 'LT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4073, 'MP3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4074, 'TYPHOON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4075, 'X9 EVOLUTION', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4076, 'BIG BOSS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4077, 'BRUTUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4078, 'DIESEL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4079, 'GEN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4080, 'HAWKEYE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4081, 'MAGNUM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4082, 'OUTLAW', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4083, 'PHOENIX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4084, 'PREDATOR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4085, 'RANGER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4086, 'SAWTOOTH', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4087, 'SCRAMBLER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4088, 'SPORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4089, 'SPORTSMAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4090, 'TRAIL BLAZER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4091, 'TRAIL BOSS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4092, 'X2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4093, 'XPEDITION', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4094, 'XPLORER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4095, 'XPRESS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4096, 'MONTANA / TRANS SPORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4097, '918', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4098, '911 NEW GENERATION', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4099, 'MACAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4100, '1500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4101, '2500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4102, '3500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4103, '4500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4104, '5500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4105, 'PROMASTER 1500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4106, 'PROMASTER 2500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4107, 'PROMASTER 3500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4108, 'TRADESMAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4109, 'AE-STACKED RAIL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4110, 'DYANASTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4111, 'EXECUTIVE SIGNATURE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4112, 'LF4F', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4113, 'MAGNUM B-SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4114, 'MAGNUM C-SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4115, 'MAGNUM M-SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4116, 'MAGNUM S-SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4117, 'MONOCOQUE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4118, 'MOTORHOME CHASSIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4119, 'M-SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4120, 'RAISED RAIL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4121, 'STRAIGHT RAIL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4122, 'SILVER DAWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4123, 'SILVER SERAPH', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4124, 'SILVER SPIRIT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4125, 'SILVER SPUR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4126, 'WRAITH', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4127, 'CONCRETE VEHICLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4128, 'COE HIGH', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4129, 'COE LOW', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4130, 'CONVENTIONAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4131, 'SEAGRAVE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4132, 'D100 SC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4133, 'D120 SC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4134, 'D75 SC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4135, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4136, 'DIAMOND', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4137, 'FURION', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4138, 'SCHOOL BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4139, 'SHUTTLE BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4140, '2500 SPRINTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4141, '3500 SPRINTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4142, 'A', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4143, 'ACTERRA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4144, 'AT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4145, 'BULLET', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4146, 'CONDOR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4147, 'L', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4148, 'LC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4149, 'LT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4150, 'M', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4151, 'MITSUBISHI CHASSIS COE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4152, 'SC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4153, 'SPORT CHASSIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4154, 'ST', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4155, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4156, 'WRX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4157, 'XT6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4158, 'ALT125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4159, 'ALT185', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4160, 'ALT50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4161, 'AN400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4162, 'AN650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4163, 'C50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4164, 'C90', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4165, 'DL100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4166, 'DL1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4167, 'DL650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4168, 'DR100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4169, 'DR125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4170, 'DR200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4171, 'DR250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4172, 'DR350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4173, 'DR500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4174, 'DR600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4175, 'DR650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4176, 'DR750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4177, 'DR-Z110', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4178, 'DR-Z125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4179, 'DR-Z250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4180, 'DR-Z400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4181, 'DR-Z70', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4182, 'DS100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4183, 'DS125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4184, 'DS185', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4185, 'DS250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4186, 'DS50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4187, 'DS80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4188, 'FA50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4189, 'FS50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4190, 'FZ50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4191, 'GN125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4192, 'GN250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4193, 'GN400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4194, 'GR650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4195, 'GS1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4196, 'GS1100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4197, 'GS1150', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4198, 'GS250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4199, 'GS300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4200, 'GS400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4201, 'GS450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4202, 'GS500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4203, 'GS550', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4204, 'GS650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4205, 'GS700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4206, 'GS750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4207, 'GS850', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4208, 'GSF1200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4209, 'GSF1250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4210, 'GSF400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4211, 'GSF600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4212, 'GSF650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4213, 'GSX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4214, 'GSX1100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4215, 'GSX1250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4216, 'GSX1300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4217, 'GSX600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4218, 'GSX650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4219, 'GSX750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4220, 'GSX-R1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4221, 'GSX-R1100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4222, 'GSX-R600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4223, 'GSX-R750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4224, 'GV1200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4225, 'GV1400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4226, 'GV700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4227, 'GW250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4228, 'GZ250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4229, 'JR50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4230, 'JR80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4231, 'LS650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4232, 'LT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4233, 'LT125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4234, 'LT160', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4235, 'LT185', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4236, 'LT230', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4237, 'LT250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4238, 'LT300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4239, 'LT50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4240, 'LT500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4241, 'LT80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4242, 'LT-A400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4243, 'LT-A450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4244, 'LT-A50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4245, 'LT-A500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4246, 'LT-A700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4247, 'LT-A750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4248, 'LTF', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4249, 'LT-F160', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4250, 'LTF230', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4251, 'LTF250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4252, 'LTF300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4253, 'LTF4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4254, 'LTF400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4255, 'LTF500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4256, 'LT-R450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4257, 'LT-V700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4258, 'LT-Z250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4259, 'LT-Z400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4260, 'LT-Z50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4261, 'LT-Z90', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4262, 'M109R / VZR1800', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4263, 'M50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4264, 'PE175', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4265, 'PE250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4266, 'PE400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4267, 'QUV620', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4268, 'RB50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4269, 'RF600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4270, 'RFR900', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4271, 'RG250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4272, 'RG500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4273, 'RM100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4274, 'RM125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4275, 'RM2450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4276, 'RM250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4277, 'RM465', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4278, 'RM500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4279, 'RM60', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4280, 'RM65', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4281, 'RM80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4282, 'RM85', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4283, 'RMX250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4284, 'RMX450Z', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4285, 'RM-Z250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4286, 'RM-Z450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4287, 'RS175', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4288, 'RS250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4289, 'SFV650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4290, 'SP100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4291, 'SP125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4292, 'SP200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4293, 'SP250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4294, 'SP500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4295, 'SP600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4296, 'SV1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4297, 'SV650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4298, 'TL1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4299, 'TS100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4300, 'TS125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4301, 'TS185', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4302, 'TS250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4303, 'TU250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4304, 'UH200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4305, 'VL1500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4306, 'VL800', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4307, 'VLR1800', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4308, 'VS1400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4309, 'VS700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4310, 'VS750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4311, 'VS800', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4312, 'VX800', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4313, 'VZ1500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4314, 'VZ1600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4315, 'VZ800', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4316, 'VZR1800', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4317, 'XN85', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4318, 'CITYCOM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4319, 'FIDDLE II', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4320, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4321, 'WOLF', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4322, 'SCHOOL BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4323, 'TRANSIT BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4324, 'CAMRY NEW GENERATION', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4325, 'PICKUP / CAB CHASSIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4326, 'PICKUP COMMERCIAL / CAMPER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4327, 'PRIUS C', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4328, 'PRIUS PLUG-IN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4329, 'PRIUS V', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4330, 'RAV4 EV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4331, 'SCION', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4332, '9623', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4333, '102A3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4334, '102C3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4335, '96A3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4336, 'MC-9', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4337, 'T-30', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4338, 'T70206', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4339, 'T706', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4340, 'T70608', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4341, 'T802', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4342, 'T806', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4343, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4344, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4345, 'SPITFIRE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4346, 'TR6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4347, 'ADVENTURER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4348, 'AMERICA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4349, 'BONNEVILLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4350, 'DAYTONA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4351, 'LEGEND TT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4352, 'ROCKET III', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4353, 'SCRAMBLER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4354, 'SPEED', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4355, 'SPEED TRIPLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4356, 'SPEEDMASTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4357, 'SPRINT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4358, 'STREET TRIPLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4359, 'SUPER III', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4360, 'T100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4361, 'T509', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4362, 'T595', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4363, 'THRUXTON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4364, 'THUNDERBIRD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4365, 'TIGER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4366, 'TRIDENT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4367, 'TROPHY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4368, 'TT600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4369, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4370, '3350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4371, '3900', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4372, 'STEP VAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4373, 'C2045', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4374, 'T2100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4375, 'T800', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4376, 'T809', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4377, 'T815', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4378, 'T900', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4379, 'TD925', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4380, 'TOURIST COACH TX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4381, 'TRANSIT BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4382, 'C161C', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4383, 'GRANTURISMO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4384, 'GTS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4385, 'LX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4386, 'M198F', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4387, 'PX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4388, 'ANESS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4389, 'BOARDWALK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4390, 'CNESS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4391, 'CROSS COUNTRY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4392, 'CROSS ROADS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4393, 'DELUXE TOURING', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4394, 'GUNNER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4395, 'HAMMER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4396, 'HARD-BALL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4397, 'HIGH-BALL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4398, 'JACKPOT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4399, 'JUDGE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4400, 'KINGPIN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4401, 'NESS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4402, 'TOURING', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4403, 'V92', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4404, 'VEGAS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4405, 'VISION', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4406, 'VX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4407, 'ZNESS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4408, 'GOLF R', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4409, 'TOUAREG 2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4410, '9700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4411, '740 / 760', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4412, '745 / 765', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4413, 'ACL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4414, 'AERO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4415, 'CONVENTIONAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4416, 'F600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4417, 'F700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4418, 'FE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4419, 'FE6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4420, 'FE7', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4421, 'HIGH COE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4422, 'N10', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4423, 'N12', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4424, 'V60', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4425, 'VA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4426, 'VHD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4427, 'VN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4428, 'VT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4429, 'XPEDITOR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4430, 'ALPINE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4431, 'CONVENTIONAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4432, 'HIGH COE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4433, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4434, 'AERO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4435, 'CONVENTIONAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4436, 'HIGH COE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4437, 'INTEGRAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4438, 'LOW COE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4439, 'ROAD BOSS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4440, 'ROAD COMMANDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4441, 'ROAD XPEDITOR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4442, 'XPEDITOR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4443, 'ACL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4444, 'ACM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4445, 'AERO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4446, 'BRIGADIER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4447, 'CONVENTIONAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4448, 'HIGH COE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4449, 'INTEGRAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4450, 'LOW COE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4451, 'XPEDITOR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4452, 'CLASS A', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4453, 'LE SHARO/PHASAR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4454, 'RIALTA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4455, 'WALK-IN VAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4456, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4457, 'BUS CHASSIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4458, 'COMMERCIAL CHASSIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4459, 'FORWARD CONTROL CHASSIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4460, 'MOTORHOME CHASSIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4461, 'R26 - UFO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4462, 'STEP VAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4463, 'BW200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4464, 'BW350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4465, 'BW80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4466, 'CA50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4467, 'CE11', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4468, 'CE12', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4469, 'CE14', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4470, 'CE50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4471, 'CG19', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4472, 'CG50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4473, 'CP250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4474, 'CV50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4475, 'CV80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4476, 'CW50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4477, 'CX50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4478, 'CY50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4479, 'DT100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4480, 'DT125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4481, 'DT175', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4482, 'DT200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4483, 'DT50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4484, 'DT80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4485, 'FJ1100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4486, 'FJ1200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4487, 'FJ600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4488, 'FJR1300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4489, 'FZ07', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4490, 'FZ09', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4491, 'FZ1', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4492, 'FZ6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4493, 'FZ600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4494, 'FZ700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4495, 'FZ750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4496, 'FZ8', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4497, 'FZR1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4498, 'FZR400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4499, 'FZR600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4500, 'FZR750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4501, 'FZS10', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4502, 'FZX700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4503, 'FZX750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4504, 'GTS1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4505, 'IT200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4506, 'IT250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4507, 'IT490', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4508, 'LB50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4509, 'LC50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4510, 'MJ50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4511, 'MT-01', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4512, 'PRO HAULER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4513, 'PW50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4514, 'PW501', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4515, 'PW80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4516, 'PW801', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4517, 'QT50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4518, 'RT100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4519, 'RT180', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4520, 'RX50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4521, 'RZ350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4522, 'RZ500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4523, 'SH50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4524, 'SR185', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4525, 'SR250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4526, 'SR400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4527, 'SR400C', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4528, 'SR500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4529, 'SRX250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4530, 'SRX600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4531, 'TDM850', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4532, 'TT225', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4533, 'TT250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4534, 'TT350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4535, 'TT600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4536, 'TT-R110E', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4537, 'TTR125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4538, 'TTR225', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4539, 'TTR230', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4540, 'TT-R230', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4541, 'TTR50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4542, 'TTR90', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4543, 'TW200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4544, 'TY350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4545, 'TZ250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4546, 'TZR250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4547, 'VMX12', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4548, 'VMX17', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4549, 'VP11', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4550, 'WR200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4551, 'WR250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4552, 'WR400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4553, 'WR426', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4554, 'WR450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4555, 'WR500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4556, 'XC125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4557, 'XC180', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4558, 'XC200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4559, 'XC50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4560, 'XF50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4561, 'XJ1100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4562, 'XJ550', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4563, 'XJ600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4564, 'XJ650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4565, 'XJ700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4566, 'XJ750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4567, 'XJ900', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4568, 'XP500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4569, 'XS1100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4570, 'XS400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4571, 'XS650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4572, 'XS850', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4573, 'XT1200Z', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4574, 'XT1200ZC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4575, 'XT125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4576, 'XT200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4577, 'XT225', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4578, 'XT250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4579, 'XT350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4580, 'XT500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4581, 'XT550', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4582, 'XT600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4583, 'XV1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4584, 'XV1100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4585, 'XV16', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4586, 'XV1600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4587, 'XV1700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4588, 'XV1900', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4589, 'XV250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4590, 'XV500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4591, 'XV535', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4592, 'XV700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4593, 'XV750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4594, 'XV7501', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4595, 'XV920', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4596, 'XVS1100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4597, 'XVS1300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4598, 'XVS65', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4599, 'XVS650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4600, 'XVS950', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4601, 'XVZ12', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4602, 'XVZ13', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4603, 'XZ550', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4604, 'YF60', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4605, 'YFA1', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4606, 'YFB250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4607, 'YFM100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4608, 'YFM125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4609, 'YFM200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4610, 'YFM225', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4611, 'YFM25', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4612, 'YFM250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4613, 'YFM300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4614, 'YFM350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4615, 'YFM4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4616, 'YFM40', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4617, 'YFM400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4618, 'YFM45', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4619, 'YFM450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4620, 'YFM50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4621, 'YFM550', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4622, 'YFM660', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4623, 'YFM700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4624, 'YFM80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4625, 'YFM90', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4626, 'YFP350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4627, 'YFS200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4628, 'YFU1', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4629, 'YFZ350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4630, 'YFZ450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4631, 'YJ125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4632, 'YJ50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4633, 'YP400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4634, 'YSR50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4635, 'YT125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4636, 'YT60', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4637, 'YTM200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4638, 'YTM225', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4639, 'YTZ250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4640, 'YW125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4641, 'YW50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4642, 'YX600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4643, 'YXM700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4644, 'YXR450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4645, 'YXR660', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4646, 'YXR700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4647, 'YZ100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4648, 'YZ125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4649, 'YZ1251', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4650, 'YZ250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4651, 'YZ2501', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4652, 'YZ400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4653, 'YZ426', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4654, 'YZ450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4655, 'YZ490', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4656, 'YZ80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4657, 'YZ801', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4658, 'YZ85', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4659, 'YZF1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4660, 'YZF600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4661, 'YZF750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4662, 'YZFR1', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4663, 'YZFR6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4664, 'MD150T', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4665, 'MD250T', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4666, 'MD50QT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4667, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4668, 'DIRT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4669, 'DS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4670, 'FX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4671, 'MXD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4672, 'S', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4673, 'SR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4674, 'STREET', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4675, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4676, 'X', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4677, 'XD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4678, 'XU', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4679, 'ZS125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4680, 'ZS125ST', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4681, 'ZS150', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4682, 'ZS200GY-A', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4683, 'ZS250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4684, 'ZS250-5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4685, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4686, 'RENEGADE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4687, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4688, '8C COMPETIZIONE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4689, 'GIULIA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4690, 'STELVIO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4691, 'DB11', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4692, 'ASUNA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4693, 'SUNRUNNER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4694, 'S3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4695, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4696, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4697, 'BENTAYGA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4698, '340', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4699, '230I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4700, '230XI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4701, '330E', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4702, '430I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4703, '430XI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4704, '440I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4705, '440XI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4706, '530E', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4707, '530XE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4708, 'ALPINA B6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4709, 'C EVOLUTION', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4710, 'G310', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4711, 'M2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4712, 'M240I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4713, 'M240XI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4714, 'M550XI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4715, 'M760', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4716, 'CASCADA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4717, 'ENVISION', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4718, 'REGAL TOURX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4719, 'ATS-V', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4720, 'CT6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4721, 'XT5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4722, 'GRAN CANYON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4723, 'DEFENDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4724, 'DEFENDER MAX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4725, 'DEFENDER XT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4726, 'MAVERICK X3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4727, 'MAVERICK X3 MAX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4728, 'OUTLANDER 6X6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4729, 'OUTLANDER L', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4730, 'OUTLANDER L MAX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4731, 'CT680', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4732, 'CT681', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4733, '3500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4734, '4500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4735, '3500HD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4736, '4500HD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4737, '4500XD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4738, '5500HD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4739, '5500XD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4740, '6500XD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4741, 'BOLT EV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4742, 'CRUZE LIMITED', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4743, 'EQUINOX LIMITED', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4744, 'MALIBU LIMITED', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4745, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4746, 'COE2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4747, 'LDT2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4748, 'LET2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4749, 'LET2 CC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4750, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4751, 'SCRAMBLER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4752, 'SUPERLEGGERA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4753, 'XDIAVEL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4754, '407', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4755, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4756, 'CINDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4757, 'COMM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4758, 'CUSTOM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4759, 'EMBER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4760, 'IGNITER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4761, 'INFERNO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4762, 'INTRUDER 2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4763, 'MVP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4764, 'ULTRA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4765, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4766, '488 GTB', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4767, '488 SPIDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4768, '812 SUPERFAST', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4769, 'CALIFORNIA T', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4770, 'F12 BERLINETTA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4771, 'F12TDF', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4772, 'F60 AMERICA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4773, 'GTC4 LUSSO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4774, '124 SPIDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4775, '500X', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4776, 'CASCADIA 116', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4777, 'CASCADIA 126', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4778, 'G80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4779, 'G90', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4780, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4781, 'HOOLIGAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4782, 'ACADIA LIMITED', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4783, 'FLDE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4784, 'FLFB', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4785, 'FLFBS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4786, 'FLHC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4787, 'FLHCS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4788, 'FLHRXS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4789, 'FLSB', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4790, 'FLSL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4791, 'FLSS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4792, 'FLSTFBS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4793, 'FXBB', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4794, 'FXBR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4795, 'FXBRS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4796, 'FXDLS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4797, 'FXFB', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4798, 'FXFBS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4799, 'FXSE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4800, 'XG750A', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4801, 'CLARITY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4802, 'CMX300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4803, 'CMX500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4804, 'COTA 300RR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4805, 'COTA 4RT260', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4806, 'CRF1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4807, 'HR-V', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4808, 'MRT260', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4809, 'NC700XD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4810, 'NC750JD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4811, 'NC750X', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4812, 'NCW50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4813, 'RC1000VS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4814, 'SXS1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4815, 'SXS500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4816, 'SXS700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4817, '701ENDURO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4818, 'FC350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4819, 'FE450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4820, 'FX350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4821, 'FX450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4822, 'SUPERMOTO701', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4823, 'TC50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4824, 'TE125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4825, 'TE150', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4826, 'TX300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4827, 'GD250R', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4828, 'IONIQ', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4829, 'ROADMASTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4830, 'SPIRIT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4831, 'SPRINGFIELD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4832, 'QX30', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4833, 'HX515', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4834, 'HX520', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4835, 'HX615', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4836, 'HX620', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4837, 'LT625', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4838, 'RH613', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4839, 'NPR HD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4840, 'NPR XD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4841, 'F-PACE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4842, 'XE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4843, 'XJRL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4844, 'XJSC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4845, 'HEALEY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4846, 'INTERCEPTOR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4847, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4848, 'OTTAWA T2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4849, 'BR125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4850, 'EN650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4851, 'KAF1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4852, 'KLE300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4853, 'KLZ1000A', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4854, 'KX252', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4855, 'LE300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4856, 'LZ1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4857, 'ZR800', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4858, 'ZR900', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4859, 'T880', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4860, 'NIRO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4861, 'KF3200C', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4862, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4863, '390', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4864, '1090', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4865, 'FREERIDE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4866, 'RC 390', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4867, 'RC 390 CUP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4868, 'K-PIPE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4869, 'MYROAD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4870, 'DISCOVERY SPORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4871, 'RANGE ROVER VELAR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4872, 'GS-F', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4873, 'LC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4874, 'LFA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4875, 'RC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4876, 'RC-F', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4877, 'F4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4878, 'T3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4879, 'ANTHEM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4880, 'LEVANTE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4881, 'CX-3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4882, '570GT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4883, '570S', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4884, '675LT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4885, '720S', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4886, 'AMG GT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4887, 'GLC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4888, 'GLC COUPE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4889, 'GLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4890, 'GLE COUPE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4891, 'GLS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4892, 'METRIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4893, 'SLC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4894, 'RVR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4895, 'AUDACE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4896, 'ELDORADO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4897, 'MGX 21', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4898, 'NEVADA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4899, 'V7', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4900, 'V7 III', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4901, 'V7 LL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4902, 'V9', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4903, 'ADVANCED', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4904, 'JETLINER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4905, 'SKYLINER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4906, 'SPACELINER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4907, 'MIDI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4908, 'XCELSIOR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4909, 'ROGUE SPORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4910, 'TITAN XD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4911, '520', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4912, 'ACE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4913, 'GENERAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4914, 'RZR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4915, 'SLINGSHOT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4916, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4917, 'PROMASTER CITY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4918, 'LECAR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4919, 'DAWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4920, 'BULLET', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4921, 'CONTINENTAL GT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4922, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4923, 'CITIGO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4924, 'FABIA III', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4925, 'KODIAQ', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4926, 'OCTAVIA III', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4927, 'PRAKTIK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4928, 'RAPID', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4929, 'ROOMSTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4930, 'SUPERB III', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4931, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4932, 'YETI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4933, 'CROSSTREK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4934, 'GSF1250SA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4935, 'GSX250R', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4936, 'GSX-S1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4937, 'GSX-S1000A', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4938, 'GSX-S1000F', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4939, 'GSX-S750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4940, 'RV200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4941, 'FIDDLE III', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4942, 'SCOOTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4943, 'TS30', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4944, 'TS35', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4945, 'TS45', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4946, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4947, 'MODEL 3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4948, 'MODEL X', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4949, '86', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4950, 'C-HR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4951, 'COROLLA IM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4952, 'MIRAI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4953, 'PRIUS PRIME', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4954, 'RAV4 HV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4955, 'SCION FR-S', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4956, 'SCION IA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4957, 'SCION IM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4958, 'YARIS IA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4959, 'DAYTONA 675R', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4960, 'EXPLORER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4961, 'STREET CUP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4962, 'STREET SCRAMBLER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4963, 'STREET TWIN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4964, 'COMMUTER COACH CX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4965, 'TDX DOUBLE DECK COACH', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4966, '946', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4967, 'PRIMAVERA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4968, 'SPRINT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4969, 'EMPULSE TT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4970, 'MAGNUM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4971, 'NESS MAGNUM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4972, 'OCTANE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4973, 'ATLAS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4974, 'E-GOLF', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4975, 'GOLF ALLTRACK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4976, 'GOLF SPORTWAGEN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4977, 'S60 CROSS COUNTRY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4978, 'V60 CROSS COUNTRY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4979, 'V90 CROSS COUNTRY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4980, 'VNR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4981, '5700 XE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4982, 'FJ09', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4983, 'FZ07A', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4984, 'FZ10', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4985, 'SCR950', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4986, 'XC155', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4987, 'XSR900', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4988, 'XT1200ZE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4989, 'YFZ50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4990, 'YXC700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4991, 'YXE700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4992, 'YXZ1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4993, 'YZFR1S', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4994, 'YZFR3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4995, 'SCOOTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4996, 'DSR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4997, 'FXP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4998, 'FXS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (4999, 'MX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5000, 'X2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5001, 'CHIRON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5002, 'MAVERICK TRAIL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5003, 'PANIGALE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5004, 'GTC4 LUSSO T', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5005, 'KONA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5006, 'E-PACE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5007, 'REVERO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5008, 'STINGER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5009, 'SPADE 150', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5010, 'B1', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5011, 'CZD300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5012, 'XSR700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5013, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5014, 'YXF850', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5015, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5016, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5017, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5018, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5019, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5021, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5022, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5023, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5024, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5025, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5026, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5027, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5028, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5029, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5030, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5031, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5032, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5033, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5034, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5035, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5036, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5037, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5038, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5039, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5040, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5041, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5042, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5043, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5044, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5045, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5046, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5047, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5048, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5049, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5050, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5051, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5052, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5053, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5054, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5055, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5056, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5057, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5058, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5059, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5060, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5061, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5062, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5063, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5064, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5065, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5066, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5067, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5068, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5069, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5070, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5071, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5072, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5073, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5074, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5075, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5076, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5077, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5078, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5079, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5080, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5081, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5082, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5083, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5084, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5085, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5086, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5087, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5088, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5089, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5090, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5091, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5092, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5093, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5094, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5095, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5096, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5097, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5098, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5099, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5100, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5101, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5102, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5103, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5104, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5105, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5106, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5107, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5108, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5109, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5110, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5111, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5112, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5113, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5114, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5115, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5116, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5117, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5118, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5119, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5120, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5121, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5122, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5123, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5124, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5125, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5126, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5127, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5128, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5129, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5130, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5131, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5132, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5133, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5134, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5135, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5136, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5137, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5138, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5139, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5140, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5141, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5142, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5143, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5144, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5145, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5146, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5147, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5148, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5149, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5150, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5151, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5152, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5153, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5154, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5155, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5156, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5157, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5158, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5159, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5160, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5161, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5162, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5163, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5164, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5165, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5166, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5167, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5168, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5169, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5170, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5171, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5172, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5173, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5174, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5175, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5176, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5177, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5178, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5179, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5180, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5181, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5182, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5183, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5184, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5185, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5186, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5187, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5188, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5189, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5190, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5191, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5192, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5193, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5194, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5195, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5196, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5197, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5198, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5199, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5200, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5201, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5202, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5203, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5204, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5205, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5206, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5207, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5208, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5209, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5210, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5211, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5212, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5213, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5214, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5215, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5216, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5217, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5218, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5219, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5220, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5221, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5222, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5223, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5224, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5225, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5226, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5227, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5228, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5229, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5230, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5231, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5232, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5233, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5234, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5235, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5236, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5237, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5238, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5239, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5240, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5241, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5242, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5243, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5244, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5245, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5246, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5247, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5248, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5249, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5250, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5251, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5252, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5253, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5254, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5255, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5256, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5257, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5258, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5259, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5260, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5261, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5262, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5263, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5264, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5265, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5266, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5267, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5268, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5269, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5270, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5271, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5272, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5273, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5274, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5275, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5276, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5277, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5278, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5279, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5280, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5281, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5282, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5283, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5284, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5285, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5286, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5287, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5288, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5289, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5290, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5291, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5292, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5293, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5294, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5295, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5296, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5297, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5298, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5299, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5300, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5301, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5302, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5303, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5304, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5305, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5306, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5307, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5308, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5309, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5310, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5311, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5312, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5313, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5314, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5315, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5316, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5317, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5318, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5319, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5320, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5321, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5322, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5323, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5324, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5325, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5326, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5327, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5328, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5329, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5330, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5331, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5332, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5333, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5334, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5335, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5336, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5337, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5338, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5339, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5340, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5341, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5342, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5343, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5344, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5345, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5346, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5347, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5348, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5349, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5350, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5351, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5352, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5353, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5354, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5355, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5356, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5357, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5358, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5359, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5360, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5361, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5362, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5363, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5364, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5365, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5366, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5367, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5368, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5369, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5370, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5371, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5372, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5373, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5374, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5375, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5376, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5377, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5378, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5379, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5380, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5381, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5382, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5383, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5384, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5385, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5386, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5387, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5388, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5389, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5390, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5391, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5392, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5393, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5394, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5395, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5396, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5397, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5398, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5399, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5400, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5401, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5402, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5403, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5404, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5405, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5406, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5407, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5408, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5409, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5410, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5411, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5412, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5413, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5414, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5415, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5416, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5417, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5418, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5419, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5420, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5421, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5422, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5423, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5424, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5425, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5426, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5427, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5428, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5429, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5430, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5431, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5432, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5433, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5434, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5435, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5436, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5437, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5438, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5439, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5440, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5441, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5442, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5443, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5444, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5445, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5446, 'RS3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5447, '540XD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5448, 'ACTIVEHYBRID 7', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5449, 'TRANSIT BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5450, 'TRANSIT BUS 30FT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5451, 'TRANSIT BUS 35FT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5452, 'TRANSIT BUS 40FT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5453, 'TRANSIT BUS 60FT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5454, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5455, 'XT4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5456, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5457, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5458, 'SILVERADO LD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5459, 'TC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5460, 'C3100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5461, 'G70', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5462, 'SIERRA LIMITED', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5463, 'CBF300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5464, 'NC750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5465, 'SVARTPILEN 401', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5466, 'SANTA FE XL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5467, 'MV607', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5468, 'I-PACE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5469, 'EX400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5470, 'ZX1002', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5471, 'URUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5472, 'GRANITE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5473, 'LR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5474, 'PINNACLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5475, 'TERRAPRO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5476, 'ECLIPSE CROSS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5477, 'KICKS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5478, 'TRANSIT BUS 35FT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5479, 'TRANSIT BUS 40FT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5480, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5481, 'CLASSIC CRUISER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5482, 'TIGUAN LIMITED', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5483, 'VAH', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5484, 'XC40', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5485, 'MT07', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5486, 'MT09', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5487, 'MT10', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5488, 'MTT09', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5489, 'YZ65', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5490, 'YZFR1M', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5491, 'VANTAGE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5492, 'M850XI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5493, 'T-REX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5494, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5495, 'E6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5496, 'EBUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5497, 'ELECTRIC TRUCK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5498, 'MAVERICK SPORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5499, 'GTC 4 LUSSO T', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5500, 'PORTOFINO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5501, 'C-MAX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5502, 'FIGO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5503, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5504, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5505, 'TRANSIT BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5506, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5507, 'FXDRS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5508, 'C125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5509, 'Z125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5510, 'NEXO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5511, 'VELOSTER N', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5512, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5513, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5514, 'HV507', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5515, 'HV513', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5516, 'HV607', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5517, 'HV613', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5518, 'KAF700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5519, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5520, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5521, 'T680', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5522, 'NIRO EV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5523, 'X-TOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5524, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5525, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5526, 'UX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5527, 'NAUTILUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5528, 'STRADALE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5529, 'TURISMO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5530, 'E350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5531, 'A', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5532, 'ECANTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5533, '1500 CLASSIC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5534, 'HIMALAYAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5535, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5536, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5537, 'ASCENT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5538, 'DR-Z50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5539, 'CHAMP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5540, 'STAR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5541, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5543, 'MXT9', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5544, 'YXE850', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5545, 'DBX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5546, 'A6 ALLROAD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5547, 'E-TRON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5548, 'Q5 E', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5549, 'Q8', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5550, 'RS Q8', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5551, 'SQ7', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5552, 'SQ8', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5553, 'DC-64', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5554, '228XI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5555, '330I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5556, '330XE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5557, '330XI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5558, '340XI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5559, '745XE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5560, '840I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5561, '840XI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5562, 'C400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5563, 'F750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5564, 'F850', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5565, 'M340I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5566, 'M340XI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5567, 'M8', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5568, 'R1250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5569, 'X7', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5570, 'ENCORE GX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5571, 'CT4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5572, 'CT4-V', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5573, 'CT5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5574, 'CT5-V', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5575, 'CT6-V', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5576, 'XT6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5577, 'MAVERICK SPORT MAX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5578, 'RYKER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5579, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5580, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5581, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5582, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5583, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5584, 'V8100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5585, 'SILVERADO MEDIUM DUTY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5586, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5587, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5588, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5589, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5590, '488 PISTA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5591, '488 PISTA SPIDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5592, 'F8 TRIBUTO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5593, 'E250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5594, '122SD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5595, 'CORONADO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5596, 'ECONIC SD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5597, 'GV80', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5598, 'VENTURE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5599, 'ELW', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5600, 'FLFBSANV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5601, 'FLHTCUTGSE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5602, 'FLTRK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5603, 'FXLRS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5604, 'HINO 258', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5605, 'ADV150', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5606, 'CRF1100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5607, 'MRT300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5608, 'TRX520', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5609, 'SVARTPILEN 701', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5610, 'TE150I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5611, 'TE300I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5612, 'TX300I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5613, 'VITPILEN 401', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5614, 'VITPILEN 701', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5615, 'PALISADE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5616, 'VENUE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5617, 'TC COMMERCIAL BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5618, 'CHALLENGER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5619, 'FTR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5620, 'CV515', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5621, 'LF687', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5622, 'PB105', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5623, 'GLADIATOR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5624, 'T2E', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5625, 'EJ800', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5626, 'ER400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5627, 'KLX230', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5628, 'KLZ1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5629, 'KRF1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5630, 'SELTOS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5631, 'TELLURIDE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5632, 'THOR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5633, '790', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5634, 'CORSAIR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5635, 'LION C V1', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5636, 'LION C V2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5637, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5638, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5639, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5640, 'CX-30', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5641, '540C', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5642, '600LT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5643, 'GT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5644, 'SENNA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5645, 'SENNA GTR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5646, 'GLB 250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5647, 'M', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5648, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5649, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5650, 'PRO XD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5651, '1', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5652, '2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5653, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5654, 'TAYCAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5655, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5656, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5657, 'CULLINAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5658, 'GLIDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5659, 'MUNICIPAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5660, 'RIV FIRE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5661, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5662, 'INT 650', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5663, 'DL1050', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5664, 'GSX-S 1000SM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5665, 'MODEL Y', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5666, 'CLASS A', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5667, 'CLASS B', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5668, 'CLASS C', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5669, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5670, 'RAV4 PRIME', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5671, 'ROCKET 3', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5672, 'SPEED TWIN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5673, 'ARTEON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5674, 'ATLAS CROSS SPORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5675, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5676, 'VNL300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5677, 'VNL400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5678, 'VNL740', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5679, 'VNL760', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5680, 'VNL860', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5681, 'SV01', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5682, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5683, 'SR/F', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5684, 'SR/S', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5685, 'F900', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5686, 'M440XI', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5687, 'R18', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5688, '812 GTS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5689, 'F164 BCB', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5690, 'F8 SPIDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5691, 'ROMA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5692, 'SF 90 STRADALE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5693, 'MUSTANG MACH-E', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5694, 'CT125', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5695, 'EE5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5696, 'FS450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5697, 'K5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5698, '890', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5699, 'SX-E 5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5700, '620R', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5701, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5702, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5703, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5704, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5705, 'ALLEGRO BAY', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5706, 'ALLEGRO BUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5707, 'BREEZE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5708, 'PHAETON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5709, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5710, 'WAYFARER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5711, 'ZEPHYR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5712, 'MT03', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5713, 'XTZ700', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5714, 'USPS MAIL TRUCK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5715, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5716, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5717, 'E-TRON GT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5718, 'RS E-TRON GT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5719, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5720, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5721, 'ALPINA B8', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5722, 'M 1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5723, 'M440I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5724, 'BOLT EUV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5725, 'GRAND CARAVAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5726, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5727, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5728, 'BRONCO SPORT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5729, 'GV70', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5730, 'BRIO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5731, 'URBANO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5732, 'ELECTRIC', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5733, 'HIGH SIDE DUMP', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5734, 'HYBRID', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5735, 'MECHANICAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5736, 'RUNWAY SUCTION', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5737, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5738, 'FLH', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5739, 'FXBBS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5740, 'LW1', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5741, 'RA1250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5742, 'RH1250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5743, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5744, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5745, 'CMX1100', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5746, 'CRF300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5747, 'SXS520', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5748, 'IONIQ 5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5749, 'SANTA CRUZ', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5750, 'SUPER CHIEF', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5751, 'QX55', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5752, 'GS-6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5753, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5754, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5755, 'KAT620', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5756, 'KAT820', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5757, 'KDF1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5758, 'KDT1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5759, 'CARNIVAL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5760, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5761, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5762, 'AK', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5763, 'NOT APPLICABLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5764, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5765, 'AIR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5766, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5767, 'RIVALE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5768, 'MD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5769, 'MC20', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5770, 'MX-30', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5771, 'SPEEDTAIL', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5772, 'GLB', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5773, 'D4000/D4500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5774, 'R1T', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5775, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5776, 'BULLET 350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5777, 'CLASSIC 350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5778, 'METEOR 350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5779, 'TRIDENT 600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5780, 'TRIDENT 660', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5781, 'ID.4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5782, 'TAOS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5783, 'NEW 4900 CHASSIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5784, 'MXT850', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5785, 'YXE1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5786, 'YZFR7', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5787, '10 SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5788, '12 SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5789, '14 SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5790, '15 SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5791, '2 SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5792, '3 SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5793, '5 SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5794, '6 SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5795, 'ENVIRO 200', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5796, 'ENVIRO 400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5797, 'ENVIRO 500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5798, 'ENVIRO 500 SUPERFLO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5799, 'ENVIRO 500EV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5800, 'TONALE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5801, 'TUAREG', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5802, 'TUONO V4', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5803, 'ALTERRA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5804, 'PROWLER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5805, 'PROWLER PRO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5806, 'WILDCAT XX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5807, 'E-TRON S', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5808, 'Q4 E-TRON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5809, 'Q8 E-TRON', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5810, 'BATTISTA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5811, 'CE 04', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5812, 'F 750', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5813, 'F 850', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5814, 'F 900', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5815, 'I4 EDRIVE35', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5816, 'I4 EDRIVE40', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5817, 'I4 M50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5818, 'I7', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5819, 'IX', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5820, 'R 1250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5821, 'XM', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5822, 'EV600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5823, 'ZEVO 600', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5824, 'ESCALADE V', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5825, 'LYRIQ', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5826, 'P', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5827, '7500XD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5828, 'SILVERADO LTD', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5829, 'AG', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5830, 'CRUISE AV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5831, 'ELITE NAS1', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5832, 'HORNET', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5833, 'DESERT X', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5836, 'SOLO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5837, 'EGO', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5838, 'EVA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5839, 'EVA ESSEESSE9', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5840, 'EVA RIBELLE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5841, 'EXPERIA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5842, 'FIRE APPARATUS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5843, '296GTB', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5844, '812 COMPETIZIONE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5845, 'PORTOFINO M', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5846, 'SF 90 SPIDER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5847, 'OCEAN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5849, 'ECASCADIA 116', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5850, 'GV60', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5851, 'HUMMER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5852, 'EV250', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5853, 'EV350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5854, 'EVC210', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5855, 'EVS300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5857, 'FLHCSANV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5859, 'FLHTCUTGANV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5860, 'FLHTKANV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5861, 'FLHXSANV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5862, 'FLHXST', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5863, 'FLTRKSE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5864, 'FLTRT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5865, 'FLTRXSANV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5866, 'FLTRXSEANV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5867, 'FLTRXST', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5868, 'FLXRS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5869, 'FLXRST', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5870, 'FXRST', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5871, 'RH975', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5872, 'S41/S42', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5873, 'NVA110', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5878, 'XR150L', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5879, 'EE 5', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5880, 'FC 350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5881, 'FS 450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5882, 'FX 350', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5883, 'FX 450', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5884, 'NORDEN 901', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5885, 'SUPERMOTO 701', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5886, 'TC 50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5887, 'TE 150I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5888, 'TE 300I', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5889, 'TX 300', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5890, 'VITPILEN 401/SVARTPILEN 401', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5891, 'KONA N', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5892, 'PURSUIT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5894, 'MV60E', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5895, 'GAMA I6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5896, 'KRF 1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5897, 'KRT1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5898, 'KX112', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5900, 'ZX400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5901, 'EV6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5903, '144', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5905, 'LION 8', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5906, 'LION C V1', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5907, 'LION C V2', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5908, 'LION M', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5909, 'LION6', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5910, 'LW1', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5911, 'ENDURANCE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5912, 'DRAGSTER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5913, 'SUPERVELOCE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5914, 'GRECALE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5915, 'CX-50', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5916, 'CX-90', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5917, '765LT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5918, 'ARTURA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5919, 'ELVA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5920, 'EQB', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5921, 'EQE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5922, 'EQS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5923, 'V85 TT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5924, 'D4020/D4520', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5925, 'D40CRT/D45CRT', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5926, 'J3500/J4500', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5927, 'ARIYA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5929, 'Z', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5930, 'TERMINAL TRACTOR', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5931, '536', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5932, '537', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5933, '548', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5934, 'EDV', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5935, 'R1S', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5936, 'TRAIL-BREAKER', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5939, 'SOLTERRA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5940, 'DL800DE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5941, 'GSX1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5942, 'GSX800', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5943, 'LT-F400', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5944, 'D', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5945, 'BZ4X', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5946, 'COROLLA CROSS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5947, 'GR 86', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5948, 'GR COROLLA', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5949, 'VF 8', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5950, 'VF 9', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5952, 'C40', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5954, '47X CHASSIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5955, '49X CHASSIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5956, '57X CHASSIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5957, 'NEW 4700 CHASSIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5958, 'NEW 57X CHASSIS', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5959, 'SA01', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5960, 'MT-03', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5961, 'MTM690', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5962, 'MTM890', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5963, 'MTN1000', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5964, 'XTZ690', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5965, '13 SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5966, '7 SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5967, '8 SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5968, '9 SERIES', 'cris'); +insert into lookups.veh_mod (id, label, source) values (5969, 'FXE', 'cris'); +insert into lookups.veh_mod (id, label, source) values (9995, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (9996, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (9997, 'UNKNOWN', 'cris'); +insert into lookups.veh_mod (id, label, source) values (9998, 'OTHER (EXPLAIN IN NARRATIVE)', 'cris'); +insert into lookups.veh_direction_of_force (id, label) + select veh_direction_of_force_id, veh_direction_of_force_desc from atd_txdot__veh_direction_of_force_lkp; +insert into lookups.mode_category (id, label, source) + select id, atd_mode_category_mode_name, 'vz' from atd__mode_category_lkp where id != 10; +insert into lookups.city (id, label) values (9999, 'UNKNOWN'); +alter table lookups.injry_sev add constraint injry_sev_owner_check check ((id < 99 and source = 'cris') or (id >= 99 and source = 'vz')); +insert into lookups.injry_sev (id, label, source) values (99, 'KILLED (NON-ATD)', 'vz'); +alter table public.people_cris add constraint people_cris_prsn_injry_sev_id_check check (prsn_injry_sev_id < 99); + +alter table lookups.unit_desc add constraint unit_desc_owner_check check ((id < 177 and source = 'cris') or (id >= 177 and source = 'vz')); +insert into lookups.unit_desc (id, label, source) values (177, 'MICROMOBILITY DEVICE', 'vz'); +alter table public.units_cris add constraint units_cris_unit_desc_id_check check ((unit_desc_id < 177) or (created_by <> 'cris' and created_by <> 'system')); + +alter table lookups.veh_body_styl add constraint veh_body_styl_owner_check check ((id < 177 and source = 'cris') or (id >= 177 and source = 'vz')); +insert into lookups.veh_body_styl (id, label, source) values (177, 'E-SCOOTER', 'vz'); +alter table public.units_cris add constraint units_cris_veh_body_styl_id_check check (veh_body_styl_id < 177); + +insert into lookups.movt (select *, 'vz' as source from atd_txdot__movt_lkp); diff --git a/atd-vzd/migrations/default/1715960019005_alter_units_vz_mode_category/down.sql b/atd-vzd/migrations/default/1715960019005_alter_units_vz_mode_category/down.sql new file mode 100644 index 000000000..502ba4c10 --- /dev/null +++ b/atd-vzd/migrations/default/1715960019005_alter_units_vz_mode_category/down.sql @@ -0,0 +1,6 @@ +alter table units drop column vz_mode_category_id; + +alter table units add column vz_mode_category_id integer +references lookups.mode_category (id) +on update restrict on delete restrict; + diff --git a/atd-vzd/migrations/default/1715960019005_alter_units_vz_mode_category/up.sql b/atd-vzd/migrations/default/1715960019005_alter_units_vz_mode_category/up.sql new file mode 100644 index 000000000..927f8b38a --- /dev/null +++ b/atd-vzd/migrations/default/1715960019005_alter_units_vz_mode_category/up.sql @@ -0,0 +1,54 @@ +alter table units drop column vz_mode_category_id; + +alter table units +add column vz_mode_category_id integer not null constraint vz_mode_category_fk references lookups.mode_category ( + id +) on +update +restrict on delete restrict generated always as ( + case + when unit_desc_id = 3 + then + 5 + when unit_desc_id = 5 + then + 6 + when unit_desc_id = 4 + then + 7 + when unit_desc_id = 2 + then + 8 + when unit_desc_id = 177 + then + ( + case + when veh_body_styl_id = 177 + then + 11 + else + 6 + end + ) + when unit_desc_id = 1 + then + ( + case + when veh_body_styl_id in (100, 104) + then + 1 + when veh_body_styl_id in (30, 69, 103, 106) + then + 2 + when veh_body_styl_id in (71, 90) + then + 3 + else + 4 + end + ) + else + 9 + end +) stored; + diff --git a/atd-vzd/migrations/default/1715960020005_indexes/down.sql b/atd-vzd/migrations/default/1715960020005_indexes/down.sql new file mode 100644 index 000000000..ed4798a6d --- /dev/null +++ b/atd-vzd/migrations/default/1715960020005_indexes/down.sql @@ -0,0 +1 @@ +select 0; diff --git a/atd-vzd/migrations/default/1715960020005_indexes/up.sql b/atd-vzd/migrations/default/1715960020005_indexes/up.sql new file mode 100644 index 000000000..8f865b912 --- /dev/null +++ b/atd-vzd/migrations/default/1715960020005_indexes/up.sql @@ -0,0 +1,19 @@ +create index on public.people_cris (unit_id); +create index on public.people_cris (prsn_injry_sev_id); +create index on public.people_cris (cris_crash_id); +create index on public.people_cris (cris_crash_id, unit_nbr, prsn_nbr); -- charges -> person trigger +create index on public.units_cris (cris_crash_id, unit_nbr); -- people -> unit_id trigger +create index on public.units (crash_pk); +create index on public.people (unit_id); +create index on public.people (prsn_injry_sev_id); +create index on public.crashes (location_id); +create index on public.crashes (cris_crash_id); +create index on public.crashes (crash_timestamp); +create index on public.crashes (record_locator); +create index on public.crashes (private_dr_fl); +create index on public.crashes (in_austin_full_purpose); +create index on public.crashes (is_deleted); +create index on public.crashes (address_primary); +create index on public.crashes (position); +create index on public.atd_txdot_locations (council_district); + diff --git a/atd-vzd/migrations/default/1715960021005_crashes_list_and_fatality_metrics_views/down.sql b/atd-vzd/migrations/default/1715960021005_crashes_list_and_fatality_metrics_views/down.sql new file mode 100644 index 000000000..5ee51cd1b --- /dev/null +++ b/atd-vzd/migrations/default/1715960021005_crashes_list_and_fatality_metrics_views/down.sql @@ -0,0 +1 @@ +drop view public.person_injury_metrics_view cascade; diff --git a/atd-vzd/migrations/default/1715960021005_crashes_list_and_fatality_metrics_views/up.sql b/atd-vzd/migrations/default/1715960021005_crashes_list_and_fatality_metrics_views/up.sql new file mode 100644 index 000000000..8498993c8 --- /dev/null +++ b/atd-vzd/migrations/default/1715960021005_crashes_list_and_fatality_metrics_views/up.sql @@ -0,0 +1,610 @@ +drop view if exists person_injury_metrics_view cascade; + +create or replace view person_injury_metrics_view as ( + select + people.id, + units.id as unit_id, + crashes.id as crash_pk, + crashes.cris_crash_id, + people.years_of_life_lost, + people.est_comp_cost_crash_based, + case + when (people.prsn_injry_sev_id = 0) then 1 + else 0 + end as unkn_injry, + case + when (people.prsn_injry_sev_id = 1) then 1 + else 0 + end as sus_serious_injry, + case + when (people.prsn_injry_sev_id = 2) then 1 + else 0 + end as nonincap_injry, + case + when (people.prsn_injry_sev_id = 3) then 1 + else 0 + end as poss_injry, + case + when + (people.prsn_injry_sev_id = 4 or people.prsn_injry_sev_id = 99) + then 1 + else 0 + end as fatal_injury, + case + when + ( + people.prsn_injry_sev_id = 4 + ) + then 1 + else 0 + end as vz_fatal_injury, + case + when + ( + ( + people.prsn_injry_sev_id = 4 + or people.prsn_injry_sev_id = 99 + ) + and crashes.law_enforcement_ytd_fatality_num is not null + ) + then 1 + else 0 + end as law_enf_fatal_injury, + case + when (people_cris.prsn_injry_sev_id = 4) then 1 + else 0 + end as cris_fatal_injury, + case + when (people.prsn_injry_sev_id = 5) then 1 + else 0 + end as non_injry, + case + when + ( + people.prsn_injry_sev_id = 4 + and units.vz_mode_category_id in (1, 2, 4) + ) + then 1 + else 0 + end as motor_vehicle_fatal_injry, + case + when + ( + people.prsn_injry_sev_id = 1 + and units.vz_mode_category_id in (1, 2, 4) + ) + then 1 + else 0 + end as motor_vehicle_sus_serious_injry, + case + when + ( + people.prsn_injry_sev_id = 4 + and units.vz_mode_category_id = 3 + ) + then 1 + else 0 + end as motorcycle_fatal_injry, + case + when + ( + people.prsn_injry_sev_id = 1 + and units.vz_mode_category_id = 3 + ) + then 1 + else 0 + end as motorycle_sus_serious_injry, + case + when + ( + people.prsn_injry_sev_id = 4 + and units.vz_mode_category_id = 5 + ) + then 1 + else 0 + end as bicycle_fatal_injry, + case + when + ( + people.prsn_injry_sev_id = 1 + and units.vz_mode_category_id = 5 + ) + then 1 + else 0 + end as bicycle_sus_serious_injry, + case + when + ( + people.prsn_injry_sev_id = 4 + and units.vz_mode_category_id = 7 + ) + then 1 + else 0 + end as pedestrian_fatal_injry, + case + when + ( + people.prsn_injry_sev_id = 1 + and units.vz_mode_category_id = 7 + ) + then 1 + else 0 + end as pedestrian_sus_serious_injry, + case + when + ( + people.prsn_injry_sev_id = 4 + and units.vz_mode_category_id = 11 + ) + then 1 + else 0 + end as micromobility_fatal_injry, + case + when + ( + people.prsn_injry_sev_id = 1 + and units.vz_mode_category_id = 11 + ) + then 1 + else 0 + end as micromobility_sus_serious_injry, + case + when + ( + people.prsn_injry_sev_id = 4 + and units.vz_mode_category_id in (6, 8, 9) + ) + then 1 + else 0 + end as other_fatal_injry, + case + when + ( + people.prsn_injry_sev_id = 1 + and units.vz_mode_category_id in (6, 8, 9) + ) + then 1 + else 0 + end as other_sus_serious_injry + from + public.people as people + left join public.units as units on people.unit_id = units.id + left join public.people_cris as people_cris on people.id = people_cris.id + left join + public.crashes as crashes + on units.crash_pk = crashes.id + where people.is_deleted = false +); + +create or replace view unit_injury_metrics_view as +( + select + units.id, + units.crash_pk, + coalesce( + sum(person_injury_metrics_view.unkn_injry), 0 + ) as unkn_injry_count, + coalesce(sum( + person_injury_metrics_view.nonincap_injry + ), 0) as nonincap_injry_count, + coalesce( + sum(person_injury_metrics_view.poss_injry), 0 + ) as poss_injry_count, + coalesce( + sum(person_injury_metrics_view.non_injry), 0 + ) as non_injry_count, + coalesce( + sum(person_injury_metrics_view.sus_serious_injry), 0 + ) as sus_serious_injry_count, + coalesce( + sum(person_injury_metrics_view.fatal_injury), 0 + ) as fatality_count, + coalesce( + sum(person_injury_metrics_view.vz_fatal_injury), 0 + ) as vz_fatality_count, + coalesce(sum( + person_injury_metrics_view.law_enf_fatal_injury + ), 0) as law_enf_fatality_count, + coalesce( + sum(person_injury_metrics_view.cris_fatal_injury), 0 + ) as cris_fatality_count, + coalesce( + sum(person_injury_metrics_view.years_of_life_lost), 0 + ) as years_of_life_lost + from + public.units + left join + person_injury_metrics_view + on units.id = person_injury_metrics_view.unit_id + where units.is_deleted = false + group by + units.id +); + +create or replace view crash_injury_metrics_view as +( + select + crashes.id, + crashes.cris_crash_id, + coalesce( + sum(person_injury_metrics_view.unkn_injry), 0 + ) as unkn_injry_count, + coalesce(sum( + person_injury_metrics_view.nonincap_injry + ), 0) as nonincap_injry_count, + coalesce( + sum(person_injury_metrics_view.poss_injry), 0 + ) as poss_injry_count, + coalesce( + sum(person_injury_metrics_view.non_injry), 0 + ) as non_injry_count, + coalesce( + sum(person_injury_metrics_view.sus_serious_injry), 0 + ) as sus_serious_injry_count, + coalesce( + sum(person_injury_metrics_view.nonincap_injry), 0 + ) + + coalesce( + sum(person_injury_metrics_view.poss_injry), 0 + ) + + coalesce( + sum(person_injury_metrics_view.sus_serious_injry), 0 + ) + as tot_injry_count, + coalesce( + sum(person_injury_metrics_view.fatal_injury), 0 + ) as fatality_count, + coalesce( + sum(person_injury_metrics_view.vz_fatal_injury), 0 + ) as vz_fatality_count, + coalesce(sum( + person_injury_metrics_view.law_enf_fatal_injury + ), 0) as law_enf_fatality_count, + coalesce( + sum(person_injury_metrics_view.cris_fatal_injury), 0 + ) as cris_fatality_count, + coalesce(sum( + person_injury_metrics_view.motor_vehicle_fatal_injry + ), 0) as motor_vehicle_fatality_count, + coalesce(sum( + person_injury_metrics_view.motor_vehicle_sus_serious_injry + ), 0) as motor_vehicle_sus_serious_injry_count, + coalesce(sum( + person_injury_metrics_view.motorcycle_fatal_injry + ), 0) as motorcycle_fatality_count, + coalesce(sum( + person_injury_metrics_view.motorycle_sus_serious_injry + ), 0) as motorcycle_sus_serious_count, + coalesce(sum( + person_injury_metrics_view.bicycle_fatal_injry + ), 0) as bicycle_fatality_count, + coalesce(sum( + person_injury_metrics_view.bicycle_sus_serious_injry + ), 0) as bicycle_sus_serious_injry_count, + coalesce(sum( + person_injury_metrics_view.pedestrian_fatal_injry + ), 0) as pedestrian_fatality_count, + coalesce(sum( + person_injury_metrics_view.pedestrian_sus_serious_injry + ), 0) as pedestrian_sus_serious_injry_count, + coalesce(sum( + person_injury_metrics_view.micromobility_fatal_injry + ), 0) as micromobility_fatality_count, + coalesce(sum( + person_injury_metrics_view.micromobility_sus_serious_injry + ), 0) as micromobility_sus_serious_injry_count, + coalesce(sum( + person_injury_metrics_view.other_fatal_injry + ), 0) as other_fatality_count, + coalesce(sum( + person_injury_metrics_view.other_sus_serious_injry + ), 0) as other_sus_serious_injry_count, + case + when (sum(person_injury_metrics_view.fatal_injury) > 0) then 4 + when (sum(person_injury_metrics_view.sus_serious_injry) > 0) then 1 + when (sum(person_injury_metrics_view.nonincap_injry) > 0) then 2 + when (sum(person_injury_metrics_view.poss_injry) > 0) then 3 + when (sum(person_injury_metrics_view.unkn_injry) > 0) then 0 + when (sum(person_injury_metrics_view.non_injry) > 0) then 5 + else 0 + end as crash_injry_sev_id, + coalesce( + sum(person_injury_metrics_view.years_of_life_lost), 0 + ) as years_of_life_lost, + -- default cr3 crash comp cost is 20k + coalesce( + max(est_comp_cost_crash_based), 20000 + ) as est_comp_cost_crash_based, + -- default cr3 crash comp cost is 20k + coalesce( + sum(est_comp_cost_crash_based), 20000 + ) as est_total_person_comp_cost + from + public.crashes as crashes + left join + person_injury_metrics_view + on crashes.id = person_injury_metrics_view.crash_pk + where crashes.is_deleted = false + group by + crashes.id, + crashes.cris_crash_id +); + + +create or replace view crashes_list_view as with geocode_status as ( + select + cris.id, + edits.latitude is not null and edits.longitude is not null + as is_manual_geocode + from public.crashes_cris as cris + left join public.crashes_edits as edits on cris.id = edits.id +) + +select + public.crashes.id, + public.crashes.cris_crash_id, + public.crashes.record_locator, + public.crashes.case_id, + public.crashes.crash_timestamp, + public.crashes.address_primary, + public.crashes.address_secondary, + public.crashes.private_dr_fl, + public.crashes.in_austin_full_purpose, + public.crashes.location_id, + public.crashes.rpt_block_num, + public.crashes.rpt_street_pfx, + public.crashes.rpt_street_sfx, + public.crashes.rpt_street_name, + public.crashes.rpt_sec_block_num, + public.crashes.rpt_sec_street_pfx, + public.crashes.rpt_sec_street_sfx, + public.crashes.rpt_sec_street_name, + public.crashes.latitude, + public.crashes.longitude, + public.crashes.light_cond_id, + public.crashes.wthr_cond_id, + public.crashes.active_school_zone_fl, + public.crashes.schl_bus_fl, + public.crashes.at_intrsct_fl, + public.crashes.onsys_fl, + public.crashes.traffic_cntl_id, + public.crashes.road_constr_zone_fl, + public.crashes.rr_relat_fl, + public.crashes.toll_road_fl, + public.crashes.intrsct_relat_id, + public.crashes.obj_struck_id, + public.crashes.crash_speed_limit, + public.crashes.council_district, + public.crashes.is_temp_record, + crash_injury_metrics_view.nonincap_injry_count, + crash_injury_metrics_view.poss_injry_count, + crash_injury_metrics_view.sus_serious_injry_count, + crash_injury_metrics_view.non_injry_count, + crash_injury_metrics_view.tot_injry_count, + crash_injury_metrics_view.vz_fatality_count, + crash_injury_metrics_view.cris_fatality_count, + crash_injury_metrics_view.law_enf_fatality_count, + crash_injury_metrics_view.fatality_count, + crash_injury_metrics_view.unkn_injry_count, + crash_injury_metrics_view.est_comp_cost_crash_based, + crash_injury_metrics_view.crash_injry_sev_id, + crash_injury_metrics_view.years_of_life_lost, + lookups.injry_sev.label as crash_injry_sev_desc, + lookups.collsn.label as collsn_desc, + geocode_status.is_manual_geocode, + to_char( + public.crashes.crash_timestamp at time zone 'US/Central', 'YYYY-MM-DD' + ) as crash_date_ct, + to_char( + public.crashes.crash_timestamp at time zone 'US/Central', 'HH24:MI:SS' + ) as crash_time_ct, + upper( + to_char( + public.crashes.crash_timestamp at time zone 'US/Central', 'dy' + ) + ) as crash_day_of_week +from + public.crashes +left join lateral ( + select * + from + public.crash_injury_metrics_view + where + crashes.id = id + limit 1 +) as crash_injury_metrics_view on true +left join + geocode_status + on public.crashes.id = geocode_status.id +left join + lookups.collsn + on public.crashes.fhe_collsn_id = lookups.collsn.id +left join + lookups.injry_sev + on lookups.injry_sev.id = crash_injury_metrics_view.crash_injry_sev_id +where crashes.is_deleted = false +order by crash_timestamp desc; + + +drop view if exists locations_list_view; +create view locations_list_view as +with cr3_comp_costs as ( + select + location_id, + sum(est_comp_cost_crash_based) as cr3_comp_costs_total + from crashes_list_view group by location_id +), + +cr3_crash_counts as ( + select + location_id, + count(location_id) as crash_count + from + crashes + where + crashes.private_dr_fl = false + and crashes.location_id is not null + and crashes.crash_timestamp > (now() - '5 years'::interval) + group by + location_id +), + +non_cr3_crash_counts as ( + select + location_id, + count(location_id) as crash_count, + count(location_id) * 10000 as noncr3_comp_costs_total + from + atd_apd_blueform + where + atd_apd_blueform.location_id is not null + and atd_apd_blueform.date > (now() - '5 years'::interval) + group by + location_id +) + +select + locations.location_id, + locations.description, + coalesce(cr3_comp_costs.cr3_comp_costs_total + non_cr3_crash_counts.noncr3_comp_costs_total, 0) as total_est_comp_cost, + coalesce(cr3_crash_counts.crash_count, 0) as cr3_crash_count, + coalesce(non_cr3_crash_counts.crash_count, 0) as non_cr3_crash_count, + coalesce(cr3_crash_counts.crash_count, 0) + + coalesce(non_cr3_crash_counts.crash_count, 0) as crash_count +from + atd_txdot_locations as locations +left join + cr3_crash_counts + on locations.location_id = cr3_crash_counts.location_id +left join + non_cr3_crash_counts + on locations.location_id = non_cr3_crash_counts.location_id +left join cr3_comp_costs on locations.location_id = cr3_comp_costs.location_id +where + locations.council_district > 0 + and locations.location_group = 1; + +create or replace view location_crashes_view as ( + + select + public.crashes.cris_crash_id, + 'CR3'::text as type, + public.crashes.location_id, + public.crashes.case_id, + to_char( + public.crashes.crash_timestamp at time zone 'US/Central', + 'YYYY-MM-DD' + ) as crash_date, + to_char( + public.crashes.crash_timestamp at time zone 'US/Central', + 'HH24:MI:SS' + ) as crash_time, + upper( + to_char( + public.crashes.crash_timestamp at time zone 'US/Central', 'dy' + ) + ) as day_of_week, + crash_injury_metrics_view.crash_injry_sev_id as crash_sev_id, + public.crashes.latitude, + public.crashes.longitude, + public.crashes.address_primary, + public.crashes.address_secondary, + crash_injury_metrics_view.non_injry_count, + crash_injury_metrics_view.nonincap_injry_count, + crash_injury_metrics_view.poss_injry_count, + crash_injury_metrics_view.sus_serious_injry_count, + crash_injury_metrics_view.tot_injry_count, + crash_injury_metrics_view.unkn_injry_count, + crash_injury_metrics_view.vz_fatality_count, + crash_injury_metrics_view.est_comp_cost_crash_based, + lookups.collsn.label as collsn_desc, + crash_units.movement_desc, + crash_units.travel_direction, + crash_units.veh_body_styl_desc, + crash_units.veh_unit_desc + from + public.crashes + left join lateral + ( + select + units.crash_pk, + string_agg(movt.label::text, ',') as movement_desc, + string_agg(trvl_dir.label::text, ',') as travel_direction, + string_agg( + veh_body_styl.label::text, ',' + ) as veh_body_styl_desc, + string_agg(unit_desc.label::text, ',') as veh_unit_desc + from units + left join + lookups.movt as movt + on units.movement_id = movt.id + left join + lookups.trvl_dir as trvl_dir + on units.veh_trvl_dir_id = trvl_dir.id + left join + lookups.veh_body_styl as veh_body_styl + on units.veh_body_styl_id = veh_body_styl.id + left join + lookups.unit_desc as unit_desc + on units.unit_desc_id = unit_desc.id + where crashes.id = units.crash_pk + group by units.crash_pk + ) as crash_units + on true + left join lateral ( + select * + from + public.crash_injury_metrics_view + where + crashes.id = id + limit 1 + ) as crash_injury_metrics_view on true + left join + lookups.collsn + on public.crashes.fhe_collsn_id = lookups.collsn.id + where + crashes.is_deleted = false + and crashes.crash_timestamp >= (now() - '5 years'::interval)::date + union all + select + aab.form_id as cris_crash_id, + 'NON-CR3'::text as record_type, + aab.location_id, + aab.case_id::text as case_id, + aab.date::text as crash_date, + concat(aab.hour, ':00:00') as crash_time, + ( + select + case date_part('dow'::text, aab.date) + when 0 then 'SUN'::text + when 1 then 'MON'::text + when 2 then 'TUE'::text + when 3 then 'WED'::text + when 4 then 'THU'::text + when 5 then 'FRI'::text + when 6 then 'SAT'::text + else 'Unknown'::text + end as "case" + ) as day_of_week, + 0 as crash_sev_id, + aab.latitude as latitude, + aab.longitude as longitude, + aab.address as address_primary, + ''::text as address_secondary, + 0 as non_injry_count, + 0 as nonincap_injry_count, + 0 as poss_injry_count, + 0 as sus_serious_injry_count, + 0 as tot_injry_count, + 0 as unkn_injry_count, + 0 as vz_fatality_count, + aab.est_comp_cost_crash_based as est_comp_cost, + ''::text as collsn_desc, + ''::text as travel_direction, + ''::text as movement_desc, + ''::text as veh_body_styl_desc, + ''::text as veh_unit_desc + from atd_apd_blueform as aab + where aab.date >= (now() - '5 years'::interval)::date +); + diff --git a/atd-vzd/migrations/default/1715960022005_people_list_view/down.sql b/atd-vzd/migrations/default/1715960022005_people_list_view/down.sql new file mode 100644 index 000000000..c5eb5dfe4 --- /dev/null +++ b/atd-vzd/migrations/default/1715960022005_people_list_view/down.sql @@ -0,0 +1 @@ +drop view public.people_list_view cascade; diff --git a/atd-vzd/migrations/default/1715960022005_people_list_view/up.sql b/atd-vzd/migrations/default/1715960022005_people_list_view/up.sql new file mode 100644 index 000000000..129220150 --- /dev/null +++ b/atd-vzd/migrations/default/1715960022005_people_list_view/up.sql @@ -0,0 +1,26 @@ +drop view if exists people_list_view cascade; + +create or replace view people_list_view as ( + select + people.*, + crashes.id as crash_pk, + crashes.cris_crash_id, + crashes.crash_timestamp, + injry_sev.label as prsn_injry_sev_desc, + units.unit_nbr, + units.unit_desc_id, + mode_category.label as mode_desc + from public.people + left join public.units as units on people.unit_id = units.id + left join public.people_cris as people_cris on people.id = people_cris.id + left join + public.crashes as crashes + on units.crash_pk = crashes.id + left join + lookups.injry_sev + on lookups.injry_sev.id = people.prsn_injry_sev_id + left join + lookups.mode_category + on units.vz_mode_category_id = lookups.mode_category.id +); + diff --git a/atd-vzd/migrations/default/1715960023005_change_log_view/down.sql b/atd-vzd/migrations/default/1715960023005_change_log_view/down.sql new file mode 100644 index 000000000..4ce24c932 --- /dev/null +++ b/atd-vzd/migrations/default/1715960023005_change_log_view/down.sql @@ -0,0 +1 @@ +drop view if exists public.crashes_change_log_view cascade; diff --git a/atd-vzd/migrations/default/1715960023005_change_log_view/up.sql b/atd-vzd/migrations/default/1715960023005_change_log_view/up.sql new file mode 100644 index 000000000..462f172a2 --- /dev/null +++ b/atd-vzd/migrations/default/1715960023005_change_log_view/up.sql @@ -0,0 +1,53 @@ +drop view if exists crashes_change_log_view cascade; + +create view crashes_change_log_view as ( + select + concat('crash_', change_log_crashes.id) as id, + 'crash' as record_type, + record_id as crash_pk, + record_id, + case + when (operation_type = 'INSERT') then 'create' else + lower(operation_type) + end as operation_type, + record_json, + change_log_crashes.created_at, + change_log_crashes.created_by + from + change_log_crashes + union all + select + concat('unit_', change_log_units.id) as id, + 'unit' as record_type, + units.crash_pk, + record_id, + case + when (operation_type = 'INSERT') then 'create' else + lower(operation_type) + end as operation_type, + record_json, + change_log_units.created_at, + change_log_units.created_by + from + change_log_units + left join units on change_log_units.record_id = units.id + union all + select + concat('people_', change_log_people.id) as id, + 'person' as record_type, + crashes.id as crash_pk, + record_id, + case + when (operation_type = 'INSERT') then 'create' else + lower(operation_type) + end as operation_type, + record_json, + change_log_people.created_at, + change_log_people.created_by + from + change_log_people + left join people on change_log_people.record_id = people.id + left join units on people.unit_id = units.id + left join crashes on units.crash_pk = crashes.id +); + diff --git a/atd-vzd/migrations/default/1715960024005_socrata_export_views/down.sql b/atd-vzd/migrations/default/1715960024005_socrata_export_views/down.sql new file mode 100644 index 000000000..1b1e4010e --- /dev/null +++ b/atd-vzd/migrations/default/1715960024005_socrata_export_views/down.sql @@ -0,0 +1 @@ +drop view if exists public.socrata_export_crashes_view cascade; drop view if exists public.socrata_export_people_view cascade diff --git a/atd-vzd/migrations/default/1715960024005_socrata_export_views/up.sql b/atd-vzd/migrations/default/1715960024005_socrata_export_views/up.sql new file mode 100644 index 000000000..d0234181c --- /dev/null +++ b/atd-vzd/migrations/default/1715960024005_socrata_export_views/up.sql @@ -0,0 +1,141 @@ +create or replace view socrata_export_crashes_view as with +unit_aggregates as ( + select + crashes.id as id, + string_agg(distinct mode_categories.label, ' & ') as units_involved + from crashes + left join units + on crashes.id = units.crash_pk + left join + lookups.mode_category as mode_categories + on units.vz_mode_category_id = mode_categories.id + group by crashes.id +) + +select + crashes.id, + crashes.cris_crash_id, + crashes.case_id, + crashes.address_primary, + crashes.address_secondary, + crashes.is_deleted, + crashes.latitude, + crashes.longitude, + crashes.rpt_block_num, + crashes.rpt_street_name, + crashes.rpt_street_sfx, + crashes.crash_speed_limit, + crashes.road_constr_zone_fl, + crashes.is_temp_record, + cimv.crash_injry_sev_id as crash_sev_id, + cimv.sus_serious_injry_count as sus_serious_injry_cnt, + cimv.nonincap_injry_count as nonincap_injry_cnt, + cimv.poss_injry_count as poss_injry_cnt, + cimv.non_injry_count as non_injry_cnt, + cimv.unkn_injry_count as unkn_injry_cnt, + cimv.tot_injry_count as tot_injry_cnt, + cimv.law_enf_fatality_count, + cimv.vz_fatality_count as death_cnt, + crashes.onsys_fl, + crashes.private_dr_fl, + unit_aggregates.units_involved, + cimv.motor_vehicle_fatality_count as motor_vehicle_death_count, + cimv.motor_vehicle_sus_serious_injry_count as motor_vehicle_serious_injury_count, + cimv.bicycle_fatality_count as bicycle_death_count, + cimv.bicycle_sus_serious_injry_count as bicycle_serious_injury_count, + cimv.pedestrian_fatality_count as pedestrian_death_count, + cimv.pedestrian_sus_serious_injry_count as pedestrian_serious_injury_count, + cimv.motorcycle_fatality_count as motorcycle_death_count, + cimv.motorcycle_sus_serious_count as motorcycle_serious_injury_count, + cimv.micromobility_fatality_count as micromobility_death_count, + cimv.micromobility_sus_serious_injry_count as micromobility_serious_injury_count, + cimv.other_fatality_count as other_death_count, + cimv.other_sus_serious_injry_count as other_serious_injury_count, + cimv.years_of_life_lost, + to_char( + crashes.crash_timestamp, 'YYYY-MM-DD"T"HH24:MI:SS' + ) as crash_timestamp, + to_char( + crashes.crash_timestamp at time zone 'US/Central', + 'YYYY-MM-DD"T"HH24:MI:SS' + ) as crash_timestamp_ct, + case + when + crashes.latitude is not null and crashes.longitude is not null + then + 'POINT (' + || crashes.longitude::text + || ' ' + || crashes.latitude::text + || ')' + end as point, + coalesce(cimv.crash_injry_sev_id = 4, false) as crash_fatal_fl +from crashes +left join lateral ( + select * + from + public.crash_injury_metrics_view + where + crashes.id = id + limit 1 +) as cimv on true +left join lateral ( + select * + from + unit_aggregates + where + crashes.id = unit_aggregates.id + limit 1 +) as unit_aggregates on true +where + crashes.is_deleted = false + and crashes.in_austin_full_purpose = true + and crashes.private_dr_fl = false + and crashes.crash_timestamp < now() - interval '14 days' order by id asc; + + +create or replace view socrata_export_people_view as ( + select + people.id as id, + people.unit_id as unit_id, + crashes.id as crash_pk, + crashes.cris_crash_id, + crashes.is_temp_record, + people.is_deleted, + people.is_primary_person, + people.prsn_age, + people.prsn_gndr_id as prsn_sex_id, + lookups.gndr.label as prsn_sex_label, + people.prsn_ethnicity_id, + lookups.drvr_ethncty.label as prsn_ethnicity_label, + people.prsn_injry_sev_id, + units.vz_mode_category_id as mode_id, + mode_categories.label as mode_desc, + to_char( + crashes.crash_timestamp, 'YYYY-MM-DD"T"HH24:MI:SS' + ) as crash_timestamp, + to_char( + crashes.crash_timestamp at time zone 'US/Central', + 'YYYY-MM-DD"T"HH24:MI:SS' + ) as crash_timestamp_ct + from people + left join public.units as units on people.unit_id = units.id + left join public.crashes as crashes on units.crash_pk = crashes.id + left join + lookups.mode_category as mode_categories + on units.vz_mode_category_id = mode_categories.id + left join + lookups.drvr_ethncty + on people.prsn_ethnicity_id = lookups.drvr_ethncty.id + left join + lookups.gndr + on people.prsn_gndr_id = lookups.gndr.id + where + people.is_deleted = false + and crashes.in_austin_full_purpose = true + and crashes.private_dr_fl = false + and crashes.is_deleted = false + and crashes.crash_timestamp < now() - interval '14 days' + and (people.prsn_injry_sev_id = 1 or people.prsn_injry_sev_id = 4) +); + diff --git a/atd-vzd/migrations/default/1715960025005_column_metadata_table/down.sql b/atd-vzd/migrations/default/1715960025005_column_metadata_table/down.sql new file mode 100644 index 000000000..25b138e8c --- /dev/null +++ b/atd-vzd/migrations/default/1715960025005_column_metadata_table/down.sql @@ -0,0 +1 @@ +drop table if exists public._column_metadata cascade; diff --git a/atd-vzd/migrations/default/1715960025005_column_metadata_table/up.sql b/atd-vzd/migrations/default/1715960025005_column_metadata_table/up.sql new file mode 100644 index 000000000..48b0ee77d --- /dev/null +++ b/atd-vzd/migrations/default/1715960025005_column_metadata_table/up.sql @@ -0,0 +1,332 @@ +create table _column_metadata ( + id serial primary key, + column_name text not null, + record_type text not null, + is_imported_from_cris boolean not null default false, + UNIQUE (column_name, record_type) +); + +comment on table _column_metadata is 'Table which tracks column metadata for crashes, units, people, and charges records. Is the used by CRIS import to determine which fields will be processed/upserted.'; +comment on column _column_metadata.column_name is 'The name of the column in the db'; +comment on column _column_metadata.record_type is 'The type of record tables associated with this colum: crashes/units/people/charges'; +comment on column _column_metadata.is_imported_from_cris is 'If this column is populated via the CRIS import ETL'; + + +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('id', 'charges', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('crash_pk', 'charges', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('cris_crash_id', 'charges', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('created_at', 'crashes', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('updated_at', 'crashes', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('created_by', 'crashes', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('updated_by', 'crashes', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('created_at', 'units', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('updated_at', 'units', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('created_by', 'units', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('updated_by', 'units', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('created_at', 'people', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('updated_at', 'people', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('created_by', 'people', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('updated_by', 'people', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('created_at', 'charges', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('created_by', 'charges', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('is_deleted', 'crashes', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('is_deleted', 'units', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('is_deleted', 'people', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('is_temp_record', 'crashes', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('person_id', 'charges', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('prsn_nbr', 'charges', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('cris_schema_version', 'charges', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('unit_nbr', 'charges', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('charge', 'charges', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('citation_nbr', 'charges', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('id', 'crashes', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('cris_crash_id', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('cris_schema_version', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('rpt_city_id', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('fhe_collsn_id', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('intrsct_relat_id', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('investigat_agency_id', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('light_cond_id', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('address_primary', 'crashes', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('address_secondary', 'crashes', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('years_of_life_lost', 'people', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('est_comp_cost_crash_based', 'people', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('obj_struck_id', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('rpt_cris_cnty_id', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('rpt_rdwy_sys_id', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('rpt_road_part_id', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('rpt_sec_rdwy_sys_id', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('rpt_sec_road_part_id', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('surf_cond_id', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('surf_type_id', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('traffic_cntl_id', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('wthr_cond_id', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('crash_timestamp', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('rpt_sec_street_pfx', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('rpt_sec_street_sfx', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('rpt_street_pfx', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('rpt_street_sfx', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('rpt_ref_mark_nbr', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('rpt_ref_mark_dir', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('rpt_ref_mark_dist_uom', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('active_school_zone_fl', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('at_intrsct_fl', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('engineering_area', 'crashes', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('location_id', 'crashes', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('case_id', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('crash_speed_limit', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('law_enforcement_ytd_fatality_num', 'crashes', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('cr3_processed_at', 'crashes', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('cr3_stored_fl', 'crashes', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('investigator_narrative', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('latitude', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('longitude', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('medical_advisory_fl', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('onsys_fl', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('council_district', 'crashes', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('in_austin_full_purpose', 'crashes', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('private_dr_fl', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('position', 'crashes', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('road_constr_zone_fl', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('road_constr_zone_wrkr_fl', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('rpt_block_num', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('rpt_hwy_num', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('rpt_hwy_sfx', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('rpt_ref_mark_offset_amt', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('rpt_sec_block_num', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('rpt_sec_hwy_num', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('rpt_sec_hwy_sfx', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('rpt_sec_street_desc', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('rpt_sec_street_name', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('rpt_street_desc', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('rpt_street_name', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('rr_relat_fl', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('schl_bus_fl', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('thousand_damage_fl', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('toll_road_fl', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('txdot_rptable_fl', 'crashes', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('record_locator', 'crashes', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('id', 'people', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('prsn_exp_homelessness', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('cris_schema_version', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('unit_id', 'people', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('cris_crash_id', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('drvr_city_name', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('drvr_drg_cat_1_id', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('drvr_zip', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('is_primary_person', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('prsn_age', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('prsn_alc_rslt_id', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('prsn_alc_spec_type_id', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('prsn_bac_test_rslt', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('prsn_death_timestamp', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('prsn_drg_rslt_id', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('prsn_drg_spec_type_id', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('prsn_ethnicity_id', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('prsn_first_name', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('prsn_gndr_id', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('ems_id', 'people', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('prsn_helmet_id', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('prsn_injry_sev_id', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('prsn_last_name', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('prsn_mid_name', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('prsn_name_sfx', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('prsn_nbr', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('prsn_occpnt_pos_id', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('prsn_rest_id', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('prsn_taken_by', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('prsn_taken_to', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('prsn_type_id', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('unit_nbr', 'people', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('id', 'units', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('cris_schema_version', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('crash_pk', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('cris_crash_id', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('vz_mode_category_id', 'units', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('movement_id', 'units', false); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('veh_body_styl_id', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('unit_desc_id', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('veh_trvl_dir_id', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('contrib_factr_1_id', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('contrib_factr_2_id', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('contrib_factr_3_id', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('veh_damage_direction_of_force1_id', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('autonomous_unit_id', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('contrib_factr_p1_id', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('contrib_factr_p2_id', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('e_scooter_id', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('first_harm_evt_inv_id', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('pbcat_pedalcyclist_id', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('pbcat_pedestrian_id', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('pedalcyclist_action_id', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('pedestrian_action_id', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('rpt_autonomous_level_engaged_id', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('veh_damage_description1_id', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('veh_damage_description2_id', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('veh_damage_direction_of_force2_id', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('veh_damage_severity1_id', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('veh_damage_severity2_id', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('veh_make_id', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('veh_mod_id', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('unit_nbr', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('veh_mod_year', 'units', true); +insert into _column_metadata (column_name, record_type, is_imported_from_cris) + values ('vin', 'units', true) diff --git a/atd-vzd/migrations/default/1715960026005_update_recommendations_and_notes_fks/down.sql b/atd-vzd/migrations/default/1715960026005_update_recommendations_and_notes_fks/down.sql new file mode 100644 index 000000000..ee1cd4f09 --- /dev/null +++ b/atd-vzd/migrations/default/1715960026005_update_recommendations_and_notes_fks/down.sql @@ -0,0 +1,18 @@ +alter table recommendations drop column crash_pk; +alter table recommendations rename column atd_txdot_crashes_crash_id to crash_id; +alter table recommendations add constraint recommendations_crash_id_key unique (crash_id); +delete from recommendations where crash_id is null; +alter table recommendations alter column crash_id set not null; + +alter table crash_notes drop column crash_pk; +alter table crash_notes rename column atd_txdot_crashes_crash_id to crash_id; +delete from crash_notes where crash_id is null; +alter table crash_notes alter column crash_id set not null; + +alter table location_notes +drop constraint fk_location_note_location, +alter column location_id drop not null; + +alter table _cris_import_log rename to cris_import_log; +alter table cris_import_log add column outcome_status text; + diff --git a/atd-vzd/migrations/default/1715960026005_update_recommendations_and_notes_fks/up.sql b/atd-vzd/migrations/default/1715960026005_update_recommendations_and_notes_fks/up.sql new file mode 100644 index 000000000..d401a5374 --- /dev/null +++ b/atd-vzd/migrations/default/1715960026005_update_recommendations_and_notes_fks/up.sql @@ -0,0 +1,36 @@ +alter table recommendations rename column crash_id to atd_txdot_crashes_crash_id; + +alter table recommendations + add column crash_pk integer, + add constraint recommendations_crashes_pk_fkey foreign key ( + crash_pk + ) references crashes (id), + drop constraint recommendations_crash_id_key, + add constraint recommendations_crash_id_key unique (crash_pk), + alter column atd_txdot_crashes_crash_id drop not null; +; + +alter table crash_notes rename column crash_id to atd_txdot_crashes_crash_id; + +alter table crash_notes + add column crash_pk integer, + add constraint notes_crashes_id_fkey foreign key ( + crash_pk + ) references crashes (id), + alter column atd_txdot_crashes_crash_id drop not null; + +alter table location_notes +add constraint fk_location_note_location foreign key ( + location_id +) references atd_txdot_locations (location_id), +alter column location_id set not null; + +-- squeezing this in here +alter table cris_import_log rename to _cris_import_log; +alter table _cris_import_log drop column outcome_status; +alter table _cris_import_log alter column records_processed drop DEFAULT; + +-- and squeezing this in here +drop view if exists view_crashes_inconsistent_numbers; +drop view if exists atd_txdot_changes_view; + diff --git a/atd-vzd/migrations/default/1715960027005_fatalities_view/down.sql b/atd-vzd/migrations/default/1715960027005_fatalities_view/down.sql new file mode 100644 index 000000000..ed4798a6d --- /dev/null +++ b/atd-vzd/migrations/default/1715960027005_fatalities_view/down.sql @@ -0,0 +1 @@ +select 0; diff --git a/atd-vzd/migrations/default/1715960027005_fatalities_view/up.sql b/atd-vzd/migrations/default/1715960027005_fatalities_view/up.sql new file mode 100644 index 000000000..19e0f176f --- /dev/null +++ b/atd-vzd/migrations/default/1715960027005_fatalities_view/up.sql @@ -0,0 +1,53 @@ +drop table if exists fatalities cascade; + +drop view if exists fatalities_view cascade; + +drop function if exists update_fatality_soft_delete cascade; + +drop function if exists fatality_insert cascade; + +create or replace view fatalities_view AS +select +people.id as person_id, +crashes.id as crash_pk, +crashes.cris_crash_id, +crashes.record_locator, +units.id as unit_id, +CONCAT_WS(' ', people.prsn_first_name, people.prsn_mid_name, people.prsn_last_name) as victim_name, +TO_CHAR(crashes.crash_timestamp at time zone 'US/Central', 'yyyy') AS year, +CONCAT_WS(' ', + crashes.rpt_block_num, + crashes.rpt_street_pfx, + crashes.rpt_street_name, + '(', + crashes.rpt_sec_block_num, + crashes.rpt_sec_street_pfx, + crashes.rpt_sec_street_name, + ')') AS location, +to_char( + public.crashes.crash_timestamp at time zone 'US/Central', 'YYYY-MM-DD' + ) as crash_date_ct, +to_char( + public.crashes.crash_timestamp at time zone 'US/Central', 'HH24:MI:SS' + ) as crash_time_ct, +-- get ytd fatality, partition by year and sort by date timestamp +ROW_NUMBER() OVER ( + PARTITION BY EXTRACT(year FROM crashes.crash_timestamp) + ORDER BY crashes.crash_timestamp ASC) + AS ytd_fatality, +-- get ytd fatal crash, partition by year and sort by date timestamp. +-- records with the same crash.id will get "tie" rankings thus making +-- this column count each crash rather than each fatality +DENSE_RANK() OVER ( + PARTITION BY EXTRACT(year FROM crashes.crash_timestamp) + ORDER BY crashes.crash_timestamp ASC, crashes.id) + AS ytd_fatal_crash, +crashes.case_id, +crashes.law_enforcement_ytd_fatality_num, +crashes.engineering_area + from + people + left join units on people.unit_id = units.id + left join crashes on units.crash_pk = crashes.id +where crashes.in_austin_full_purpose = true AND people.prsn_injry_sev_id = 4 AND crashes.private_dr_fl = false AND crashes.is_deleted = false; + diff --git a/atd-vzd/migrations/default/1724206665257_locations_list_afp/down.sql b/atd-vzd/migrations/default/1724206665257_locations_list_afp/down.sql new file mode 100644 index 000000000..24dd5e04e --- /dev/null +++ b/atd-vzd/migrations/default/1724206665257_locations_list_afp/down.sql @@ -0,0 +1,62 @@ +-- revert to 1715960021005_crashes_list_and_fatality_metrics_views +drop view if exists locations_list_view; +create view locations_list_view as +with cr3_comp_costs as ( + select + location_id, + sum(est_comp_cost_crash_based) as cr3_comp_costs_total + from crashes_list_view group by location_id +), + +cr3_crash_counts as ( + select + location_id, + count(location_id) as crash_count + from + crashes + where + crashes.private_dr_fl = false + and crashes.location_id is not null + and crashes.crash_timestamp > (now() - '5 years'::interval) + group by + location_id +), + +non_cr3_crash_counts as ( + select + location_id, + count(location_id) as crash_count, + count(location_id) * 10000 as noncr3_comp_costs_total + from + atd_apd_blueform + where + atd_apd_blueform.location_id is not null + and atd_apd_blueform.date > (now() - '5 years'::interval) + group by + location_id +) + +select + locations.location_id, + locations.description, + coalesce( + cr3_comp_costs.cr3_comp_costs_total + + non_cr3_crash_counts.noncr3_comp_costs_total, + 0 + ) as total_est_comp_cost, + coalesce(cr3_crash_counts.crash_count, 0) as cr3_crash_count, + coalesce(non_cr3_crash_counts.crash_count, 0) as non_cr3_crash_count, + coalesce(cr3_crash_counts.crash_count, 0) + + coalesce(non_cr3_crash_counts.crash_count, 0) as crash_count +from + atd_txdot_locations as locations +left join + cr3_crash_counts + on locations.location_id = cr3_crash_counts.location_id +left join + non_cr3_crash_counts + on locations.location_id = non_cr3_crash_counts.location_id +left join cr3_comp_costs on locations.location_id = cr3_comp_costs.location_id +where + locations.council_district > 0 + and locations.location_group = 1; diff --git a/atd-vzd/migrations/default/1724206665257_locations_list_afp/up.sql b/atd-vzd/migrations/default/1724206665257_locations_list_afp/up.sql new file mode 100644 index 000000000..8546b0085 --- /dev/null +++ b/atd-vzd/migrations/default/1724206665257_locations_list_afp/up.sql @@ -0,0 +1,60 @@ +drop view if exists locations_list_view; +create view locations_list_view as +with cr3_comp_costs as ( + select + location_id, + sum(est_comp_cost_crash_based) as cr3_comp_costs_total + from crashes_list_view group by location_id +), + +cr3_crash_counts as ( + select + location_id, + count(location_id) as crash_count + from + crashes + where + crashes.private_dr_fl = false + and crashes.location_id is not null + and crashes.crash_timestamp > (now() - '5 years'::interval) + group by + location_id +), + +non_cr3_crash_counts as ( + select + location_id, + count(location_id) as crash_count, + count(location_id) * 10000 as noncr3_comp_costs_total + from + atd_apd_blueform + where + atd_apd_blueform.location_id is not null + and atd_apd_blueform.date > (now() - '5 years'::interval) + group by + location_id +) + +select + locations.location_id, + locations.description, + locations.council_district, + locations.location_group, + coalesce( + cr3_comp_costs.cr3_comp_costs_total + + non_cr3_crash_counts.noncr3_comp_costs_total, + 0 + ) as total_est_comp_cost, + coalesce(cr3_crash_counts.crash_count, 0) as cr3_crash_count, + coalesce(non_cr3_crash_counts.crash_count, 0) as non_cr3_crash_count, + coalesce(cr3_crash_counts.crash_count, 0) + + coalesce(non_cr3_crash_counts.crash_count, 0) as crash_count +from + atd_txdot_locations as locations +left join + cr3_crash_counts + on locations.location_id = cr3_crash_counts.location_id +left join + non_cr3_crash_counts + on locations.location_id = non_cr3_crash_counts.location_id +left join cr3_comp_costs on locations.location_id = cr3_comp_costs.location_id; diff --git a/atd-vzd/migrations/default/1724259574465_crash_position_index_gist/down.sql b/atd-vzd/migrations/default/1724259574465_crash_position_index_gist/down.sql new file mode 100644 index 000000000..bffeac1a0 --- /dev/null +++ b/atd-vzd/migrations/default/1724259574465_crash_position_index_gist/down.sql @@ -0,0 +1,2 @@ +drop index if exists crashes_position_idx; +create index on public.crashes (position); diff --git a/atd-vzd/migrations/default/1724259574465_crash_position_index_gist/up.sql b/atd-vzd/migrations/default/1724259574465_crash_position_index_gist/up.sql new file mode 100644 index 000000000..23f6913d0 --- /dev/null +++ b/atd-vzd/migrations/default/1724259574465_crash_position_index_gist/up.sql @@ -0,0 +1,2 @@ +drop index if exists crashes_position_idx; +create index crashes_position_idx on public.crashes using GIST (position); diff --git a/atd-vzd/migrations/default/1724342253600_lookups_agency_cris_v28/down.sql b/atd-vzd/migrations/default/1724342253600_lookups_agency_cris_v28/down.sql new file mode 100644 index 000000000..24387d7c0 --- /dev/null +++ b/atd-vzd/migrations/default/1724342253600_lookups_agency_cris_v28/down.sql @@ -0,0 +1,3 @@ +delete from lookups.agency +where + id in (23794, 23673, 23816, 23682, 23845, 23854, 23897, 23773, 23846, 24043); diff --git a/atd-vzd/migrations/default/1724342253600_lookups_agency_cris_v28/up.sql b/atd-vzd/migrations/default/1724342253600_lookups_agency_cris_v28/up.sql new file mode 100644 index 000000000..201207938 --- /dev/null +++ b/atd-vzd/migrations/default/1724342253600_lookups_agency_cris_v28/up.sql @@ -0,0 +1,12 @@ + +insert into lookups.agency (id, label, source) values + (23794, 'ANGELINA COLLEGE POLICE DEPARTMENT', 'cris'), + (23673, 'BURLINGTON NORTHERN SANTA FE RAILROAD COMPANY POLICE DEPARTMENT', 'cris'), + (23816, 'COLEMAN COUNTY SHERIFF’S OFFICE', 'cris'), + (23682, 'COMAL COUNTY CONSTABLE’S OFFICE PCT 4', 'cris'), + (23845, 'COPPER CANYON POLICE DEPARTMENT', 'cris'), + (23854, 'JEFFERSON COUNTY SHERIFF’S OFFICE', 'cris'), + (23897, 'SWISHER COUNTY SHERIFF’S OFFICE', 'cris'), + (23773, 'TRAVIS COUNTY - AUSTIN EMS', 'cris'), + (23846, 'WILSON COUNTY CONSTABLE OFFICE PRECINCT 3', 'cris'), + (24043, 'AUSTIN COMMUNITY COLLEGE DISTRICT POLICE DEPARTMENT', 'cris'); diff --git a/atd-vzd/triggers/find_cr3_collisions_for_location copy.sql b/atd-vzd/triggers/find_cr3_collisions_for_location copy.sql deleted file mode 100644 index cb8dc13c3..000000000 --- a/atd-vzd/triggers/find_cr3_collisions_for_location copy.sql +++ /dev/null @@ -1,18 +0,0 @@ -CREATE OR REPLACE FUNCTION public.find_cr3_collisions_for_location -(id varchar) - RETURNS SETOF atd_txdot_crashes - LANGUAGE sql - STABLE -AS $function$ -SELECT - * -FROM - atd_txdot_crashes AS cr3_crash -WHERE - ST_Contains(( - SELECT - atd_loc.shape -FROM atd_txdot_locations AS atd_loc -WHERE - atd_loc.location_id::VARCHAR=id), ST_SetSRID(ST_MakePoint(cr3_crash.longitude_primary, cr3_crash.latitude_primary), 4326)) -$function$ diff --git a/atd-vzd/triggers/find_noncr3_collisions_for_location.sql b/atd-vzd/triggers/find_noncr3_collisions_for_location.sql deleted file mode 100644 index 78f62071c..000000000 --- a/atd-vzd/triggers/find_noncr3_collisions_for_location.sql +++ /dev/null @@ -1,18 +0,0 @@ -CREATE OR REPLACE FUNCTION public.find_noncr3_collisions_for_location -(id varchar) - RETURNS SETOF atd_apd_blueform - LANGUAGE sql - STABLE -AS $function$ -SELECT - * -FROM - atd_apd_blueform AS blueform -WHERE - ST_Contains(( - SELECT - atd_loc.shape -FROM atd_txdot_locations AS atd_loc -WHERE - atd_loc.location_id::VARCHAR=id), ST_SetSRID(ST_MakePoint (blueform.longitude, blueform.latitude), 4326)) -$function$ diff --git a/atd-vzd/views/view_cr3_nonproper_crashes_on_mainlane.sql b/atd-vzd/views/view_cr3_nonproper_crashes_on_mainlane.sql deleted file mode 100644 index e4c02d347..000000000 --- a/atd-vzd/views/view_cr3_nonproper_crashes_on_mainlane.sql +++ /dev/null @@ -1,71 +0,0 @@ -CREATE OR REPLACE VIEW public.cr3_nonproper_crashes_on_mainlane -AS WITH cr3_mainlanes AS ( - SELECT st_transform(st_buffer(st_transform(st_union(cr3_mainlanes.geometry), 2277), 1::double precision), 4326) AS geometry - FROM public.cr3_mainlanes - ), seek_direction AS ( - SELECT c_1.crash_id, - CASE - WHEN "substring"(lower(c_1.rpt_street_name::text), '\s?([nsew])[arthous]*\s??b(oun)?d?'::text) ~* 'w'::text OR "substring"(lower(c_1.rpt_sec_street_name::text), '\s?([nsew])[arthous]*\s??b(oun)?d?'::text) ~* 'w'::text THEN 0 - WHEN "substring"(lower(c_1.rpt_street_name::text), '\s?([nsew])[arthous]*\s??b(oun)?d?'::text) ~* 'n'::text OR "substring"(lower(c_1.rpt_sec_street_name::text), '\s?([nsew])[arthous]*\s??b(oun)?d?'::text) ~* 'n'::text THEN 90 - WHEN "substring"(lower(c_1.rpt_street_name::text), '\s?([nsew])[arthous]*\s??b(oun)?d?'::text) ~* 'e'::text OR "substring"(lower(c_1.rpt_sec_street_name::text), '\s?([nsew])[arthous]*\s??b(oun)?d?'::text) ~* 'e'::text THEN 180 - WHEN "substring"(lower(c_1.rpt_street_name::text), '\s?([nsew])[arthous]*\s??b(oun)?d?'::text) ~* 's'::text OR "substring"(lower(c_1.rpt_sec_street_name::text), '\s?([nsew])[arthous]*\s??b(oun)?d?'::text) ~* 's'::text THEN 270 - ELSE NULL::integer - END AS seek_direction - FROM atd_txdot_crashes c_1 - ) - SELECT - c.*, - CASE - WHEN c.rpt_street_name::text ~* '\s?([nsew])[arthous]*\s??b(oun)?d?'::text OR c.rpt_sec_street_name::text ~* '\s?([nsew])[arthous]*\s??b(oun)?d?'::text THEN true - ELSE false - END AS has_directionality, - d.seek_direction, - ( SELECT p.location_id - FROM atd_txdot_locations p - WHERE - CASE - WHEN - CASE - WHEN (d.seek_direction - 65) < 0 THEN d.seek_direction - 65 + 360 - ELSE d.seek_direction - 65 - END < ((d.seek_direction + 65) % 360) THEN (st_azimuth(c."position", st_centroid(p.shape)) * 180::double precision / pi()) >= - CASE - WHEN (d.seek_direction - 65) < 0 THEN d.seek_direction - 65 + 360 - ELSE d.seek_direction - 65 - END::double precision AND (st_azimuth(c."position", st_centroid(p.shape)) * 180::double precision / pi()) <= ((d.seek_direction + 65) % 360)::double precision - ELSE (st_azimuth(c."position", st_centroid(p.shape)) * 180::double precision / pi()) >= - CASE - WHEN (d.seek_direction - 65) < 0 THEN d.seek_direction - 65 + 360 - ELSE d.seek_direction - 65 - END::double precision OR (st_azimuth(c."position", st_centroid(p.shape)) * 180::double precision / pi()) <= ((d.seek_direction + 65) % 360)::double precision - END AND st_intersects(st_transform(st_buffer(st_transform(c."position", 2277), 750::double precision), 4326), p.shape) AND p.description ~~* '%SVRD%'::text - ORDER BY (st_distance(st_centroid(p.shape), c."position")) - LIMIT 1) AS surface_street_polygon, - st_makeline(st_centroid(( SELECT p.shape - FROM atd_txdot_locations p - WHERE - CASE - WHEN - CASE - WHEN (d.seek_direction - 65) < 0 THEN d.seek_direction - 65 + 360 - ELSE d.seek_direction - 65 - END < ((d.seek_direction + 65) % 360) THEN (st_azimuth(c."position", st_centroid(p.shape)) * 180::double precision / pi()) >= - CASE - WHEN (d.seek_direction - 65) < 0 THEN d.seek_direction - 65 + 360 - ELSE d.seek_direction - 65 - END::double precision AND (st_azimuth(c."position", st_centroid(p.shape)) * 180::double precision / pi()) <= ((d.seek_direction + 65) % 360)::double precision - ELSE (st_azimuth(c."position", st_centroid(p.shape)) * 180::double precision / pi()) >= - CASE - WHEN (d.seek_direction - 65) < 0 THEN d.seek_direction - 65 + 360 - ELSE d.seek_direction - 65 - END::double precision OR (st_azimuth(c."position", st_centroid(p.shape)) * 180::double precision / pi()) <= ((d.seek_direction + 65) % 360)::double precision - END AND st_intersects(st_transform(st_buffer(st_transform(c."position", 2277), 750::double precision), 4326), p.shape) AND p.description ~~* '%SVRD%'::text - ORDER BY (st_distance(st_centroid(p.shape), c."position")) - LIMIT 1)), c."position") AS visualization - FROM atd_txdot_crashes c, - cr3_mainlanes l, - seek_direction d - JOIN atd_jurisdictions aj ON aj.id = 5 - WHERE 1 = 1 AND d.crash_id = c.crash_id AND st_contains(aj.geometry, c."position") AND c.private_dr_fl::text = 'N'::text AND (c.rpt_road_part_id = ANY (ARRAY[2, 3, 4, 5, 7])) AND st_contains(l.geometry, c."position"); - --- Ensure that this view is tracked in Hasura and that it has at least, surface_street_polygon & crash_id exposed for SELECT. diff --git a/atd-vze/.env b/atd-vze/.env index 0ca4a00b0..baf66a8f0 100644 --- a/atd-vze/.env +++ b/atd-vze/.env @@ -5,4 +5,5 @@ REACT_APP_AUTH0_CLIENT_ID=2qbqz2sf8L9idBOwn0d5YA9efNgQbL7c REACT_APP_MAPBOX_TOKEN="pk.eyJ1Ijoiam9obmNsYXJ5IiwiYSI6ImNqemU4OGQzaTBlZjczYm1rZWg1c2lidTcifQ.2eooq4Q7dv_1Le5la9D96Q" REACT_APP_NEARMAP_KEY="NGQ4NGUwOWQtZTlhZS00Y2FkLTkyMWItOGIxYWJlZDYyNTcy" REACT_APP_CR3_API_DOMAIN="https://atd-vz-api-staging.austinmobility.io" +REACT_APP_CR3_DIAGRAM_BASE_URL="https://atd-vision-zero.s3.amazonaws.com/dev/cr3s/crash_diagrams" REACT_APP_ENV="local" diff --git a/atd-vze/.env.production b/atd-vze/.env.production index e69c5273b..3e002f6e0 100644 --- a/atd-vze/.env.production +++ b/atd-vze/.env.production @@ -1,8 +1,8 @@ -# IMPORTANT: YOU NEED TO INSERT *YOUR* DOMAIN AND CLIENT_ID BELOW REACT_APP_HASURA_ENDPOINT="https://vzd.austinmobility.io/v1/graphql" REACT_APP_AUTH0_DOMAIN=atd-datatech.auth0.com REACT_APP_AUTH0_CLIENT_ID=Y5Q304ADgUOYq8199aSgSxLEc6Xzdkb4 REACT_APP_MAPBOX_TOKEN="pk.eyJ1Ijoiam9obmNsYXJ5IiwiYSI6ImNqemU4OGQzaTBlZjczYm1rZWg1c2lidTcifQ.2eooq4Q7dv_1Le5la9D96Q" REACT_APP_NEARMAP_KEY="NGQ4NGUwOWQtZTlhZS00Y2FkLTkyMWItOGIxYWJlZDYyNTcy" REACT_APP_CR3_API_DOMAIN="https://atd-vz-api.austinmobility.io" +REACT_APP_CR3_DIAGRAM_BASE_URL="https://atd-vision-zero.s3.amazonaws.com/prod/cr3s/crash_diagrams" REACT_APP_ENV="production" diff --git a/atd-vze/.env.staging b/atd-vze/.env.staging index d0d2f1e04..070049849 100644 --- a/atd-vze/.env.staging +++ b/atd-vze/.env.staging @@ -1,8 +1,8 @@ -# IMPORTANT: YOU NEED TO INSERT *YOUR* DOMAIN AND CLIENT_ID BELOW REACT_APP_HASURA_ENDPOINT="https://vzd-staging.austinmobility.io/v1/graphql" REACT_APP_AUTH0_DOMAIN=atd-datatech.auth0.com REACT_APP_AUTH0_CLIENT_ID=2qbqz2sf8L9idBOwn0d5YA9efNgQbL7c REACT_APP_MAPBOX_TOKEN="pk.eyJ1Ijoiam9obmNsYXJ5IiwiYSI6ImNqemU4OGQzaTBlZjczYm1rZWg1c2lidTcifQ.2eooq4Q7dv_1Le5la9D96Q" REACT_APP_NEARMAP_KEY="NGQ4NGUwOWQtZTlhZS00Y2FkLTkyMWItOGIxYWJlZDYyNTcy" REACT_APP_CR3_API_DOMAIN="https://atd-vz-api-staging.austinmobility.io" +REACT_APP_CR3_DIAGRAM_BASE_URL="https://atd-vision-zero.s3.amazonaws.com/staging/cr3s/crash_diagrams" REACT_APP_ENV="staging" diff --git a/atd-vze/.env.test b/atd-vze/.env.test new file mode 100644 index 000000000..7f0a08efa --- /dev/null +++ b/atd-vze/.env.test @@ -0,0 +1,8 @@ +REACT_APP_HASURA_ENDPOINT="https://vz-test-data-model.austinmobility.io/v1/graphql" +REACT_APP_AUTH0_DOMAIN=atd-datatech.auth0.com +REACT_APP_AUTH0_CLIENT_ID=2qbqz2sf8L9idBOwn0d5YA9efNgQbL7c +REACT_APP_MAPBOX_TOKEN="pk.eyJ1Ijoiam9obmNsYXJ5IiwiYSI6ImNqemU4OGQzaTBlZjczYm1rZWg1c2lidTcifQ.2eooq4Q7dv_1Le5la9D96Q" +REACT_APP_NEARMAP_KEY="NGQ4NGUwOWQtZTlhZS00Y2FkLTkyMWItOGIxYWJlZDYyNTcy" +REACT_APP_CR3_API_DOMAIN="https://atd-vz-api-staging.austinmobility.io" +REACT_APP_CR3_DIAGRAM_BASE_URL="https://atd-vision-zero.s3.amazonaws.com/dev/cr3s/crash_diagrams" +REACT_APP_ENV="new-data-model" diff --git a/atd-vze/package-lock.json b/atd-vze/package-lock.json index 837ccf66b..18674f0c9 100644 --- a/atd-vze/package-lock.json +++ b/atd-vze/package-lock.json @@ -1,12 +1,12 @@ { "name": "atd-vz-data", - "version": "1.44.0", + "version": "1.47.0", "lockfileVersion": 2, "requires": true, "packages": { "": { "name": "atd-vz-data", - "version": "1.44.0", + "version": "1.47.0", "license": "MIT", "dependencies": { "@apollo/react-hooks": "^3.0.0", diff --git a/atd-vze/package.json b/atd-vze/package.json index bfc0cf051..77a1b7c91 100644 --- a/atd-vze/package.json +++ b/atd-vze/package.json @@ -1,6 +1,6 @@ { "name": "atd-vz-data", - "version": "1.48.0", + "version": "2.0.0", "homepage": "./", "description": "ATD Vision Zero Editor", "author": "ATD Data & Technology Services", @@ -69,6 +69,7 @@ "build": "CI= react-scripts build && cp _redirects build && cp -r build editor && mv editor build", "build:production": "env-cmd -f .env.production npm run build", "build:staging": "env-cmd -f .env.staging npm run build", + "build:test": "env-cmd -f .env.test npm run build", "test": "react-scripts test", "test:cov": "npm test -- --coverage --watchAll=false", "test:debug": "react-scripts --inspect-brk test --runInBand", diff --git a/atd-vze/src/Components/DataTable.js b/atd-vze/src/Components/DataTable.js index 677a13a95..ac8489554 100644 --- a/atd-vze/src/Components/DataTable.js +++ b/atd-vze/src/Components/DataTable.js @@ -1,8 +1,6 @@ -import React, { useState } from "react"; +import React from "react"; import { useQuery } from "@apollo/react-hooks"; import { useAuth0, isReadOnly } from "../auth/authContext"; -import ConfirmModal from "./ConfirmModal"; -import get from "lodash.get"; import { formatCostToDollars, formatDateTimeString } from "../helpers/format"; import { @@ -24,10 +22,8 @@ const DataTable = ({ setEditField, editField, data, - formData, handleInputChange, handleFieldUpdate, - handleButtonClick, downloadGlobal, }) => { // Disable edit features if only role is "readonly" @@ -35,8 +31,6 @@ const DataTable = ({ const roles = getRoles(); const isReadOnlyUser = isReadOnly(roles); - const [showModal, setShowModal] = useState(false); - // Import Lookup tables and aggregate an object of uiType= "select" options const { data: lookupSelectOptions } = useQuery(GET_LOOKUPS); @@ -46,22 +40,9 @@ const DataTable = ({ setEditField(""); }; - const onButtonClick = (e, section) => { - handleFieldUpdate && handleFieldUpdate(e, section, "button"); - handleButtonClick && - handleButtonClick(e, section.button.buttonFieldUpdate, data); - }; - - const toggleModal = () => { - setShowModal(!showModal); - }; - return ( <> {dataMap.map((section, i) => { - const buttonCondition = - section.button && section.button.buttonCondition; - return ( @@ -79,39 +60,25 @@ const DataTable = ({ const fieldDataTable = fieldConfigObject.alternateTable || dataTable; - // If data is nested in data object, define path in dataMap - const nestedData = - fieldConfigObject.dataPath && - get( - data[fieldDataTable][0], - fieldConfigObject.dataPath - ); - - const formattedDollarValue = - fieldConfigObject.format === "dollars" && - formatCostToDollars( - nestedData || data[fieldDataTable][0][field] - ); - - const formatDateTimeValue = + // Handle field value that is nested in relationship if necessary + let fieldValue = fieldConfigObject.relationshipName + ? data[fieldDataTable][ + fieldConfigObject.relationshipName + ]?.[field] + : data[fieldDataTable][field]; + + // Handle formatting the field value + if (fieldConfigObject.format === "dollars") { + fieldValue = formatCostToDollars(fieldValue); + } else if ( fieldConfigObject.format === "datetime" && - formatDateTimeString( - nestedData || data[fieldDataTable][0][field] - ); - - const fieldValue = - formattedDollarValue || - formatDateTimeValue || - nestedData || - (formData && formData[field.data]) || - data[fieldDataTable][0][field]; + fieldValue + ) { + fieldValue = formatDateTimeString(fieldValue); + } const fieldUiType = fieldConfigObject.uiType; - const lookupPrefix = fieldConfigObject.lookupPrefix - ? fieldConfigObject.lookupPrefix - : field.split("_id")[0]; - // If there is no lookup options, we can assume the field value can be displayed as is. // If there is a lookup option, then the value is an ID to be referenced in a lookup table. const selectOptions = @@ -124,14 +91,19 @@ const DataTable = ({ typeof fieldValue === "undefined" ) return ""; + else if (fieldValue === true) { + return "YES"; + } else if (fieldValue === false) { + return "NO"; + } // make sure there is a lookup object in the config if (!selectOptions || !fieldConfigObject.lookupOptions) - return fieldValue; + return fieldValue.toString().toUpperCase(); // make sure the config lookup object matches with lookup queries const matchingLookupObject = selectOptions.find( - item => item[`${lookupPrefix}_id`] === fieldValue + item => item[`id`] === fieldValue ); if (!matchingLookupObject) { @@ -140,7 +112,7 @@ const DataTable = ({ ); return `ID: ${fieldValue}`; } else { - return matchingLookupObject[`${lookupPrefix}_desc`]; + return matchingLookupObject[`label`]; } }; @@ -180,10 +152,8 @@ const DataTable = ({ type="select" > {selectOptions.map(option => ( - ))} @@ -201,6 +171,17 @@ const DataTable = ({ data-1p-ignore /> )} + {fieldUiType === "boolean" && ( + handleInputChange(e)} + > + + + + )}
- )} - {/* If button confirm parameters are set, show button and confirm modal */} - {section.button && - section.button.buttonConfirm && - data[buttonCondition.dataTableName][0][ - buttonCondition.dataPath - ] === buttonCondition.value && ( - <> - - {section.button.buttonConfirm && showModal && ( - onButtonClick(e, section)} - toggleModal={toggleModal} - showModal={showModal} - /> - )} - - )} - {downloadGlobal} + {!!downloadGlobal && {downloadGlobal}} ); diff --git a/atd-vze/src/Components/GridTable.js b/atd-vze/src/Components/GridTable.js index 125b60a55..c1b6239a3 100644 --- a/atd-vze/src/Components/GridTable.js +++ b/atd-vze/src/Components/GridTable.js @@ -31,7 +31,7 @@ import GridTableDoughnut from "./GridTableDoughnut"; import GridTableHorizontalBar from "./GridTableHorizontalBar"; import GridTableFilterBadges from "./GridTableFilterBadges"; -const codeName = "jester"; +const codeName = "asclepias"; const GridTable = ({ title, @@ -49,7 +49,7 @@ const GridTable = ({ }) => { // Load table filters from localStorage by title const savedFilterState = JSON.parse( - localStorage.getItem(`${codeName}saved${title}Config`) + localStorage.getItem(`${codeName}_saved_${title}_config`) ); // Return saved filters if they exist @@ -109,7 +109,7 @@ const GridTable = ({ dateRangeFilter, }; localStorage.setItem( - `${codeName}saved${title}Config`, + `${codeName}_saved_${title}_config`, JSON.stringify(stateForFilters) ); }); @@ -182,10 +182,12 @@ const GridTable = ({ } else if (sortColumn === col) { // Else if the current sortColumn is the same as the new // then invert values and repeat sort on column - sortOrder === "desc" ? setSortOrder("asc") : setSortOrder("desc"); + sortOrder === "desc_nulls_last" + ? setSortOrder("asc") + : setSortOrder("desc_nulls_last"); } else if (sortColumn !== col) { // Sort different column after initial sort, then reset - setSortOrder("desc"); + setSortOrder("desc_nulls_last"); setSortColumn(col); } }; @@ -227,6 +229,7 @@ const GridTable = ({ const handleRowClick = e => { const rowNumber = parseInt(e.target.value); setLimit(rowNumber); + changePage(1); }; /** @@ -318,7 +321,9 @@ const GridTable = ({ typeof query.config.showDateRange !== "undefined" ? query.config.showDateRange : true; - const dateField = query.table === "atd_apd_blueform" ? "date" : "crash_date"; + + const dateField = query.config.dateField; + // Handle Date Range (only if available) if ( hasDateRange && @@ -351,7 +356,7 @@ const GridTable = ({ query.deleteWhere(column); }); - const useEqSearch = ["crash_id", "form_id", "record_id"].includes( + const useEqSearch = ["cris_crash_id", "form_id", "record_id"].includes( searchParameters["column"] ); @@ -375,7 +380,7 @@ const GridTable = ({ query.setOrder(sortColumn, sortOrder); } - // Mange LIMIT & OFFSET + // Manage LIMIT & OFFSET query.limit = limit; query.offset = offset; @@ -393,15 +398,9 @@ const GridTable = ({ if (error) return `Error! ${error.message}`; let dataEntries = []; - let totalRecords = 0; - let totalPages = 1; // If we have data if (data[query.table]) { - loading = false; - totalRecords = data[query.table + "_aggregate"]["aggregate"]["count"]; - totalPages = Math.ceil(totalRecords / limit); - // DataEntries: For each item in the data array, generate a row with each column data[query.table].map((row, index) => dataEntries.push( @@ -502,53 +501,53 @@ const GridTable = ({ /> - {hasDateRange && ( - - - - )} - +
+ {hasDateRange && ( + + + + )} + {loading && ( + + + + )} +
- {columnsToExport && ( )}
- {loading ? ( - - ) : ( - - - {data && dataEntries} -
- )} + + + + {data && dataEntries} +
diff --git a/atd-vze/src/Components/GridTableHeader.js b/atd-vze/src/Components/GridTableHeader.js index 4a5d46f72..dd3981ffa 100644 --- a/atd-vze/src/Components/GridTableHeader.js +++ b/atd-vze/src/Components/GridTableHeader.js @@ -20,8 +20,9 @@ const GridTableHeader = ({ * @param {boolean} ascending - true if ordering in ascending mode * @returns {object} jsx component */ - const renderLabel = (col, sortable = false, ascending = false) => { - if (sortable) { + const renderLabel = (col, ascending, isSorting) => { + if (isSorting) { + // show a sort arrow next to the column that's actively being sorted return ( @@ -57,14 +58,14 @@ const GridTableHeader = ({ : null } key={`th-${index}`} + style={{ cursor: "pointer" }} > {renderLabel( // Get a human-readable label string query.getLabel(column, "table"), - // If it is sortable, render as such - query.isSortable(column), // If sort column is defined, use sort order, or false as default - sortColumn === column ? sortOrder === "asc" : false + sortColumn === column ? sortOrder === "asc" : false, + sortColumn === column )} ) diff --git a/atd-vze/src/Components/GridTablePagination.js b/atd-vze/src/Components/GridTablePagination.js index 1d64acbde..9801d6fea 100644 --- a/atd-vze/src/Components/GridTablePagination.js +++ b/atd-vze/src/Components/GridTablePagination.js @@ -21,10 +21,9 @@ const GridTablePagination = ({ moveNext, moveBack, limit, - totalPages, - totalRecords, pageNumber, handleRowClick, + recordsCount, }) => { const [isDropdownOpen, setIsDropdownOpen] = useState(false); @@ -46,15 +45,13 @@ const GridTablePagination = ({ Prev - - + - - ) : ( - // else if user has edit permissions and is not editing render empty cell - !isReadOnly(roles) && !isEditing && - )} - {/* display delete button if row was created by current user, + {isUser && !isReadOnly(roles) && !isEditing ? ( + + + + ) : ( + // else if user has edit permissions and is not editing render empty cell + !isReadOnly(roles) && !isEditing && + )} + {/* display delete button if row was created by current user, user has edit permissions, and user is not currently editing */} - {isUser && !isReadOnly(roles) && !isEditing ? ( - - handleDeleteClick(row)} - modalHeader={"Delete Confirmation"} - modalBody={ -
- Are you sure you want to delete this note? -

{row.text}

-
- } - /> - - ) : ( - // else if user has edit permissions and is not editing render empty cell - !isReadOnly(roles) && !isEditing && - )} - {/* display save button if user is editing */} - {!isReadOnly(roles) && isEditing && ( - - - - )} - {/* display cancel button if user is editing */} - {!isReadOnly(roles) && isEditing && ( - - - - )} - - ); - })} + {isUser && !isReadOnly(roles) && !isEditing ? ( + + handleDeleteClick(row)} + modalHeader={"Delete Confirmation"} + modalBody={ +
+ Are you sure you want to delete this note? +

{row.text}

+
+ } + /> + + ) : ( + // else if user has edit permissions and is not editing render empty cell + !isReadOnly(roles) && !isEditing && + )} + {/* display save button if user is editing */} + {!isReadOnly(roles) && isEditing && ( + + + + )} + {/* display cancel button if user is editing */} + {!isReadOnly(roles) && isEditing && ( + + + + )} + + ); + })} - ); }; diff --git a/atd-vze/src/Components/gridTableHelpers.js b/atd-vze/src/Components/gridTableHelpers.js index 750a9b6d8..f93c52e61 100644 --- a/atd-vze/src/Components/gridTableHelpers.js +++ b/atd-vze/src/Components/gridTableHelpers.js @@ -11,10 +11,15 @@ export const getChartData = (chartData, config) => { chartData[config.table].forEach(record => { // If record is a string, increment total if match if (config.isSingleRecord) { - record?.[config.nestedKey]?.[config.nestedPath] === label && labelTotal++; + if (config.nestedPath) { + record?.[config.keyName]?.[config.nestedPath] === label && + labelTotal++; + } else { + record?.[config.keyName] === label && labelTotal++; + } } else { // If record is an array of objects, iterate and increment total if match - record[config.nestedKey].forEach(unit => { + record[config.keyName].forEach(unit => { get(unit, config.nestedPath) === label && labelTotal++; }); } diff --git a/atd-vze/src/_nav.js b/atd-vze/src/_nav.js index d2df02cf5..f402c3cea 100644 --- a/atd-vze/src/_nav.js +++ b/atd-vze/src/_nav.js @@ -38,11 +38,6 @@ export const navigation = roles => { // Admin nav items const adminNavItems = [ - { - name: "Changes", - url: "/changes", - icon: "icon-layers", - }, { title: true, name: "Admin", @@ -53,33 +48,14 @@ export const navigation = roles => { icon: "fa fa-heart-o", }, { - name: "Reports", - url: "#", - icon: "icon-chart", - children: [ - { - name: "Inconsistent KSI Counts", - url: "/reports/inconsistent_ksi_counts", - icon: "icon-graph", - }, - ], + name: "Upload Non-CR3", + url: "/upload_non_cr3", + icon: "icon-cloud-upload", }, { - name: "Tools", - url: "#", - icon: "icon-wrench", - children: [ - { - name: "Upload Non-CR3", - url: "/tools/upload_non_cr3", - icon: "icon-cloud-upload", - }, - { - name: "Create Crash Record", - url: "/tools/create_crash_record", - icon: "icon-shield", - }, - ], + name: "Create Crash Record", + url: "/create_crash_record", + icon: "icon-shield", }, { name: "Users", diff --git a/atd-vze/src/helpers/format.js b/atd-vze/src/helpers/format.js index 671d7bbb3..b13534cb3 100644 --- a/atd-vze/src/helpers/format.js +++ b/atd-vze/src/helpers/format.js @@ -1,7 +1,7 @@ import { format, parseISO } from "date-fns"; export const formatCostToDollars = cost => - !!cost ? `$${cost.toLocaleString()}` : "--"; + cost || cost === 0 ? `$${cost.toLocaleString()}` : "--"; export const formatDateTimeString = datetime => - format(parseISO(datetime), "yyyy-MM-dd hh:mm:ss a"); + format(parseISO(datetime), "yyyy-MM-dd h:mm:ss a"); diff --git a/atd-vze/src/index.js b/atd-vze/src/index.js index d1feb5d9d..1f2bfe604 100644 --- a/atd-vze/src/index.js +++ b/atd-vze/src/index.js @@ -11,7 +11,6 @@ import { Auth0Provider, urlPath, onRedirectCallback } from "./auth/authContext"; import { HashRouter } from "react-router-dom"; import * as serviceWorker from "./serviceWorker"; -console.log("🤖 Release Drafter Test"); // Setup Auth0 config for Auth0Provider component ReactDOM.render( diff --git a/atd-vze/src/queries/crashNotes.js b/atd-vze/src/queries/crashNotes.js index b5043aa74..71e8913cf 100644 --- a/atd-vze/src/queries/crashNotes.js +++ b/atd-vze/src/queries/crashNotes.js @@ -1,29 +1,12 @@ import { gql } from "apollo-boost"; -export const GET_NOTES = gql` - query FindNotes($recordId: Int) { - crash_notes( - where: { crash_id: { _eq: $recordId } } - order_by: { date: desc } - ) { - id - created_at - updated_at - date - text - user_email - crash_id - } - } -`; - export const INSERT_NOTE = gql` - mutation InsertNote($note: String!, $recordId: Int!, $userEmail: String) { + mutation InsertNote($note: String!, $parentRecordId: Int!, $userEmail: String) { insert_crash_notes( - objects: { text: $note, crash_id: $recordId, user_email: $userEmail } + objects: { text: $note, crash_pk: $parentRecordId, user_email: $userEmail } ) { returning { - crash_id + crash_pk text date user_email @@ -35,7 +18,7 @@ export const INSERT_NOTE = gql` export const UPDATE_NOTE = gql` mutation UpdateNote($note: String!, $id: Int!) { update_crash_notes_by_pk(pk_columns: { id: $id }, _set: { text: $note }) { - crash_id + crash_pk text date user_email @@ -46,7 +29,7 @@ export const UPDATE_NOTE = gql` export const DELETE_NOTE = gql` mutation DeleteNote($id: Int!) { delete_crash_notes_by_pk(id: $id) { - crash_id + crash_pk text date user_email diff --git a/atd-vze/src/queries/crashes.js b/atd-vze/src/queries/crashes.js index 350cd0538..e2a806927 100644 --- a/atd-vze/src/queries/crashes.js +++ b/atd-vze/src/queries/crashes.js @@ -1,269 +1,231 @@ import { gql } from "apollo-boost"; export const GET_CRASH = gql` - query FindCrash($crashId: Int) { - atd_txdot_crashes(where: { crash_id: { _eq: $crashId } }) { - active_school_zone_fl - address_confirmed_primary - address_confirmed_secondary - apd_confirmed_fatality - apd_confirmed_death_count - apd_human_update - approval_date - approved_by - at_intrsct_fl - atd_fatality_count + query CrashDetails($crashId: String!) { + crashes(where: { record_locator: { _eq: $crashId } }) { + id + record_locator + updated_at case_id - city_id - cr3_file_metadata - cr3_stored_flag - crash_date - crash_fatal_fl - crash_id - crash_sev_id - crash_speed_limit - crash_time - day_of_week - death_cnt - est_comp_cost - est_comp_cost_crash_based - est_econ_cost + crash_timestamp fhe_collsn_id - geocode_method { - name - } - geocode_date - geocode_provider - geocode_status - geocoded - hwy_nbr - hwy_sfx - hwy_sys - hwy_sys_2 - intrsct_relat_id - investigator_narrative_ocr - is_retired - last_update - latitude - latitude_primary - latitude_geocoded - law_enforcement_num + rpt_city_id light_cond_id - longitude - longitude_primary - longitude_geocoded - non_injry_cnt - nonincap_injry_cnt + wthr_cond_id obj_struck_id - onsys_fl - poss_injry_cnt - private_dr_fl - qa_status - road_constr_zone_fl - road_type_id + crash_speed_limit + traffic_cntl_id + address_primary rpt_block_num - rpt_city_id - rpt_hwy_num - rpt_latitude - rpt_longitude - rpt_outside_city_limit_fl - rpt_rdwy_sys_id + rpt_street_name + rpt_street_desc rpt_road_part_id + rpt_rdwy_sys_id + rpt_hwy_num + rpt_street_pfx + rpt_street_name + rpt_street_sfx + address_secondary rpt_sec_block_num - rpt_sec_hwy_num - rpt_sec_hwy_sfx - rpt_sec_rdwy_sys_id - rpt_sec_road_part_id - rpt_sec_street_desc rpt_sec_street_name + rpt_sec_street_desc + rpt_sec_road_part_id + rpt_sec_rdwy_sys_id + rpt_sec_hwy_num rpt_sec_street_pfx rpt_sec_street_sfx - rpt_street_name - rpt_street_pfx - rpt_street_sfx - rpt_street_desc + active_school_zone_fl + at_intrsct_fl + onsys_fl + private_dr_fl + road_constr_zone_fl rr_relat_fl schl_bus_fl - speed_mgmt_points - street_name - street_name_2 - street_nbr - street_nbr_2 - sus_serious_injry_cnt toll_road_fl - tot_injry_cnt - traffic_cntl_id - unkn_injry_cnt - updated_by - wthr_cond_id + law_enforcement_ytd_fatality_num + investigator_narrative + cr3_stored_fl + latitude + longitude location_id - temp_record - } - atd_txdot_charges(where: { crash_id: { _eq: $crashId } }) { - citation_nbr - charge_cat_id - charge - } - atd_txdot_change_log( - where: { record_type: { _eq: "crashes" }, record_id: { _eq: $crashId } } - order_by: { record_type: asc } - ) { - change_log_id - record_id - record_crash_id - record_json - update_timestamp - updated_by - } - } -`; - -export const UPDATE_COORDS = gql` - mutation update_atd_txdot_crashes( - $crashId: Int - $qaStatus: Int - $geocodeProvider: Int - $latitude: float8 - $longitude: float8 - $updatedBy: String - ) { - update_atd_txdot_crashes( - where: { crash_id: { _eq: $crashId } } - _set: { - qa_status: $qaStatus - geocode_provider: $geocodeProvider - latitude_primary: $latitude - longitude_primary: $longitude - updated_by: $updatedBy + is_temp_record + in_austin_full_purpose + crash_injury_metrics_view { + vz_fatality_count + sus_serious_injry_count + years_of_life_lost + est_comp_cost_crash_based + est_total_person_comp_cost + crash_injry_sev_id + nonincap_injry_count + sus_serious_injry_count + cris_fatality_count + law_enf_fatality_count } - ) { - returning { - crash_id + units { + id + unit_nbr + veh_mod_year + unit_desc { + id + label + } + veh_body_styl { + id + label + } + veh_make { + id + label + } + veh_mod { + id + label + } + trvl_dir { + id + label + } + movt { + id + label + } + contrib_factr { + id + label + } + unit_injury_metrics_view { + vz_fatality_count + sus_serious_injry_count + } + } + people_list_view { + crash_pk + id + unit_nbr + is_primary_person + prsn_age + drvr_city_name + drvr_zip + prsn_exp_homelessness + prsn_first_name + prsn_mid_name + prsn_last_name + injry_sev { + id + label + } + prsn_type { + id + label + } + gndr { + id + label + } + drvr_ethncty { + id + label + } + } + charges_cris { + unit_nbr + prsn_nbr + citation_nbr + charge + } + crashes_list_view { + crash_day_of_week + is_manual_geocode + } + change_logs(order_by: { created_at: desc }) { + id + crash_pk + created_at + created_by + operation_type + record_id + record_type + record_json + } + recommendation { + id + created_at + rec_text + created_by + crash_pk + rec_update + atd__recommendation_status_lkp { + rec_status_desc + } + recommendations_partners { + id + partner_id + recommendation_id + atd__coordination_partners_lkp { + id + coord_partner_desc + } + } + } + crash_notes(order_by: { date: desc }) { + id + created_at + updated_at + date + text + user_email + crash_pk } } } `; export const UPDATE_CRASH = gql` - mutation update_atd_txdot_crashes( - $crashId: Int - $changes: atd_txdot_crashes_set_input - ) { - update_atd_txdot_crashes( - where: { crash_id: { _eq: $crashId } } - _set: $changes - ) { + mutation update_crashes_edits($id: Int!, $changes: crashes_edits_set_input) { + update_crashes_edits(where: { id: { _eq: $id } }, _set: $changes) { affected_rows returning { - active_school_zone_fl - approval_date - approved_by - apd_confirmed_fatality - apd_confirmed_death_count - at_intrsct_fl - atd_fatality_count - case_id - city_id - crash_date - crash_fatal_fl - crash_id - crash_sev_id - crash_speed_limit - crash_time - day_of_week - fhe_collsn_id - geocode_date - geocode_provider - geocode_status - geocoded - hwy_nbr - hwy_sfx - hwy_sys - hwy_sys_2 - intrsct_relat_id - investigator_narrative - is_retired - last_update - latitude - latitude_primary - latitude_geocoded - law_enforcement_num - light_cond_id - longitude - longitude_primary - longitude_geocoded - non_injry_cnt - nonincap_injry_cnt - obj_struck_id - onsys_fl - poss_injry_cnt - private_dr_fl - qa_status - road_constr_zone_fl - road_type_id - rpt_block_num - rpt_hwy_num - rpt_latitude - rpt_longitude - rpt_outside_city_limit_fl - rpt_rdwy_sys_id - rpt_road_part_id - rpt_sec_block_num - rpt_sec_hwy_num - rpt_sec_hwy_sfx - rpt_sec_rdwy_sys_id - rpt_sec_road_part_id - rpt_sec_street_desc - rpt_sec_street_name - rpt_sec_street_pfx - rpt_sec_street_sfx - rpt_street_desc - rpt_street_name - rpt_street_pfx - rpt_street_sfx - rr_relat_fl - schl_bus_fl - street_name - street_name_2 - street_nbr - street_nbr_2 - sus_serious_injry_cnt - toll_road_fl - tot_injry_cnt - traffic_cntl_id - unkn_injry_cnt - wthr_cond_id - updated_by + cris_crash_id } } } `; export const crashQueryExportFields = ` -crash_id +cris_crash_id case_id -crash_date -crash_time -day_of_week +crash_timestamp +crash_day_of_week rpt_block_num rpt_street_pfx rpt_street_name rpt_sec_block_num rpt_sec_street_pfx rpt_sec_street_name -est_comp_cost est_comp_cost_crash_based -atd_fatality_count -sus_serious_injry_cnt -nonincap_injry_cnt -poss_injry_cnt -non_injry_cnt -unkn_injry_cnt -collision { collsn_desc } -units { travel_direction_desc { trvl_dir_desc } } -units { movement { movement_desc } } -units { body_style { veh_body_styl_desc } } -units { unit_description { veh_unit_desc_desc } } +vz_fatality_count +sus_serious_injry_count +nonincap_injry_count +poss_injry_count +non_injry_count +unkn_injry_count +crash_injry_sev_desc +collsn_desc +units { + trvl_dir { + label + } + movt { + label + } + veh_body_styl { + label + } + unit_desc { + label + } +} light_cond_id wthr_cond_id active_school_zone_fl @@ -277,14 +239,28 @@ rr_relat_fl toll_road_fl intrsct_relat_id obj_struck_id -latitude_primary -longitude_primary +latitude +longitude crash_speed_limit -death_cnt -recommendation { rec_text } -recommendation { rec_update } -recommendation { atd__recommendation_status_lkp { rec_status_desc } } -recommendation { recommendations_partners { atd__coordination_partners_lkp { coord_partner_desc }} } +cris_fatality_count +recommendation { + rec_text +} +recommendation { + rec_update +} +recommendation { + atd__recommendation_status_lkp { + rec_status_desc + } +} +recommendation { + recommendations_partners { + atd__coordination_partners_lkp { + coord_partner_desc + } + } +} council_district `; diff --git a/atd-vze/src/queries/crashes_changes.js b/atd-vze/src/queries/crashes_changes.js deleted file mode 100644 index 9c907043f..000000000 --- a/atd-vze/src/queries/crashes_changes.js +++ /dev/null @@ -1,263 +0,0 @@ -import { gql } from "apollo-boost"; -/** - * A template that is used to gather the original crash record - * and all records of pending changes. - * @type {gql} - */ -export const GET_CRASH_CHANGE = gql` - query FindCrash($crashId: Int) { - atd_txdot_crashes(where: { crash_id: { _eq: $crashId } }) { - crash_id - crash_fatal_fl - cmv_involv_fl - schl_bus_fl - rr_relat_fl - medical_advisory_fl - amend_supp_fl - active_school_zone_fl - crash_date - crash_time - case_id - local_use - rpt_cris_cnty_id - rpt_city_id - rpt_outside_city_limit_fl - thousand_damage_fl - rpt_latitude - rpt_longitude - rpt_rdwy_sys_id - rpt_hwy_num - rpt_hwy_sfx - rpt_road_part_id - rpt_block_num - rpt_street_pfx - rpt_street_name - rpt_street_sfx - private_dr_fl - toll_road_fl - crash_speed_limit - road_constr_zone_fl - road_constr_zone_wrkr_fl - rpt_street_desc - at_intrsct_fl - rpt_sec_rdwy_sys_id - rpt_sec_hwy_num - rpt_sec_hwy_sfx - rpt_sec_road_part_id - rpt_sec_block_num - rpt_sec_street_pfx - rpt_sec_street_name - rpt_sec_street_sfx - rpt_ref_mark_offset_amt - rpt_ref_mark_dist_uom - rpt_ref_mark_dir - rpt_ref_mark_nbr - rpt_sec_street_desc - rpt_crossingnumber - wthr_cond_id - light_cond_id - entr_road_id - road_type_id - road_algn_id - surf_cond_id - traffic_cntl_id - investigat_notify_time - investigat_notify_meth - investigat_arrv_time - report_date - investigat_comp_fl - investigator_name - id_number - ori_number - investigat_agency_id - investigat_area_id - investigat_district_id - investigat_region_id - bridge_detail_id - harm_evnt_id - intrsct_relat_id - fhe_collsn_id - obj_struck_id - othr_factr_id - road_part_adj_id - road_cls_id - road_relat_id - phys_featr_1_id - phys_featr_2_id - cnty_id - city_id - latitude - longitude - hwy_sys - hwy_nbr - hwy_sfx - dfo - street_name - street_nbr - control - section - milepoint - ref_mark_nbr - ref_mark_displ - hwy_sys_2 - hwy_nbr_2 - hwy_sfx_2 - street_name_2 - street_nbr_2 - control_2 - section_2 - milepoint_2 - txdot_rptable_fl - onsys_fl - rural_fl - crash_sev_id - pop_group_id - located_fl - day_of_week - hwy_dsgn_lane_id - hwy_dsgn_hrt_id - hp_shldr_left - hp_shldr_right - hp_median_width - base_type_id - nbr_of_lane - row_width_usual - roadbed_width - surf_width - surf_type_id - curb_type_left_id - curb_type_right_id - shldr_type_left_id - shldr_width_left - shldr_use_left_id - shldr_type_right_id - shldr_width_right - shldr_use_right_id - median_type_id - median_width - rural_urban_type_id - func_sys_id - adt_curnt_amt - adt_curnt_year - adt_adj_curnt_amt - pct_single_trk_adt - pct_combo_trk_adt - trk_aadt_pct - curve_type_id - curve_lngth - cd_degr - delta_left_right_id - dd_degr - feature_crossed - structure_number - i_r_min_vert_clear - approach_width - bridge_median_id - bridge_loading_type_id - bridge_loading_in_1000_lbs - bridge_srvc_type_on_id - bridge_srvc_type_under_id - culvert_type_id - roadway_width - deck_width - bridge_dir_of_traffic_id - bridge_rte_struct_func_id - bridge_ir_struct_func_id - crossingnumber - rrco - poscrossing_id - wdcode_id - standstop - yield - sus_serious_injry_cnt - nonincap_injry_cnt - poss_injry_cnt - non_injry_cnt - unkn_injry_cnt - tot_injry_cnt - death_cnt - mpo_id - investigat_service_id - investigat_da_id - investigator_narrative - cr3_stored_flag - } - atd_txdot_changes( - where: { record_type: { _eq: "crash" }, record_id: { _eq: $crashId } } - ) { - change_id - record_id - created_timestamp - record_type - status { - description - } - status_id - record_json - } - } -`; - -/** - * Allows us to search all secondary records that are not a crash, - * namely: all involved primary persons, persons, and units. - * @type {gql} - */ -export const GET_CRASH_SECONDARY_RECORDS = gql` - query findSecondaryRecords($crashId: Int) { - atd_txdot_changes(where: { record_id: { _eq: $crashId } }) { - change_id - record_id - record_type - record_json - } - } -`; - -/** - * This is a GraphQL template that removes all change records in the - * changes table by CrashID upon being discarded. - * @type {string} - */ -export const CRASH_MUTATION_DISCARD = ` - mutation discardChanges($crashId: Int) { - delete_atd_txdot_changes(where: {record_id: {_eq: $crashId}}) { - affected_rows - } - } -`; - -/** - * This is a GraphQL query that updates existing crash records. - * @type {string} - */ -export const CRASH_MUTATION_UPDATE = gql` - mutation updatesCrashes( - $crashId: Int! - $changes: atd_txdot_crashes_set_input - ) { - update_atd_txdot_crashes_by_pk( - pk_columns: { crash_id: $crashId } - _set: $changes - ) { - crash_id - } - } -`; - -/** - * Removes all change records after having updated the database. - * @type {string} - */ -export const RECORD_DELETE_CHANGE_RECORDS = ` - mutation deleteChangeRecords($crashId: Int) { - delete_atd_txdot_changes ( - where: { - record_id: { _eq: $crashId } - record_type: { _in: ["crash", "unit", "primaryperson", "person", "charges"] } - } - ) { - affected_rows - } - } -`; diff --git a/atd-vze/src/queries/dashboard.js b/atd-vze/src/queries/dashboard.js index b73268283..20fa60f78 100644 --- a/atd-vze/src/queries/dashboard.js +++ b/atd-vze/src/queries/dashboard.js @@ -1,92 +1,22 @@ import { gql } from "apollo-boost"; -// These queries are derived from the ETL that populates our Socrata data sets +// This query is derived from the view that populates our Socrata dataset // so that the VZV and VZE widget totals match up -// See https://github.com/cityofaustin/atd-vz-data/blob/master/atd-etl/app/process/socrata_queries.py export const GET_CRASHES_YTD = gql` - query GetCrashesYTD($yearStart: date, $yearEnd: date) { - fatalities: atd_txdot_crashes_aggregate( - where: { - crash_date: { _lt: $yearEnd, _gte: $yearStart } - private_dr_fl: { _eq: "N" } - _and: [ - { crash_date: { _is_null: false } } - { crash_time: { _is_null: false } } - ] - _or: [ - { in_austin_full_purpose: { _eq: true } } - { _and: [{ city_id: { _eq: 22 } }, { position: { _is_null: true } }] } - ] - } + query GetCrashesYTD($yearStart: String!) { + socrata_export_crashes_view_aggregate( + where: { crash_timestamp: { _gte: $yearStart } } ) { aggregate { sum { - atd_fatality_count + death_cnt } } - } - seriousInjuriesAndTotal: atd_txdot_crashes_aggregate( - where: { - crash_date: { _lt: $yearEnd, _gte: $yearStart } - private_dr_fl: { _eq: "N" } - _and: [ - { crash_date: { _is_null: false } } - { crash_time: { _is_null: false } } - ] - _or: [ - { in_austin_full_purpose: { _eq: true } } - { _and: [{ city_id: { _eq: 22 } }, { position: { _is_null: true } }] } - ] - } - ) { aggregate { sum { sus_serious_injry_cnt } } - } - primaryPersonFatalities: atd_txdot_primaryperson_aggregate( - where: { - crash: { private_dr_fl: { _eq: "N" } } - _and: { - prsn_injry_sev_id: { _eq: 4 } - crash: { crash_date: { _lt: $yearEnd, _gte: $yearStart } } - _or: [ - { crash: { in_austin_full_purpose: { _eq: true } } } - { - _and: [ - { crash: { city_id: { _eq: 22 } } } - { crash: { position: { _is_null: true } } } - ] - } - ] - } - } - ) { - aggregate { - sum { - years_of_life_lost - } - } - } - personFatalities: atd_txdot_person_aggregate( - where: { - crash: { private_dr_fl: { _eq: "N" } } - _and: { - prsn_injry_sev_id: { _eq: 4 } - crash: { crash_date: { _lt: $yearEnd, _gte: $yearStart } } - _or: [ - { crash: { in_austin_full_purpose: { _eq: true } } } - { - _and: [ - { crash: { city_id: { _eq: 22 } } } - { crash: { position: { _is_null: true } } } - ] - } - ] - } - } - ) { aggregate { sum { years_of_life_lost diff --git a/atd-vze/src/queries/gqlAbstract.js b/atd-vze/src/queries/gqlAbstract.js index 745f36356..40b7d15d3 100644 --- a/atd-vze/src/queries/gqlAbstract.js +++ b/atd-vze/src/queries/gqlAbstract.js @@ -27,13 +27,6 @@ gqlAbstractTableName ( gqlAbstractFilters ) { gqlAbstractColumns -}, -gqlAbstractTableAggregateName ( - gqlAbstractAggregateFilters -) { - aggregate { - count - } } }`; } @@ -285,8 +278,6 @@ gqlAbstractTableAggregateName ( if (value === null) { return "-"; - } else { - value = String(value); } if (!!this.config.columns[columnName].filter) { @@ -464,17 +455,9 @@ gqlAbstractTableAggregateName ( // Replace the name of the table query = query.replace("gqlAbstractTableName", this.config["table"]); - query = query.replace( - "gqlAbstractTableAggregateName", - this.config["table"] + "_aggregate" - ); // Generate Filters query = query.replace("gqlAbstractFilters", this.generateFilters()); - query = query.replace( - "gqlAbstractAggregateFilters", - this.generateFilters(true) - ); // Generate Columns query = query.replace("gqlAbstractColumns", this.generateColumns()); @@ -496,17 +479,9 @@ gqlAbstractTableAggregateName ( // Replace the name of the table query = query.replace("gqlAbstractTableName", this.config["table"]); - query = query.replace( - "gqlAbstractTableAggregateName", - this.config["table"] + "_aggregate" - ); // Generate Filters query = query.replace("gqlAbstractFilters", this.generateFilters()); - query = query.replace( - "gqlAbstractAggregateFilters", - this.generateFilters(true) - ); // Generate Columns query = query.replace("gqlAbstractColumns", string); diff --git a/atd-vze/src/queries/locationNotes.js b/atd-vze/src/queries/locationNotes.js index f7c77e17e..20ff79414 100644 --- a/atd-vze/src/queries/locationNotes.js +++ b/atd-vze/src/queries/locationNotes.js @@ -1,30 +1,17 @@ import { gql } from "apollo-boost"; -export const GET_LOCATION_NOTES = gql` - query FindLocationNotes($recordId: String!) { - location_notes( - where: { location_id: { _eq: $recordId } } - order_by: { date: desc } - ) { - id - created_at - updated_at - date - text - user_email - location_id - } - } -`; - export const INSERT_LOCATION_NOTE = gql` mutation InsertLocationNote( $note: String! - $recordId: String! + $parentRecordId: String! $userEmail: String ) { insert_location_notes( - objects: { text: $note, location_id: $recordId, user_email: $userEmail } + objects: { + text: $note + location_id: $parentRecordId + user_email: $userEmail + } ) { returning { location_id diff --git a/atd-vze/src/queries/Locations.js b/atd-vze/src/queries/locations.js similarity index 61% rename from atd-vze/src/queries/Locations.js rename to atd-vze/src/queries/locations.js index 336fe5379..8ed68622f 100644 --- a/atd-vze/src/queries/Locations.js +++ b/atd-vze/src/queries/locations.js @@ -1,34 +1,32 @@ import { gql } from "apollo-boost"; export const GET_LOCATION = gql` - query GetLocation($id: String, $yearsAgoDate: date) { - atd_txdot_locations(where: { location_id: { _eq: $id } }) { + query GetLocation($id: String!) { + location: atd_txdot_locations_by_pk(location_id: $id) { location_id - address street_level description - shape + geometry latitude longitude - metadata - last_update - is_retired + location_notes { + id + created_at + date + location_id + text + updated_at + user_email + } crashes_by_manner_collision(order_by: { count: desc }, limit: 5) { collsn_desc count } - } - locationTotals: get_location_totals( - args: { - cr3_crash_date: $yearsAgoDate - noncr3_location: $id - noncr3_crash_date: $yearsAgoDate - cr3_location: $id + locationTotals: locations_list_view { + cr3_crash_count + non_cr3_crash_count + total_est_comp_cost } - ) { - total_crashes - total_est_comp_cost - noncr3_est_comp_cost } } `; @@ -51,10 +49,10 @@ export const UPDATE_LOCATION_POLYGON = gql` mutation UpdateLocation($locationId: String, $updatedPolygon: geometry!) { update_atd_txdot_locations( where: { location_id: { _eq: $locationId } } - _set: { shape: $updatedPolygon } + _set: { geometry: $updatedPolygon } ) { returning { - shape + geometry } } } @@ -63,8 +61,7 @@ export const UPDATE_LOCATION_POLYGON = gql` export const locationQueryExportFields = ` location_id description -crash_count -fatalities_count -serious_injury_count +cr3_crash_count +non_cr3_crash_count total_est_comp_cost `; diff --git a/atd-vze/src/queries/lookups.js b/atd-vze/src/queries/lookups.js index 1e6017181..4f98d2b93 100644 --- a/atd-vze/src/queries/lookups.js +++ b/atd-vze/src/queries/lookups.js @@ -2,95 +2,79 @@ import { gql } from "apollo-boost"; export const GET_LOOKUPS = gql` { - atd_txdot__city_lkp { - city_id - city_desc + lookups_city { + id + label } - atd_txdot__collsn_lkp { - collsn_id - collsn_desc + lookups_collsn { + id + label } - atd_txdot__light_cond_lkp { - light_cond_id - light_cond_desc + lookups_light_cond { + id + label } - atd_txdot__injry_sev_lkp { - injry_sev_id - injry_sev_desc + lookups_injry_sev { + id + label } - atd_txdot__intrsct_relat_lkp { - intrsct_relat_id - intrsct_relat_desc + lookups_obj_struck { + id + label } - atd_txdot__obj_struck_lkp { - obj_struck_desc - obj_struck_id + lookups_road_part { + id + label } - atd_txdot__road_part_lkp { - road_part_id - road_part_desc + lookups_rwy_sys { + id + label } - atd_txdot__road_type_lkp { - road_type_id - road_type_desc + lookups_traffic_cntl { + id + label } - atd_txdot__rwy_sys_lkp { - rwy_sys_id - rwy_sys_desc - } - atd_txdot__traffic_cntl_lkp { - traffic_cntl_id - traffic_cntl_desc - } - atd_txdot__wthr_cond_lkp { - wthr_cond_id - wthr_cond_desc - } - atd_txdot__y_n_lkp { - y_n_id - y_n_desc - } - atd_txdot__asmp_level_lkp { - asmp_level_id - asmp_level_desc + lookups_wthr_cond { + id + label } } `; export const GET_UNIT_LOOKUPS = gql` { - atd_txdot__trvl_dir_lkp { - trvl_dir_id - trvl_dir_desc + lookups_trvl_dir { + id + label } - atd_txdot__movt_lkp { - movement_id - movement_desc + lookups_unit_desc { + id + label } - atd_txdot__veh_unit_desc_lkp { - veh_unit_desc_id - veh_unit_desc_desc + lookups_veh_body_styl { + id + label } - atd_txdot__veh_body_styl_lkp { - veh_body_styl_id - veh_body_styl_desc + lookups_movt { + id + label } } `; export const GET_PERSON_LOOKUPS = gql` { - atd_txdot__injry_sev_lkp { - injry_sev_id - injry_sev_desc + lookups_injry_sev { + id + label } - atd_txdot__ethnicity_lkp { - ethnicity_id - ethnicity_desc + lookups_drvr_ethncty { + id + label } - atd_txdot__gndr_lkp { - gndr_id - gndr_desc + lookups_gndr { + id + label } } `; diff --git a/atd-vze/src/queries/people.js b/atd-vze/src/queries/people.js index 60d4d522f..f42dbf855 100644 --- a/atd-vze/src/queries/people.js +++ b/atd-vze/src/queries/people.js @@ -1,145 +1,9 @@ import { gql } from "apollo-boost"; -export const GET_PEOPLE = gql` - query FindPeople($crashId: Int) { - atd_txdot_primaryperson(where: { crash_id: { _eq: $crashId } }) { - prsn_age - prsn_nbr - primaryperson_id - prsn_injry_sev_id - drvr_zip - drvr_city_name - injury_severity { - injry_sev_desc - injry_sev_id - } - person_type { - prsn_type_desc - } - gender { - gndr_id - gndr_desc - } - ethnicity { - ethnicity_id - ethnicity_desc - } - unit_nbr - peh_fl - } - primary_person_years_of_life_lost: atd_txdot_primaryperson_aggregate( - where: { crash_id: { _eq: $crashId } } - ) { - aggregate { - sum { - years_of_life_lost - } - } - } - atd_txdot_person(where: { crash_id: { _eq: $crashId } }) { - prsn_age - prsn_nbr - person_id - prsn_injry_sev_id - injury_severity { - injry_sev_desc - injry_sev_id - } - person_type { - prsn_type_desc - } - gender { - gndr_id - gndr_desc - } - ethnicity { - ethnicity_id - ethnicity_desc - } - unit_nbr - peh_fl - } - person_years_of_life_lost: atd_txdot_person_aggregate( - where: { crash_id: { _eq: $crashId } } - ) { - aggregate { - sum { - years_of_life_lost - } - } - } - } -`; - -export const GET_PERSON_NAMES = gql` - query FindNames($crashId: Int, $personId: Int) { - atd_txdot_primaryperson( - where: { - crash_id: { _eq: $crashId } - _and: { primaryperson_id: { _eq: $personId } } - } - ) { - primaryperson_id - prsn_first_name - prsn_mid_name - prsn_last_name - } - atd_txdot_person( - where: { - crash_id: { _eq: $crashId } - _and: { person_id: { _eq: $personId } } - } - ) { - person_id - prsn_first_name - prsn_mid_name - prsn_last_name - } - } -`; - -export const UPDATE_PRIMARYPERSON = gql` - mutation UpdatePrimaryPerson( - $crashId: Int - $personId: Int - $changes: atd_txdot_primaryperson_set_input - ) { - update_atd_txdot_primaryperson( - where: { - crash_id: { _eq: $crashId } - _and: { primaryperson_id: { _eq: $personId } } - } - _set: $changes - ) { - affected_rows - returning { - primaryperson_id - crash_id - unit_nbr - } - } - } -`; - export const UPDATE_PERSON = gql` - mutation UpdatePerson( - $crashId: Int - $personId: Int - $changes: atd_txdot_person_set_input - ) { - update_atd_txdot_person( - where: { - crash_id: { _eq: $crashId } - _and: { person_id: { _eq: $personId } } - } - _set: $changes - ) { - affected_rows - returning { - person_id - crash_id - unit_nbr - } + mutation UpdatePerson($personId: Int!, $changes: people_edits_set_input) { + update_people_edits_by_pk(pk_columns: { id: $personId }, _set: $changes) { + id } } `; diff --git a/atd-vze/src/queries/recommendations.js b/atd-vze/src/queries/recommendations.js index 20de2c73a..9b082a45c 100644 --- a/atd-vze/src/queries/recommendations.js +++ b/atd-vze/src/queries/recommendations.js @@ -1,27 +1,7 @@ import { gql } from "apollo-boost"; -export const GET_RECOMMENDATIONS = gql` - query FindRecommendations($crashId: Int) { - recommendations(where: { crash_id: { _eq: $crashId } }) { - id - created_at - rec_text - created_by - crash_id - rec_update - atd__recommendation_status_lkp { - rec_status_desc - } - recommendations_partners { - id - partner_id - recommendation_id - atd__coordination_partners_lkp { - id - coord_partner_desc - } - } - } +export const GET_RECOMMENDATION_LOOKUPS = gql` + query FindRecommendationLookups { atd__coordination_partners_lkp(order_by: { coord_partner_desc: asc }) { id coord_partner_desc @@ -37,7 +17,7 @@ export const INSERT_RECOMMENDATION = gql` mutation InsertRecommendation( $text: String $update: String - $crashId: Int + $crashPk: Int $userEmail: String $recommendation_status_id: Int $partner_id: Int @@ -46,14 +26,14 @@ export const INSERT_RECOMMENDATION = gql` objects: { rec_text: $text rec_update: $update - crash_id: $crashId + crash_pk: $crashPk created_by: $userEmail recommendation_status_id: $recommendation_status_id recommendations_partners: { data: { partner_id: $partner_id } } } ) { returning { - crash_id + crash_pk rec_update rec_text created_at @@ -69,7 +49,7 @@ export const UPDATE_RECOMMENDATION = gql` $changes: recommendations_set_input ) { update_recommendations_by_pk(pk_columns: { id: $id }, _set: $changes) { - crash_id + crash_pk rec_text rec_update } diff --git a/atd-vze/src/queries/tempRecords.js b/atd-vze/src/queries/tempRecords.js new file mode 100644 index 000000000..356673417 --- /dev/null +++ b/atd-vze/src/queries/tempRecords.js @@ -0,0 +1,52 @@ +import { gql } from "apollo-boost"; + +export const GET_TEMP_RECORDS = gql` + query getTempRecords { + crashes( + order_by: { record_locator: desc } + where: { + is_temp_record: { _eq: true } + _and: { is_deleted: { _eq: false } } + } + ) { + id + record_locator + case_id + crash_timestamp + updated_by + updated_at + units { + id + } + } + } +`; + +export const SOFT_DELETE_TEMP_RECORDS = gql` + mutation softDeleteTempRecords($recordId: Int!, $updatedBy: String!) { + update_crashes_cris_by_pk( + pk_columns: { id: $recordId } + _set: { is_deleted: true, updated_by: $updatedBy } + ) { + id + } + update_units_cris( + where: { crash_pk: { _eq: $recordId } } + _set: { is_deleted: true, updated_by: $updatedBy } + ) { + returning { + id + crash_pk + } + } + update_people_cris( + where: { units_cris: { crash_pk: { _eq: $recordId } } } + _set: { is_deleted: true, updated_by: $updatedBy } + ) { + returning { + id + unit_id + } + } + } +`; diff --git a/atd-vze/src/queries/units.js b/atd-vze/src/queries/units.js index ee7b4abe4..41ed67355 100644 --- a/atd-vze/src/queries/units.js +++ b/atd-vze/src/queries/units.js @@ -1,67 +1,9 @@ import { gql } from "apollo-boost"; -export const GET_UNITS = gql` - query FindUnits($crashId: Int) { - atd_txdot_units(where: { crash_id: { _eq: $crashId } }) { - unit_desc_id - unit_nbr - contributing_factor_1 { - contrib_factr_desc - } - veh_make_id - veh_mod_id - veh_mod_year - travel_direction_desc { - trvl_dir_desc - trvl_dir_id - } - movement { - movement_desc - movement_id - } - unit_description { - veh_unit_desc_id - veh_unit_desc_desc - } - make { - veh_make_desc - } - model { - veh_mod_desc - } - body_style { - veh_body_styl_id - veh_body_styl_desc - } - death_cnt - sus_serious_injry_cnt - } - } -`; - export const UPDATE_UNIT = gql` - mutation UpdateUnits( - $crashId: Int - $unitId: Int - $changes: atd_txdot_units_set_input - ) { - update_atd_txdot_units( - where: { - crash_id: { _eq: $crashId } - _and: { unit_nbr: { _eq: $unitId } } - } - _set: $changes - ) { - affected_rows - returning { - crash_id - unit_id - unit_nbr - movement_id - death_cnt - sus_serious_injry_cnt - travel_direction - } + mutation UpdateUnits($unitId: Int!, $changes: units_edits_set_input) { + update_units_edits_by_pk(pk_columns: { id: $unitId }, _set: $changes) { + id } } `; diff --git a/atd-vze/src/routes.js b/atd-vze/src/routes.js index a39970f9f..0b75cdc68 100644 --- a/atd-vze/src/routes.js +++ b/atd-vze/src/routes.js @@ -1,50 +1,9 @@ import React from "react"; import { isAdmin, isItSupervisor } from "./auth/authContext"; -const Breadcrumbs = React.lazy(() => import("./views/Base/Breadcrumbs")); -const Cards = React.lazy(() => import("./views/Base/Cards")); -const Carousels = React.lazy(() => import("./views/Base/Carousels")); -const Collapses = React.lazy(() => import("./views/Base/Collapses")); -const Dropdowns = React.lazy(() => import("./views/Base/Dropdowns")); -const Forms = React.lazy(() => import("./views/Base/Forms")); -const Jumbotrons = React.lazy(() => import("./views/Base/Jumbotrons")); -const ListGroups = React.lazy(() => import("./views/Base/ListGroups")); -const Navbars = React.lazy(() => import("./views/Base/Navbars")); -const Navs = React.lazy(() => import("./views/Base/Navs")); -const Paginations = React.lazy(() => import("./views/Base/Paginations")); -const Popovers = React.lazy(() => import("./views/Base/Popovers")); -const ProgressBar = React.lazy(() => import("./views/Base/ProgressBar")); -const Switches = React.lazy(() => import("./views/Base/Switches")); -const Tables = React.lazy(() => import("./views/Base/Tables")); -const Tabs = React.lazy(() => import("./views/Base/Tabs")); -const Tooltips = React.lazy(() => import("./views/Base/Tooltips")); -const BrandButtons = React.lazy(() => import("./views/Buttons/BrandButtons")); -const ButtonDropdowns = React.lazy(() => - import("./views/Buttons/ButtonDropdowns") -); -const ButtonGroups = React.lazy(() => import("./views/Buttons/ButtonGroups")); -const Buttons = React.lazy(() => import("./views/Buttons/Buttons")); -const Charts = React.lazy(() => import("./views/Charts")); -const Dashboard = React.lazy(() => import("./views/Dashboard")); const VZDashboard = React.lazy(() => import("./views/VZDashboard")); -const CoreUIIcons = React.lazy(() => import("./views/Icons/CoreUIIcons")); -const Flags = React.lazy(() => import("./views/Icons/Flags")); -const FontAwesome = React.lazy(() => import("./views/Icons/FontAwesome")); -const SimpleLineIcons = React.lazy(() => - import("./views/Icons/SimpleLineIcons") -); -const Alerts = React.lazy(() => import("./views/Notifications/Alerts")); -const Badges = React.lazy(() => import("./views/Notifications/Badges")); -const Modals = React.lazy(() => import("./views/Notifications/Modals")); -const Colors = React.lazy(() => import("./views/Theme/Colors")); -const Typography = React.lazy(() => import("./views/Theme/Typography")); -const Widgets = React.lazy(() => import("./views/Widgets/Widgets")); -const Dev = React.lazy(() => import("./views/Dev/Dev")); + const Crashes = React.lazy(() => import("./views/Crashes/Crashes")); -const CrashesChanges = React.lazy(() => - import("./views/Crashes/CrashesChanges") -); -const CrashChange = React.lazy(() => import("./views/Crashes/CrashChange")); const Crash = React.lazy(() => import("./views/Crashes/Crash")); const Profile = React.lazy(() => import("./views/Profile/Profile")); const Locations = React.lazy(() => import("./views/Locations/Locations")); @@ -54,98 +13,17 @@ const Users = React.lazy(() => import("./views/Users/Users")); const User = React.lazy(() => import("./views/Users/User")); const AddUser = React.lazy(() => import("./views/Users/AddUser")); const EditUser = React.lazy(() => import("./views/Users/EditUser")); -const ReportsInconsistentKSI = React.lazy(() => - import("./views/Reports/ReportsInconsistentKSI") -); -const ToolsUploadNonCR3 = React.lazy(() => - import("./views/Tools/ToolsUploadNonCR3") +const UploadNonCR3 = React.lazy(() => + import("./views/UploadNonCr3/UploadNonCR3") ); const CreateCrashRecord = React.lazy(() => - import("./views/Tools/CreateCrashRecord") + import("./views/CreateCrashRecord/CreateCrashRecord") ); // https://github.com/ReactTraining/react-router/tree/master/packages/react-router-config // Accept roles arg for role-based access to routes const routes = roles => [ { path: "/", exact: true, name: "Home" }, - { path: "/dev/dashboard", name: "Dashboard", component: Dashboard }, - { path: "/dev/theme", exact: true, name: "Theme", component: Colors }, - { path: "/dev/theme/colors", name: "Colors", component: Colors }, - { path: "/dev/theme/typography", name: "Typography", component: Typography }, - { path: "/dev/base", exact: true, name: "Base", component: Cards }, - { path: "/dev/base/cards", name: "Cards", component: Cards }, - { path: "/dev/base/forms", name: "Forms", component: Forms }, - { path: "/dev/base/switches", name: "Switches", component: Switches }, - { path: "/dev/base/tables", name: "Tables", component: Tables }, - { path: "/dev/base/tabs", name: "Tabs", component: Tabs }, - { - path: "/dev/base/breadcrumbs", - name: "Breadcrumbs", - component: Breadcrumbs, - }, - { path: "/dev/base/carousels", name: "Carousel", component: Carousels }, - { path: "/dev/base/collapses", name: "Collapse", component: Collapses }, - { path: "/dev/base/dropdowns", name: "Dropdowns", component: Dropdowns }, - { path: "/dev/base/jumbotrons", name: "Jumbotrons", component: Jumbotrons }, - { path: "/dev/base/list-groups", name: "List Groups", component: ListGroups }, - { path: "/dev/base/navbars", name: "Navbars", component: Navbars }, - { path: "/dev/base/navs", name: "Navs", component: Navs }, - { - path: "/dev/base/paginations", - name: "Paginations", - component: Paginations, - }, - { path: "/dev/base/popovers", name: "Popovers", component: Popovers }, - { - path: "/dev/base/progress-bar", - name: "Progress Bar", - component: ProgressBar, - }, - { path: "/dev/base/tooltips", name: "Tooltips", component: Tooltips }, - { path: "/dev/buttons", exact: true, name: "Buttons", component: Buttons }, - { path: "/dev/buttons/buttons", name: "Buttons", component: Buttons }, - { - path: "/dev/buttons/button-dropdowns", - name: "Button Dropdowns", - component: ButtonDropdowns, - }, - { - path: "/dev/buttons/button-groups", - name: "Button Groups", - component: ButtonGroups, - }, - { - path: "/dev/buttons/brand-buttons", - name: "Brand Buttons", - component: BrandButtons, - }, - { path: "/dev/icons", exact: true, name: "Icons", component: CoreUIIcons }, - { - path: "/dev/icons/coreui-icons", - name: "CoreUI Icons", - component: CoreUIIcons, - }, - { path: "/dev/icons/flags", name: "Flags", component: Flags }, - { - path: "/dev/icons/font-awesome", - name: "Font Awesome", - component: FontAwesome, - }, - { - path: "/dev/icons/simple-line-icons", - name: "Simple Line Icons", - component: SimpleLineIcons, - }, - { - path: "/dev/notifications", - exact: true, - name: "Notifications", - component: Alerts, - }, - { path: "/dev/notifications/alerts", name: "Alerts", component: Alerts }, - { path: "/dev/notifications/badges", name: "Badges", component: Badges }, - { path: "/dev/notifications/modals", name: "Modals", component: Modals }, - { path: "/dev/widgets", name: "Widgets", component: Widgets }, - { path: "/dev/charts", name: "Charts", component: Charts }, + { path: "/profile", name: "Profile", component: Profile }, { path: "/dashboard", @@ -173,38 +51,14 @@ const routes = roles => [ name: "Fatalities", component: Fatalities, }, - { - path: "/dev", - exact: true, - name: "Demo UI Components", - component: Dev, - }, - (isAdmin(roles) || isItSupervisor(roles)) && { - path: "/changes", - exact: true, - name: "Crash Changes", - component: CrashesChanges, - }, - (isAdmin(roles) || isItSupervisor(roles)) && { - path: "/changes/:id", - exact: true, - name: "Crash Change", - component: CrashChange, - }, - (isAdmin(roles) || isItSupervisor(roles)) && { - path: "/reports/inconsistent_ksi_counts", - exact: true, - name: "Crashes with Inconsistent KSI Counts", - component: ReportsInconsistentKSI, - }, (isAdmin(roles) || isItSupervisor(roles)) && { - path: "/tools/upload_non_cr3", + path: "/upload_non_cr3", exact: true, name: "Upload Non-CR3 Crashes", - component: ToolsUploadNonCR3, + component: UploadNonCR3, }, (isAdmin(roles) || isItSupervisor(roles)) && { - path: "/tools/create_crash_record", + path: "/create_crash_record", exact: true, name: "Create Crash Record", component: CreateCrashRecord, diff --git a/atd-vze/src/views/Base/Breadcrumbs/Breadcrumbs.js b/atd-vze/src/views/Base/Breadcrumbs/Breadcrumbs.js deleted file mode 100644 index 8ace6c91b..000000000 --- a/atd-vze/src/views/Base/Breadcrumbs/Breadcrumbs.js +++ /dev/null @@ -1,78 +0,0 @@ -import React, { Component } from "react"; -import { - Breadcrumb, - BreadcrumbItem, - Card, - CardBody, - CardHeader, - Col, - Row, -} from "reactstrap"; - -class Breadcrumbs extends Component { - render() { - return ( -
- - - - - - Breadcrumbs - - - - - Home - - - {/*eslint-disable-next-line*/} - - Home - - Library - - - {/*eslint-disable-next-line*/} - - Home - - {/* eslint-disable-next-line*/} - - Library - - Data - - - - Home - - - Library - - - Data - - - Bootstrap - - - - - - -
- ); - } -} - -export default Breadcrumbs; diff --git a/atd-vze/src/views/Base/Breadcrumbs/Breadcrumbs.test.js b/atd-vze/src/views/Base/Breadcrumbs/Breadcrumbs.test.js deleted file mode 100644 index c6060d4d4..000000000 --- a/atd-vze/src/views/Base/Breadcrumbs/Breadcrumbs.test.js +++ /dev/null @@ -1,9 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom"; -import Breadcrumbs from "./Breadcrumbs"; - -it("renders without crashing", () => { - const div = document.createElement("div"); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); diff --git a/atd-vze/src/views/Base/Breadcrumbs/package.json b/atd-vze/src/views/Base/Breadcrumbs/package.json deleted file mode 100644 index 10f4aaad3..000000000 --- a/atd-vze/src/views/Base/Breadcrumbs/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "Breadcrumbs", - "version": "0.0.0", - "private": true, - "main": "./Breadcrumbs.js" -} diff --git a/atd-vze/src/views/Base/Cards/Cards.js b/atd-vze/src/views/Base/Cards/Cards.js deleted file mode 100644 index c042d6b14..000000000 --- a/atd-vze/src/views/Base/Cards/Cards.js +++ /dev/null @@ -1,501 +0,0 @@ -import React, { Component } from "react"; -import { - Badge, - Card, - CardBody, - CardFooter, - CardHeader, - Col, - Row, - Collapse, - Fade, -} from "reactstrap"; -import { AppSwitch } from "@coreui/react"; - -class Cards extends Component { - constructor(props) { - super(props); - - this.toggle = this.toggle.bind(this); - this.toggleFade = this.toggleFade.bind(this); - this.state = { - collapse: true, - fadeIn: true, - timeout: 300, - }; - } - - toggle() { - this.setState({ collapse: !this.state.collapse }); - } - - toggleFade() { - this.setState(prevState => { - return { fadeIn: !prevState }; - }); - } - - render() { - return ( -
- - - - Card title - - Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed - diam nonummy nibh euismod tincidunt ut laoreet dolore magna - aliquam erat volutpat. Ut wisi enim ad minim veniam, quis - nostrud exerci tation ullamcorper suscipit lobortis nisl ut - aliquip ex ea commodo consequat. - - - - - - - Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed - diam nonummy nibh euismod tincidunt ut laoreet dolore magna - aliquam erat volutpat. Ut wisi enim ad minim veniam, quis - nostrud exerci tation ullamcorper suscipit lobortis nisl ut - aliquip ex ea commodo consequat. - - Card footer - - - - - - Card with icon -
- -
-
- - Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed - diam nonummy nibh euismod tincidunt ut laoreet dolore magna - aliquam erat volutpat. Ut wisi enim ad minim veniam, quis - nostrud exerci tation ullamcorper suscipit lobortis nisl ut - aliquip ex ea commodo consequat. - -
- - - - - Card with switch -
- -
-
- - Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed - diam nonummy nibh euismod tincidunt ut laoreet dolore magna - aliquam erat volutpat. Ut wisi enim ad minim veniam, quis - nostrud exerci tation ullamcorper suscipit lobortis nisl ut - aliquip ex ea commodo consequat. - -
- - - - - Card with label -
- - Success - -
-
- - Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed - diam nonummy nibh euismod tincidunt ut laoreet dolore magna - aliquam erat volutpat. Ut wisi enim ad minim veniam, quis - nostrud exerci tation ullamcorper suscipit lobortis nisl ut - aliquip ex ea commodo consequat. - -
- - - - - Card with label -
- - 42 - -
-
- - Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed - diam nonummy nibh euismod tincidunt ut laoreet dolore magna - aliquam erat volutpat. Ut wisi enim ad minim veniam, quis - nostrud exerci tation ullamcorper suscipit lobortis nisl ut - aliquip ex ea commodo consequat. - -
- -
- - - - Card outline primary - - Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed - diam nonummy nibh euismod tincidunt ut laoreet dolore magna - aliquam erat volutpat. Ut wisi enim ad minim veniam, quis - nostrud exerci tation ullamcorper suscipit lobortis nisl ut - aliquip ex ea commodo consequat. - - - - - - Card outline secondary - - Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed - diam nonummy nibh euismod tincidunt ut laoreet dolore magna - aliquam erat volutpat. Ut wisi enim ad minim veniam, quis - nostrud exerci tation ullamcorper suscipit lobortis nisl ut - aliquip ex ea commodo consequat. - - - - - - Card outline success - - Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed - diam nonummy nibh euismod tincidunt ut laoreet dolore magna - aliquam erat volutpat. Ut wisi enim ad minim veniam, quis - nostrud exerci tation ullamcorper suscipit lobortis nisl ut - aliquip ex ea commodo consequat. - - - - - - Card outline info - - Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed - diam nonummy nibh euismod tincidunt ut laoreet dolore magna - aliquam erat volutpat. Ut wisi enim ad minim veniam, quis - nostrud exerci tation ullamcorper suscipit lobortis nisl ut - aliquip ex ea commodo consequat. - - - - - - Card outline warning - - Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed - diam nonummy nibh euismod tincidunt ut laoreet dolore magna - aliquam erat volutpat. Ut wisi enim ad minim veniam, quis - nostrud exerci tation ullamcorper suscipit lobortis nisl ut - aliquip ex ea commodo consequat. - - - - - - Card outline danger - - Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed - diam nonummy nibh euismod tincidunt ut laoreet dolore magna - aliquam erat volutpat. Ut wisi enim ad minim veniam, quis - nostrud exerci tation ullamcorper suscipit lobortis nisl ut - aliquip ex ea commodo consequat. - - - - - - - - - Card with accent - - Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed - diam nonummy nibh euismod tincidunt ut laoreet dolore magna - aliquam erat volutpat. Ut wisi enim ad minim veniam, quis - nostrud exerci tation ullamcorper suscipit lobortis nisl ut - aliquip ex ea commodo consequat. - - - - - - Card with accent - - Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed - diam nonummy nibh euismod tincidunt ut laoreet dolore magna - aliquam erat volutpat. Ut wisi enim ad minim veniam, quis - nostrud exerci tation ullamcorper suscipit lobortis nisl ut - aliquip ex ea commodo consequat. - - - - - - Card with accent - - Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed - diam nonummy nibh euismod tincidunt ut laoreet dolore magna - aliquam erat volutpat. Ut wisi enim ad minim veniam, quis - nostrud exerci tation ullamcorper suscipit lobortis nisl ut - aliquip ex ea commodo consequat. - - - - - - Card with accent - - Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed - diam nonummy nibh euismod tincidunt ut laoreet dolore magna - aliquam erat volutpat. Ut wisi enim ad minim veniam, quis - nostrud exerci tation ullamcorper suscipit lobortis nisl ut - aliquip ex ea commodo consequat. - - - - - - Card with accent - - Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed - diam nonummy nibh euismod tincidunt ut laoreet dolore magna - aliquam erat volutpat. Ut wisi enim ad minim veniam, quis - nostrud exerci tation ullamcorper suscipit lobortis nisl ut - aliquip ex ea commodo consequat. - - - - - - Card with accent - - Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed - diam nonummy nibh euismod tincidunt ut laoreet dolore magna - aliquam erat volutpat. Ut wisi enim ad minim veniam, quis - nostrud exerci tation ullamcorper suscipit lobortis nisl ut - aliquip ex ea commodo consequat. - - - - - - - - -
-

- Lorem ipsum dolor sit amet, consectetur adipiscing elit. - Integer posuere erat a ante. -

-
- Someone famous in{" "} - Source Title -
-
-
-
- - - - -
-

- Lorem ipsum dolor sit amet, consectetur adipiscing elit. - Integer posuere erat a ante. -

-
- Someone famous in{" "} - Source Title -
-
-
-
- - - - -
-

- Lorem ipsum dolor sit amet, consectetur adipiscing elit. - Integer posuere erat a ante. -

-
- Someone famous in{" "} - Source Title -
-
-
-
- - - - -
-

- Lorem ipsum dolor sit amet, consectetur adipiscing elit. - Integer posuere erat a ante. -

-
- Someone famous in{" "} - Source Title -
-
-
-
- - - - -
-

- Lorem ipsum dolor sit amet, consectetur adipiscing elit. - Integer posuere erat a ante. -

-
- Someone famous in{" "} - Source Title -
-
-
-
- - - - -
-

- Lorem ipsum dolor sit amet, consectetur adipiscing elit. - Integer posuere erat a ante. -

-
- Someone famous in{" "} - Source Title -
-
-
-
- -
- - - - Card title - - Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed - diam nonummy nibh euismod tincidunt ut laoreet dolore magna - aliquam erat volutpat. Ut wisi enim ad minim veniam, quis - nostrud exerci tation ullamcorper suscipit lobortis nisl ut - aliquip ex ea commodo consequat. - - - - - - Card title - - Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed - diam nonummy nibh euismod tincidunt ut laoreet dolore magna - aliquam erat volutpat. Ut wisi enim ad minim veniam, quis - nostrud exerci tation ullamcorper suscipit lobortis nisl ut - aliquip ex ea commodo consequat. - - - - - - Card title - - Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed - diam nonummy nibh euismod tincidunt ut laoreet dolore magna - aliquam erat volutpat. Ut wisi enim ad minim veniam, quis - nostrud exerci tation ullamcorper suscipit lobortis nisl ut - aliquip ex ea commodo consequat. - - - - - - Card title - - Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed - diam nonummy nibh euismod tincidunt ut laoreet dolore magna - aliquam erat volutpat. Ut wisi enim ad minim veniam, quis - nostrud exerci tation ullamcorper suscipit lobortis nisl ut - aliquip ex ea commodo consequat. - - - - - - Card title - - Lorem ipsum dolor sit amet, consectetuer adipiscing elit, sed - diam nonummy nibh euismod tincidunt ut laoreet dolore magna - aliquam erat volutpat. Ut wisi enim ad minim veniam, quis - nostrud exerci tation ullamcorper suscipit lobortis nisl ut - aliquip ex ea commodo consequat. - - - - - - - - Card actions -
- {/*eslint-disable-next-line*/} - - - - {/*eslint-disable-next-line*/} - - - - {/*eslint-disable-next-line*/} - - - -
-
- - - Lorem ipsum dolor sit amet, consectetuer adipiscing elit, - sed diam nonummy nibh euismod tincidunt ut laoreet dolore - magna aliquam erat volutpat. Ut wisi enim ad minim veniam, - quis nostrud exerci tation ullamcorper suscipit lobortis - nisl ut aliquip ex ea commodo consequat. - - -
-
- -
-
- ); - } -} - -export default Cards; diff --git a/atd-vze/src/views/Base/Cards/Cards.test.js b/atd-vze/src/views/Base/Cards/Cards.test.js deleted file mode 100644 index 209af8302..000000000 --- a/atd-vze/src/views/Base/Cards/Cards.test.js +++ /dev/null @@ -1,9 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom"; -import Cards from "./Cards"; - -it("renders without crashing", () => { - const div = document.createElement("div"); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); diff --git a/atd-vze/src/views/Base/Cards/package.json b/atd-vze/src/views/Base/Cards/package.json deleted file mode 100644 index 2c51b3f34..000000000 --- a/atd-vze/src/views/Base/Cards/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "Cards", - "version": "0.0.0", - "private": true, - "main": "./Cards.js" -} diff --git a/atd-vze/src/views/Base/Carousels/Carousels.js b/atd-vze/src/views/Base/Carousels/Carousels.js deleted file mode 100644 index e941f67f5..000000000 --- a/atd-vze/src/views/Base/Carousels/Carousels.js +++ /dev/null @@ -1,178 +0,0 @@ -import React, { Component } from "react"; -import { - Card, - CardBody, - CardHeader, - Carousel, - CarouselCaption, - CarouselControl, - CarouselIndicators, - CarouselItem, - Col, - Row, -} from "reactstrap"; - -const items = [ - { - src: - "data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%22800%22%20height%3D%22400%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20800%20400%22%20preserveAspectRatio%3D%22none%22%3E%3Cdefs%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%23holder_1607923e7e2%20text%20%7B%20fill%3A%23555%3Bfont-weight%3Anormal%3Bfont-family%3AHelvetica%2C%20monospace%3Bfont-size%3A40pt%20%7D%20%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22holder_1607923e7e2%22%3E%3Crect%20width%3D%22800%22%20height%3D%22400%22%20fill%3D%22%23777%22%3E%3C%2Frect%3E%3Cg%3E%3Ctext%20x%3D%22285.9296875%22%20y%3D%22217.75625%22%3EFirst%20slide%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E", - altText: "Slide 1", - caption: "Slide 1", - }, - { - src: - "data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%22800%22%20height%3D%22400%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20800%20400%22%20preserveAspectRatio%3D%22none%22%3E%3Cdefs%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%23holder_15ba800aa20%20text%20%7B%20fill%3A%23444%3Bfont-weight%3Anormal%3Bfont-family%3AHelvetica%2C%20monospace%3Bfont-size%3A40pt%20%7D%20%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22holder_15ba800aa20%22%3E%3Crect%20width%3D%22800%22%20height%3D%22400%22%20fill%3D%22%23666%22%3E%3C%2Frect%3E%3Cg%3E%3Ctext%20x%3D%22247.3203125%22%20y%3D%22218.3%22%3ESecond%20slide%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E", - altText: "Slide 2", - caption: "Slide 2", - }, - { - src: - "data:image/svg+xml;charset=UTF-8,%3Csvg%20width%3D%22800%22%20height%3D%22400%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20800%20400%22%20preserveAspectRatio%3D%22none%22%3E%3Cdefs%3E%3Cstyle%20type%3D%22text%2Fcss%22%3E%23holder_15ba800aa21%20text%20%7B%20fill%3A%23333%3Bfont-weight%3Anormal%3Bfont-family%3AHelvetica%2C%20monospace%3Bfont-size%3A40pt%20%7D%20%3C%2Fstyle%3E%3C%2Fdefs%3E%3Cg%20id%3D%22holder_15ba800aa21%22%3E%3Crect%20width%3D%22800%22%20height%3D%22400%22%20fill%3D%22%23555%22%3E%3C%2Frect%3E%3Cg%3E%3Ctext%20x%3D%22277%22%20y%3D%22218.3%22%3EThird%20slide%3C%2Ftext%3E%3C%2Fg%3E%3C%2Fg%3E%3C%2Fsvg%3E", - altText: "Slide 3", - caption: "Slide 3", - }, -]; - -class Carousels extends Component { - constructor(props) { - super(props); - this.state = { activeIndex: 0 }; - this.next = this.next.bind(this); - this.previous = this.previous.bind(this); - this.goToIndex = this.goToIndex.bind(this); - this.onExiting = this.onExiting.bind(this); - this.onExited = this.onExited.bind(this); - } - - onExiting() { - this.animating = true; - } - - onExited() { - this.animating = false; - } - - next() { - if (this.animating) return; - const nextIndex = - this.state.activeIndex === items.length - 1 - ? 0 - : this.state.activeIndex + 1; - this.setState({ activeIndex: nextIndex }); - } - - previous() { - if (this.animating) return; - const nextIndex = - this.state.activeIndex === 0 - ? items.length - 1 - : this.state.activeIndex - 1; - this.setState({ activeIndex: nextIndex }); - } - - goToIndex(newIndex) { - if (this.animating) return; - this.setState({ activeIndex: newIndex }); - } - - render() { - const { activeIndex } = this.state; - - const slides = items.map(item => { - return ( - - {item.altText} - - ); - }); - - const slides2 = items.map(item => { - return ( - - {item.altText} - - - ); - }); - - return ( -
- - - - - - Carousel - - - - - {slides} - - - - - - - - - Carousel - - - - - {slides2} - - - - - - - -
- ); - } -} - -export default Carousels; diff --git a/atd-vze/src/views/Base/Carousels/Carousels.test.js b/atd-vze/src/views/Base/Carousels/Carousels.test.js deleted file mode 100644 index ba63ed9e3..000000000 --- a/atd-vze/src/views/Base/Carousels/Carousels.test.js +++ /dev/null @@ -1,9 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom"; -import Carousels from "./Carousels"; - -it("renders without crashing", () => { - const div = document.createElement("div"); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); diff --git a/atd-vze/src/views/Base/Carousels/package.json b/atd-vze/src/views/Base/Carousels/package.json deleted file mode 100644 index 301df3bd3..000000000 --- a/atd-vze/src/views/Base/Carousels/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "Carousels", - "version": "0.0.0", - "private": true, - "main": "./Carousels.js" -} diff --git a/atd-vze/src/views/Base/Collapses/Collapses.js b/atd-vze/src/views/Base/Collapses/Collapses.js deleted file mode 100644 index 47d50a2d6..000000000 --- a/atd-vze/src/views/Base/Collapses/Collapses.js +++ /dev/null @@ -1,364 +0,0 @@ -import React, { Component } from "react"; -import { - Badge, - Button, - Card, - CardBody, - CardFooter, - CardHeader, - Col, - Collapse, - Fade, - Row, -} from "reactstrap"; - -class Collapses extends Component { - constructor(props) { - super(props); - this.onEntering = this.onEntering.bind(this); - this.onEntered = this.onEntered.bind(this); - this.onExiting = this.onExiting.bind(this); - this.onExited = this.onExited.bind(this); - this.toggle = this.toggle.bind(this); - this.toggleAccordion = this.toggleAccordion.bind(this); - this.toggleCustom = this.toggleCustom.bind(this); - this.toggleFade = this.toggleFade.bind(this); - this.state = { - collapse: false, - accordion: [true, false, false], - custom: [true, false], - status: "Closed", - fadeIn: true, - timeout: 300, - }; - } - - onEntering() { - this.setState({ status: "Opening..." }); - } - - onEntered() { - this.setState({ status: "Opened" }); - } - - onExiting() { - this.setState({ status: "Closing..." }); - } - - onExited() { - this.setState({ status: "Closed" }); - } - - toggle() { - this.setState({ collapse: !this.state.collapse }); - } - - toggleAccordion(tab) { - const prevState = this.state.accordion; - const state = prevState.map((x, index) => (tab === index ? !x : false)); - - this.setState({ - accordion: state, - }); - } - - toggleCustom(tab) { - const prevState = this.state.custom; - const state = prevState.map((x, index) => (tab === index ? !x : false)); - - this.setState({ - custom: state, - }); - } - - toggleFade() { - this.setState({ fadeIn: !this.state.fadeIn }); - } - - render() { - return ( -
- - - - - - Collapse - - - - -

- Anim pariatur cliche reprehenderit, enim eiusmod high life - accusamus terry richardson ad squid. Nihil anim keffiyeh - helvetica, craft beer labore wes anderson cred nesciunt - sapiente ea proident. -

-

- Donec molestie odio id nisi malesuada, mattis tincidunt - velit egestas. Sed non pulvinar risus. Aenean elementum - eleifend nunc, pellentesque dapibus arcu hendrerit - fringilla. Aliquam in nibh massa. Cras ultricies lorem non - enim volutpat, a eleifend urna placerat. Fusce id luctus - urna. In sed leo tellus. Mauris tristique leo a nisl - feugiat, eget vehicula leo venenatis. Quisque magna metus, - luctus quis sollicitudin vel, vehicula nec ipsum. Donec - rutrum commodo lacus ut condimentum. Integer vel turpis - purus. Etiam vehicula, nulla non fringilla blandit, massa - purus faucibus tellus, a luctus enim orci non augue. Aenean - ullamcorper nisl urna, non feugiat tortor volutpat in. - Vivamus lobortis massa dolor, eget faucibus ipsum varius - eget. Pellentesque imperdiet, turpis sed sagittis lobortis, - leo elit laoreet arcu, vehicula sagittis elit leo id nisi. -

-
-
- - -
-
Current state: {this.state.status}
-
-
- - - - Fade - - - - - This content will fade in and out as the button is pressed... - - - - - - - - - - - Collapse{" "} - accordion -
- NEW -
-
- -
- - - - - - - 1. Anim pariatur cliche reprehenderit, enim eiusmod high - life accusamus terry richardson ad squid. 3 wolf moon - officia aute, non cupidatat skateboard dolor brunch. - Food truck quinoa nesciunt laborum eiusmod. Brunch 3 - wolf moon tempor, sunt aliqua put a bird on it squid - single-origin coffee nulla assumenda shoreditch et. - Nihil anim keffiyeh helvetica, craft beer labore wes - anderson cred nesciunt sapiente ea proident. Ad vegan - excepteur butcher vice lomo. Leggings occaecat craft - beer farm-to-table, raw denim aesthetic synth nesciunt - you probably haven't heard of them accusamus labore - sustainable VHS. - - - - - - - - - - 2. Anim pariatur cliche reprehenderit, enim eiusmod high - life accusamus terry richardson ad squid. 3 wolf moon - officia aute, non cupidatat skateboard dolor brunch. - Food truck quinoa nesciunt laborum eiusmod. Brunch 3 - wolf moon tempor, sunt aliqua put a bird on it squid - single-origin coffee nulla assumenda shoreditch et. - Nihil anim keffiyeh helvetica, craft beer labore wes - anderson cred nesciunt sapiente ea proident. Ad vegan - excepteur butcher vice lomo. Leggings occaecat craft - beer farm-to-table, raw denim aesthetic synth nesciunt - you probably haven't heard of them accusamus labore - sustainable VHS. - - - - - - - - - - 3. Anim pariatur cliche reprehenderit, enim eiusmod high - life accusamus terry richardson ad squid. 3 wolf moon - officia aute, non cupidatat skateboard dolor brunch. - Food truck quinoa nesciunt laborum eiusmod. Brunch 3 - wolf moon tempor, sunt aliqua put a bird on it squid - single-origin coffee nulla assumenda shoreditch et. - Nihil anim keffiyeh helvetica, craft beer labore wes - anderson cred nesciunt sapiente ea proident. Ad vegan - excepteur butcher vice lomo. Leggings occaecat craft - beer farm-to-table, raw denim aesthetic synth nesciunt - you probably haven't heard of them accusamus labore - sustainable VHS. - - - -
-
-
- - - Collapse{" "} - custom accordion -
- NEW -
-
- -
-
- - -

- Lorem ipsum dolor sit amet, consectetur adipiscing elit. - Sed pretium lorem non vestibulum scelerisque. Proin a - vestibulum sem, eget tristique massa. Aliquam lacinia - rhoncus nibh quis ornare. -

-
-
-
- - -

- Donec at ipsum dignissim, rutrum turpis scelerisque, - tristique lectus. Pellentesque habitant morbi tristique - senectus et netus et malesuada fames ac turpis egestas. - Vivamus nec dui turpis. Orci varius natoque penatibus et - magnis dis parturient montes, nascetur ridiculus mus. -

-
-
-
-
-
- -
-
- ); - } -} - -export default Collapses; diff --git a/atd-vze/src/views/Base/Collapses/Collapses.test.js b/atd-vze/src/views/Base/Collapses/Collapses.test.js deleted file mode 100644 index 27b69c5ed..000000000 --- a/atd-vze/src/views/Base/Collapses/Collapses.test.js +++ /dev/null @@ -1,73 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom"; -import Collapses from "./Collapses"; -import { mount } from "enzyme/build"; - -it("renders without crashing", () => { - const div = document.createElement("div"); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); - -describe("toggle clicks", function() { - it("collapse without crashing", () => { - const wrapper = mount(); - let collapse = wrapper.find("#toggleCollapse1").at(0); - collapse.simulate("click"); - expect(wrapper.state().collapse).toEqual(true); - collapse.simulate("click"); - expect(wrapper.state().collapse).toEqual(false); - collapse.simulate("click"); - expect(wrapper.state().collapse).toEqual(true); - wrapper.unmount(); - }); - it("fade without crashing", () => { - const wrapper = mount(); - let fade = wrapper.find("#toggleFade1").at(0); - fade.simulate("click"); - expect(wrapper.state().fadeIn).toEqual(false); - fade.simulate("click"); - expect(wrapper.state().fadeIn).toEqual(true); - wrapper.unmount(); - }); - it("accordion without crashing", () => { - const wrapper = mount(); - let accordion = wrapper.find('[aria-controls="collapseOne"]').at(0); - accordion.simulate("click"); - expect(wrapper.state().accordion[0]).toEqual(false); - expect(wrapper.state().accordion[1]).toEqual(false); - expect(wrapper.state().accordion[2]).toEqual(false); - accordion = wrapper.find('[aria-controls="collapseTwo"]').at(0); - accordion.simulate("click"); - expect(wrapper.state().accordion[0]).toEqual(false); - expect(wrapper.state().accordion[1]).toEqual(true); - expect(wrapper.state().accordion[2]).toEqual(false); - accordion = wrapper.find('[aria-controls="collapseThree"]').at(0); - accordion.simulate("click"); - expect(wrapper.state().accordion[0]).toEqual(false); - expect(wrapper.state().accordion[1]).toEqual(false); - expect(wrapper.state().accordion[2]).toEqual(true); - accordion = wrapper.find('[aria-controls="collapseOne"]').at(0); - accordion.simulate("click"); - expect(wrapper.state().accordion[0]).toEqual(true); - expect(wrapper.state().accordion[1]).toEqual(false); - expect(wrapper.state().accordion[2]).toEqual(false); - wrapper.unmount(); - }); - it("custom without crashing", () => { - const wrapper = mount(); - let accordion = wrapper.find('[aria-controls="exampleAccordion1"]').at(0); - accordion.simulate("click"); - expect(wrapper.state().custom[0]).toEqual(false); - expect(wrapper.state().custom[1]).toEqual(false); - accordion = wrapper.find('[aria-controls="exampleAccordion1"]').at(0); - accordion.simulate("click"); - expect(wrapper.state().custom[0]).toEqual(true); - expect(wrapper.state().custom[1]).toEqual(false); - accordion = wrapper.find('[aria-controls="exampleAccordion2"]').at(0); - accordion.simulate("click"); - expect(wrapper.state().custom[0]).toEqual(false); - expect(wrapper.state().custom[1]).toEqual(true); - wrapper.unmount(); - }); -}); diff --git a/atd-vze/src/views/Base/Collapses/package.json b/atd-vze/src/views/Base/Collapses/package.json deleted file mode 100644 index 542809370..000000000 --- a/atd-vze/src/views/Base/Collapses/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "Collapses", - "version": "0.0.0", - "private": true, - "main": "./Collapses.js" -} diff --git a/atd-vze/src/views/Base/Dropdowns/Dropdowns.js b/atd-vze/src/views/Base/Dropdowns/Dropdowns.js deleted file mode 100644 index bbd2898bc..000000000 --- a/atd-vze/src/views/Base/Dropdowns/Dropdowns.js +++ /dev/null @@ -1,240 +0,0 @@ -import React, { Component } from "react"; -import { - Card, - CardBody, - CardHeader, - Col, - Dropdown, - DropdownItem, - DropdownMenu, - DropdownToggle, - Row, - UncontrolledDropdown, -} from "reactstrap"; - -class Dropdowns extends Component { - constructor(props) { - super(props); - - this.toggle = this.toggle.bind(this); - this.state = { - dropdownOpen: new Array(6).fill(false), - }; - } - - toggle(i) { - const newArray = this.state.dropdownOpen.map((element, index) => { - return index === i ? !element : false; - }); - this.setState({ - dropdownOpen: newArray, - }); - } - - render() { - return ( -
- - - - - - Dropdowns - - - - { - this.toggle(0); - }} - > - Dropdown - - Header - Action - Another Action - - Another Action - - - - - - - - Dropdowns - alignment - - - { - this.toggle(1); - }} - > - - This dropdown's menu is right-aligned - - - Header - Action - Another Action - - Another Action - - - - - - - - Dropdowns - sizing - - - { - this.toggle(2); - }} - size="lg" - className="mb-3" - > - Large Dropdown - - Header - Action - Another Action - - Another Action - - - { - this.toggle(3); - }} - className="mb-3" - > - Normal Dropdown - - Header - Action - Another Action - - Another Action - - - { - this.toggle(4); - }} - size="sm" - > - Small Dropdown - - Header - Action - Another Action - - Another Action - - - - - - - - Custom Dropdowns - - - { - this.toggle(5); - }} - > - { - this.toggle(5); - }} - data-toggle="dropdown" - aria-expanded={this.state.dropdownOpen[5]} - > - Custom Dropdown Content * - - -
{ - this.toggle(5); - }} - > - Custom dropdown item 1 -
-
{ - this.toggle(5); - }} - > - Custom dropdown item 2 -
-
{ - this.toggle(5); - }} - > - Custom dropdown text 3 -
-
-
{ - this.toggle(5); - }} - > - Custom dropdown item 4 -
-
-
-
-
- - - - Uncontrolled Dropdown - - - - Uncontrolled Dropdown - - Header - Action - Another Action - - Another Action - - - - - -
-
- ); - } -} - -export default Dropdowns; diff --git a/atd-vze/src/views/Base/Dropdowns/Dropdowns.test.js b/atd-vze/src/views/Base/Dropdowns/Dropdowns.test.js deleted file mode 100644 index 0266b102e..000000000 --- a/atd-vze/src/views/Base/Dropdowns/Dropdowns.test.js +++ /dev/null @@ -1,27 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom"; -import { mount } from "enzyme"; -import Dropdowns from "./Dropdowns"; - -it("renders without crashing", () => { - const div = document.createElement("div"); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); -it("toggle click without crashing", () => { - const wrapper = mount(); - for (let i = 0; i < 5; i++) { - let Dropdown = wrapper.find("button.dropdown-toggle").at(i); - Dropdown.simulate("click"); - expect(wrapper.state().dropdownOpen[i]).toEqual(true); - } - for (let i = 0; i < 2; i++) { - let Dropdown = wrapper.find('[data-toggle="dropdown"]').at(0); - Dropdown.simulate("click"); - expect(wrapper.state().dropdownOpen[5]).toEqual(true); - let DropdownItem = wrapper.find("div.dropdown-menu > .dropdown-item").at(i); - DropdownItem.simulate("click"); - expect(wrapper.state().dropdownOpen[5]).toEqual(false); - } - wrapper.unmount(); -}); diff --git a/atd-vze/src/views/Base/Dropdowns/package.json b/atd-vze/src/views/Base/Dropdowns/package.json deleted file mode 100644 index 6681a6de6..000000000 --- a/atd-vze/src/views/Base/Dropdowns/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "Dropdowns", - "version": "0.0.0", - "private": true, - "main": "./Dropdowns.js" -} diff --git a/atd-vze/src/views/Base/Forms/Forms.js b/atd-vze/src/views/Base/Forms/Forms.js deleted file mode 100644 index ab3c23dc6..000000000 --- a/atd-vze/src/views/Base/Forms/Forms.js +++ /dev/null @@ -1,1749 +0,0 @@ -import React, { Component } from "react"; -import { - Badge, - Button, - Card, - CardBody, - CardFooter, - CardHeader, - Col, - Collapse, - DropdownItem, - DropdownMenu, - DropdownToggle, - Fade, - Form, - FormGroup, - FormText, - FormFeedback, - Input, - InputGroup, - InputGroupAddon, - InputGroupButtonDropdown, - InputGroupText, - Label, - Row, -} from "reactstrap"; - -class Forms extends Component { - constructor(props) { - super(props); - - this.toggle = this.toggle.bind(this); - this.toggleFade = this.toggleFade.bind(this); - this.state = { - collapse: true, - fadeIn: true, - timeout: 300, - }; - } - - toggle() { - this.setState({ collapse: !this.state.collapse }); - } - - toggleFade() { - this.setState(prevState => { - return { fadeIn: !prevState }; - }); - } - - render() { - return ( -
- - - - - Credit Card - Form - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Company - Form - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Basic Form Elements - - -
- - - - - -

Username

- -
- - - - - - - This is a help text - - - - - - - - - - Please enter your email - - - - - - - - - - - Please enter a complex password - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- - - - -
- - - Inline Form - - -
- - - - - - - - -
-
- - - - -
- - - - - Horizontal Form - - -
- - - - - - - - Please enter your email - - - - - - - - - - - Please enter your password - - - -
-
- - - - -
- - - Normal Form - - -
- - - - - Please enter your email - - - - - - - Please enter your password - - -
-
- - - - -
- - - Input Grid - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- - - - -
- - - Input Sizes - - -
- - - - - - - - - - - - - - - - - - -
-
- - - - -
- -
- - - - - Validation feedback Form - - - - - - Cool! Input is valid - - - - - Houston, we have a problem... - - - - - - - - Validation feedback Form - - -
- - - - Non-required - - - - - - Please provide a valid information - - - Input provided - - -
-
-
- -
- - - - - Icon/Text Groups - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - .00 - - - - -
-
- - - - -
- - - - - Button Groups - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- - - - -
- - - - - Dropdowns Groups - - -
- - - - { - this.setState({ first: !this.state.first }); - }} - > - - Dropdown - - - Action - Another Action - Something else here - - Separated link - - - - - - - - - - - { - this.setState({ second: !this.state.second }); - }} - > - - Dropdown - - - Action - Another Action - Something else here - - Separated link - - - - - - - - - { - this.setState({ third: !this.state.third }); - }} - > - - Action - - - Action - Another Action - Something else here - - Separated link - - - - { - this.setState({ fourth: !this.state.fourth }); - }} - > - - Dropdown - - - Action - Another Action - Something else here - - Separated link - - - - - -
-
- - - - -
- -
- - - - - Use the grid for big devices! - - .col-lg-* .col-md-*{" "} - .col-sm-* - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- - - - - - - -
- - - - - Input Grid for small devices! - - .col-* - - - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- - - - - - - -
- -
- - - - Example Form - -
- - - - Username - - - - - - - - - - - - - Email - - - - - - - - - - - - - Password - - - - - - - - - - - - -
-
-
- - - - Example Form - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
-
- - - - Example Form - -
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
-
- -
- - - - - - Form Elements -
- - - -
-
- - -
- - -
- - - @ - - - -

Here's some help text

-
-
- - -
- - - - .00 - - - - Here's more help text - -
-
- - -
- - - $ - - - - .00 - - -
-
- - -
- - - - - - -
-
- - -
- - - - - - - -
-
-
- - -
-
-
-
-
-
- -
-
- ); - } -} - -export default Forms; diff --git a/atd-vze/src/views/Base/Forms/Forms.test.js b/atd-vze/src/views/Base/Forms/Forms.test.js deleted file mode 100644 index b61ce3019..000000000 --- a/atd-vze/src/views/Base/Forms/Forms.test.js +++ /dev/null @@ -1,40 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom"; -import Forms from "./Forms"; -import { mount } from "enzyme/build"; - -it("renders without crashing", () => { - const div = document.createElement("div"); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); - -describe("toggle clicks", function() { - it("dropdowns without crashing", () => { - const wrapper = mount(); - for (let i = 0; i < 4; i++) { - let count = - i === 0 ? "first" : i === 1 ? "second" : i === 2 ? "third" : "fourth"; - let Dropdown = wrapper.find("button.dropdown-toggle").at(i); - Dropdown.simulate("click"); - expect(wrapper.state()[count]).toEqual(true); - } - wrapper.unmount(); - }); - it("collapse without crashing", () => { - const wrapper = mount(); - let collapse = wrapper.find("button.btn-minimize").at(0); - collapse.simulate("click"); - expect(wrapper.state().collapse).toEqual(false); - collapse.simulate("click"); - expect(wrapper.state().collapse).toEqual(true); - wrapper.unmount(); - }); - it("fade without crashing", () => { - const wrapper = mount(); - let fade = wrapper.find("button.btn-close").at(0); - fade.simulate("click"); - expect(wrapper.state().fadeIn).toEqual(false); - wrapper.unmount(); - }); -}); diff --git a/atd-vze/src/views/Base/Forms/package.json b/atd-vze/src/views/Base/Forms/package.json deleted file mode 100644 index 19ca2ed2e..000000000 --- a/atd-vze/src/views/Base/Forms/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "Forms", - "version": "0.0.0", - "private": true, - "main": "./Forms.js" -} diff --git a/atd-vze/src/views/Base/Jumbotrons/Jumbotrons.js b/atd-vze/src/views/Base/Jumbotrons/Jumbotrons.js deleted file mode 100644 index bd479f195..000000000 --- a/atd-vze/src/views/Base/Jumbotrons/Jumbotrons.js +++ /dev/null @@ -1,80 +0,0 @@ -import React, { Component } from "react"; -import { - Button, - Card, - CardBody, - CardHeader, - Col, - Container, - Jumbotron, - Row, -} from "reactstrap"; - -class Jumbotrons extends Component { - render() { - return ( -
- - - - - - Jumbotron - - - - -

Hello, world!

-

- This is a simple hero unit, a simple Jumbotron-style - component for calling extra attention to featured content or - information. -

-
-

- It uses utility classes for typgraphy and spacing to space - content out within the larger container. -

-

- -

-
-
-
- - - - - - Jumbotron - fluid - - - - -

Fluid jumbotron

-

- This is a modified jumbotron that occupies the entire - horizontal space of its parent. -

-
-
-
-
- -
-
- ); - } -} - -export default Jumbotrons; diff --git a/atd-vze/src/views/Base/Jumbotrons/Jumbotrons.test.js b/atd-vze/src/views/Base/Jumbotrons/Jumbotrons.test.js deleted file mode 100644 index 40f651945..000000000 --- a/atd-vze/src/views/Base/Jumbotrons/Jumbotrons.test.js +++ /dev/null @@ -1,9 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom"; -import Jumbotrons from "./Jumbotrons"; - -it("renders without crashing", () => { - const div = document.createElement("div"); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); diff --git a/atd-vze/src/views/Base/Jumbotrons/package.json b/atd-vze/src/views/Base/Jumbotrons/package.json deleted file mode 100644 index d3d3a1c63..000000000 --- a/atd-vze/src/views/Base/Jumbotrons/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "Jumbotrons", - "version": "0.0.0", - "private": true, - "main": "./Jumbotrons.js" -} diff --git a/atd-vze/src/views/Base/ListGroups/ListGroups.js b/atd-vze/src/views/Base/ListGroups/ListGroups.js deleted file mode 100644 index d1ece80ff..000000000 --- a/atd-vze/src/views/Base/ListGroups/ListGroups.js +++ /dev/null @@ -1,374 +0,0 @@ -import React, { Component } from "react"; -import { - Badge, - Card, - CardBody, - CardHeader, - Col, - ListGroup, - ListGroupItem, - ListGroupItemHeading, - ListGroupItemText, - Row, - TabContent, - TabPane, -} from "reactstrap"; - -class ListGroups extends Component { - constructor(props) { - super(props); - - this.toggle = this.toggle.bind(this); - this.state = { - activeTab: 1, - }; - } - - toggle(tab) { - if (this.state.activeTab !== tab) { - this.setState({ - activeTab: tab, - }); - } - } - - render() { - return ( -
- - - - - - List Group - - - - - Cras justo odio - Dapibus ac facilisis in - Morbi leo risus - Porta ac consectetur ac - Vestibulum at eros - - - - - - - - - List Group - tags - - - - - Cras justo odio{" "} - - 14 - - - - Dapibus ac facilisis in{" "} - - 2 - - - - Morbi leo risus{" "} - - 1 - - - - - - - - - - - - - List Group - disabled items - - - - - Cras justo odio - - - Dapibus ac facilisis in - - - Morbi leo risus - - - Porta ac consectetur ac - - - Vestibulum at eros - - - - - - - - - - List Group - contextual classes - - - - - Cras justo odio - - - Dapibus ac facilisis in - - - Morbi leo risus - - - Porta ac consectetur ac - - - - - - - - - - - - List Group - anchors - - -

- Be sure to{" "} - - not use the standard .btn classes here - - . -

- - - Cras justo odio - - - Dapibus ac facilisis in - - - Morbi leo risus - - - Porta ac consectetur ac - - - Vestibulum at eros - - -

- - - - - - - - List Group - buttons - - - - - Cras justo odio - - - Dapibus ac facilisis in - - - Morbi leo risus - - - Porta ac consectetur ac - - - Vestibulum at eros - - - - - - - - - - - - List Group - custom content - - - - - - List group item heading - - - Donec id elit non mi porta gravida at eget metus. Maecenas - sed diam eget risus varius blandit. - - - - - List group item heading - - - Donec id elit non mi porta gravida at eget metus. Maecenas - sed diam eget risus varius blandit. - - - - - List group item heading - - - Donec id elit non mi porta gravida at eget metus. Maecenas - sed diam eget risus varius blandit. - - - - - - - - - - - - - List Group with TabPanes -

- NEW -
- - - - - - this.toggle(0)} - action - active={this.state.activeTab === 0} - > - Home - - this.toggle(1)} - action - active={this.state.activeTab === 1} - > - Profile - - this.toggle(2)} - action - active={this.state.activeTab === 2} - > - Messages - - this.toggle(3)} - action - active={this.state.activeTab === 3} - > - Settings - - - - - - -

- Velit aute mollit ipsum ad dolor consectetur nulla - officia culpa adipisicing exercitation fugiat tempor. - Voluptate deserunt sit sunt nisi aliqua fugiat - proident ea ut. Mollit voluptate reprehenderit - occaecat nisi ad non minim tempor sunt voluptate - consectetur exercitation id ut nulla. Ea et fugiat - aliquip nostrud sunt incididunt consectetur culpa - aliquip eiusmod dolor. Anim ad Lorem aliqua in - cupidatat nisi enim eu nostrud do aliquip veniam - minim. -

-
- -

- Cupidatat quis ad sint excepteur laborum in esse qui. - Et excepteur consectetur ex nisi eu do cillum ad - laborum. Mollit et eu officia dolore sunt Lorem culpa - qui commodo velit ex amet id ex. Officia anim - incididunt laboris deserunt anim aute dolor incididunt - veniam aute dolore do exercitation. Dolor nisi culpa - ex ad irure in elit eu dolore. Ad laboris ipsum - reprehenderit irure non commodo enim culpa commodo - veniam incididunt veniam ad. -

-
- -

- Ut ut do pariatur aliquip aliqua aliquip exercitation - do nostrud commodo reprehenderit aute ipsum voluptate. - Irure Lorem et laboris nostrud amet cupidatat - cupidatat anim do ut velit mollit consequat enim - tempor. Consectetur est minim nostrud nostrud - consectetur irure labore voluptate irure. Ipsum id - Lorem sit sint voluptate est pariatur eu ad cupidatat - et deserunt culpa sit eiusmod deserunt. Consectetur et - fugiat anim do eiusmod aliquip nulla laborum elit - adipisicing pariatur cillum. -

-
- -

- Irure enim occaecat labore sit qui aliquip - reprehenderit amet velit. Deserunt ullamco ex elit - nostrud ut dolore nisi officia magna sit occaecat - laboris sunt dolor. Nisi eu minim cillum occaecat aute - est cupidatat aliqua labore aute occaecat ea aliquip - sunt amet. Aute mollit dolor ut exercitation irure - commodo non amet consectetur quis amet culpa. Quis - ullamco nisi amet qui aute irure eu. Magna labore - dolor quis ex labore id nostrud deserunt dolor eiusmod - eu pariatur culpa mollit in irure. -

-
-
- -
-
-
- -
-
- ); - } -} - -export default ListGroups; diff --git a/atd-vze/src/views/Base/ListGroups/ListGroups.test.js b/atd-vze/src/views/Base/ListGroups/ListGroups.test.js deleted file mode 100644 index 00e2d8f76..000000000 --- a/atd-vze/src/views/Base/ListGroups/ListGroups.test.js +++ /dev/null @@ -1,21 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom"; -import ListGroups from "./ListGroups"; -import { mount } from "enzyme/build"; - -it("renders without crashing", () => { - const div = document.createElement("div"); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); -it("toggle click without crashing", () => { - const wrapper = mount(); - for (let i = 0; i < 4; i++) { - let ListGroup = wrapper - .find("#list-tab .list-group-item-action.list-group-item") - .at(i); - ListGroup.simulate("click"); - expect(wrapper.state().activeTab).toEqual(i); - } - wrapper.unmount(); -}); diff --git a/atd-vze/src/views/Base/ListGroups/package.json b/atd-vze/src/views/Base/ListGroups/package.json deleted file mode 100644 index c542b7528..000000000 --- a/atd-vze/src/views/Base/ListGroups/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "ListGroups", - "version": "0.0.0", - "private": true, - "main": "./ListGroups.js" -} diff --git a/atd-vze/src/views/Base/Navbars/Navbars.js b/atd-vze/src/views/Base/Navbars/Navbars.js deleted file mode 100644 index 3a00841e4..000000000 --- a/atd-vze/src/views/Base/Navbars/Navbars.js +++ /dev/null @@ -1,127 +0,0 @@ -import React, { Component } from "react"; -import { - Card, - CardBody, - CardHeader, - Collapse, - DropdownItem, - DropdownMenu, - DropdownToggle, - Nav, - Navbar, - NavbarBrand, - NavbarToggler, - NavItem, - NavLink, - UncontrolledDropdown, -} from "reactstrap"; - -class Navbars extends Component { - constructor(props) { - super(props); - - this.toggle = this.toggle.bind(this); - this.toggleNavbar = this.toggleNavbar.bind(this); - this.state = { - isOpen: false, - collapsed: true, - }; - } - - toggle() { - this.setState({ - isOpen: !this.state.isOpen, - }); - } - - toggleNavbar() { - this.setState({ - collapsed: !this.state.collapsed, - }); - } - - render() { - return ( -
- - - - Navbar - - - - - Bootstrap - - - - - - - - - - - Navbar Toggler - - - - - Bootstrap - - - - - - - - -
- ); - } -} - -export default Navbars; diff --git a/atd-vze/src/views/Base/Navbars/Navbars.test.js b/atd-vze/src/views/Base/Navbars/Navbars.test.js deleted file mode 100644 index e85c60af2..000000000 --- a/atd-vze/src/views/Base/Navbars/Navbars.test.js +++ /dev/null @@ -1,9 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom"; -import Navbars from "./Navbars"; - -it("renders without crashing", () => { - const div = document.createElement("div"); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); diff --git a/atd-vze/src/views/Base/Navbars/package.json b/atd-vze/src/views/Base/Navbars/package.json deleted file mode 100644 index a33a6ad5d..000000000 --- a/atd-vze/src/views/Base/Navbars/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "Navbars", - "version": "0.0.0", - "private": true, - "main": "./Navbars.js" -} diff --git a/atd-vze/src/views/Base/Navs/Navs.js b/atd-vze/src/views/Base/Navs/Navs.js deleted file mode 100644 index fdb2504fe..000000000 --- a/atd-vze/src/views/Base/Navs/Navs.js +++ /dev/null @@ -1,210 +0,0 @@ -import React, { Component } from "react"; -import { - Card, - CardBody, - CardHeader, - Dropdown, - DropdownItem, - DropdownMenu, - DropdownToggle, - Nav, - NavItem, - NavLink, -} from "reactstrap"; - -class Navs extends Component { - constructor(props) { - super(props); - - this.toggle = this.toggle.bind(this); - this.state = { - dropdownOpen: [false, false], - }; - } - - toggle(i) { - const newArray = this.state.dropdownOpen.map((element, index) => { - return index === i ? !element : false; - }); - this.setState({ - dropdownOpen: newArray, - }); - } - - render() { - return ( -
- - - - Navs - - - -

List Based

- -
-

Link Based

- -
-
- - - - Navs Tabs - - - - - - - - - Navs Pills - - - - - - - - - Navs Vertical - - -

List Based

- -
-

Link based

- -
-
-
- ); - } -} - -export default Navs; diff --git a/atd-vze/src/views/Base/Navs/Navs.test.js b/atd-vze/src/views/Base/Navs/Navs.test.js deleted file mode 100644 index 948ad2d83..000000000 --- a/atd-vze/src/views/Base/Navs/Navs.test.js +++ /dev/null @@ -1,19 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom"; -import Navs from "./Navs"; -import { mount } from "enzyme/build"; - -it("renders without crashing", () => { - const div = document.createElement("div"); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); -it("toggle click without crashing", () => { - const wrapper = mount(); - for (let i = 0; i < 2; i++) { - let Nav = wrapper.find("a.dropdown-toggle").at(i); - Nav.simulate("click"); - expect(wrapper.state().dropdownOpen[i]).toEqual(true); - } - wrapper.unmount(); -}); diff --git a/atd-vze/src/views/Base/Navs/package.json b/atd-vze/src/views/Base/Navs/package.json deleted file mode 100644 index 9728cbfa2..000000000 --- a/atd-vze/src/views/Base/Navs/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "Navs", - "version": "0.0.0", - "private": true, - "main": "./Navs.js" -} diff --git a/atd-vze/src/views/Base/Paginations/Paginations.test.js b/atd-vze/src/views/Base/Paginations/Paginations.test.js deleted file mode 100644 index 5d3b1fe03..000000000 --- a/atd-vze/src/views/Base/Paginations/Paginations.test.js +++ /dev/null @@ -1,9 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom"; -import Paginations from "./Pagnations"; - -it("renders without crashing", () => { - const div = document.createElement("div"); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); diff --git a/atd-vze/src/views/Base/Paginations/Pagnations.js b/atd-vze/src/views/Base/Paginations/Pagnations.js deleted file mode 100644 index 2ed26ac9c..000000000 --- a/atd-vze/src/views/Base/Paginations/Pagnations.js +++ /dev/null @@ -1,153 +0,0 @@ -import React, { Component } from "react"; -import { - Card, - CardBody, - CardHeader, - Pagination, - PaginationItem, - PaginationLink, -} from "reactstrap"; - -class Paginations extends Component { - render() { - return ( -
- - - - Pagination - - - - - - - - - 1 - - - 2 - - - 3 - - - 4 - - - 5 - - - - - - - - - - - Pagination - disabled and active states - - - - - - - - 1 - - - 2 - - - 3 - - - 4 - - - 5 - - - - - - - - - - - Pagination - sizing - - - - - - - - 1 - - - 2 - - - 3 - - - - - - - - - - - 1 - - - 2 - - - 3 - - - - - - - - - - - 1 - - - 2 - - - 3 - - - - - - - -
- ); - } -} - -export default Paginations; diff --git a/atd-vze/src/views/Base/Paginations/package.json b/atd-vze/src/views/Base/Paginations/package.json deleted file mode 100644 index a1bce956d..000000000 --- a/atd-vze/src/views/Base/Paginations/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "Pagnations", - "version": "0.0.0", - "private": true, - "main": "./Pagnations.js" -} diff --git a/atd-vze/src/views/Base/Popovers/Popovers.js b/atd-vze/src/views/Base/Popovers/Popovers.js deleted file mode 100644 index 3e8651de2..000000000 --- a/atd-vze/src/views/Base/Popovers/Popovers.js +++ /dev/null @@ -1,145 +0,0 @@ -import React, { Component } from "react"; -import { - Button, - Card, - CardBody, - CardHeader, - Popover, - PopoverBody, - PopoverHeader, -} from "reactstrap"; - -class PopoverItem extends Component { - constructor(props) { - super(props); - - this.toggle = this.toggle.bind(this); - this.state = { - popoverOpen: false, - }; - } - - toggle() { - this.setState({ - popoverOpen: !this.state.popoverOpen, - }); - } - - render() { - return ( - - - - Popover Title - - Sed posuere consectetur est at lobortis. Aenean eu leo quam. - Pellentesque ornare sem lacinia quam venenatis vestibulum. - - - - ); - } -} - -class Popovers extends Component { - constructor(props) { - super(props); - - this.toggle = this.toggle.bind(this); - this.state = { - popoverOpen: false, - popovers: [ - { - placement: "top", - text: "Top", - }, - { - placement: "bottom", - text: "Bottom", - }, - { - placement: "left", - text: "Left", - }, - { - placement: "right", - text: "Right", - }, - ], - }; - } - - toggle() { - this.setState({ - popoverOpen: !this.state.popoverOpen, - }); - } - - render() { - return ( -
- - - - Popovers - - - - - - Popover Title - - Sed posuere consectetur est at lobortis. Aenean eu leo quam. - Pellentesque ornare sem lacinia quam venenatis vestibulum. - - - - - - - - Popovers - list - - - {this.state.popovers.map((popover, i) => { - return ; - })} - - -
- ); - } -} - -export default Popovers; diff --git a/atd-vze/src/views/Base/Popovers/Popovers.test.js b/atd-vze/src/views/Base/Popovers/Popovers.test.js deleted file mode 100644 index 2423e9109..000000000 --- a/atd-vze/src/views/Base/Popovers/Popovers.test.js +++ /dev/null @@ -1,10 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom"; -import Popovers from "./Popovers"; - -it("renders without crashing", () => { - const div = document.createElement("div"); - document.body.appendChild(div); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); diff --git a/atd-vze/src/views/Base/Popovers/package.json b/atd-vze/src/views/Base/Popovers/package.json deleted file mode 100644 index 51e2c0516..000000000 --- a/atd-vze/src/views/Base/Popovers/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "Popovers", - "version": "0.0.0", - "private": true, - "main": "./Popovers.js" -} diff --git a/atd-vze/src/views/Base/ProgressBar/ProgressBar.js b/atd-vze/src/views/Base/ProgressBar/ProgressBar.js deleted file mode 100644 index 518e19bce..000000000 --- a/atd-vze/src/views/Base/ProgressBar/ProgressBar.js +++ /dev/null @@ -1,218 +0,0 @@ -import React, { Component } from "react"; -import { Card, CardBody, CardHeader, Progress } from "reactstrap"; - -class ProgressBar extends Component { - render() { - return ( -
- - - - Progress - - - -
0%
- -
25%
- -
50%
- -
75%
- -
100%
- -
Multiple bars
- - - - - - - -
-
- - - - Progress - color variants - - - - - - - - - - - - - Progress - labels - - - - 25% - - - 1/2 - - - You're almost there! - - - You did it! - - - - Meh - - - Wow! - - - Cool - - - 20% - - - !! - - - - - - - - Progress - striped - - - - - - - - - - - - - - - - - - - Progress - animated - - - - - - - - - - - - - - - - - - - Progress - multiple bars / stacked - - -
Plain
- - - - - - - -
With Labels
- - - Meh - - - Wow! - - - 25% - - - LOOK OUT!! - - -
Stripes and Animations
- - - Stripes - - - Animated Stripes - - - Plain - - -
-
- - - - Progress - max value - - -
1 of 5
- -
50 of 135
- -
75 of 111
- -
463 of 500
- - -
Various (40) of 55
- - - 5 - - - 15 - - - 10 - - - 10 - - -
-
-
- ); - } -} - -export default ProgressBar; diff --git a/atd-vze/src/views/Base/ProgressBar/ProgressBar.test.js b/atd-vze/src/views/Base/ProgressBar/ProgressBar.test.js deleted file mode 100644 index 69adf5f0a..000000000 --- a/atd-vze/src/views/Base/ProgressBar/ProgressBar.test.js +++ /dev/null @@ -1,9 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom"; -import ProgressBar from "./ProgressBar"; - -it("renders without crashing", () => { - const div = document.createElement("div"); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); diff --git a/atd-vze/src/views/Base/ProgressBar/package.json b/atd-vze/src/views/Base/ProgressBar/package.json deleted file mode 100644 index e4f62b777..000000000 --- a/atd-vze/src/views/Base/ProgressBar/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "Progress Bar", - "version": "0.0.0", - "private": true, - "main": "./ProgressBar.js" -} diff --git a/atd-vze/src/views/Base/Switches/Switches.js b/atd-vze/src/views/Base/Switches/Switches.js deleted file mode 100644 index 97384a7df..000000000 --- a/atd-vze/src/views/Base/Switches/Switches.js +++ /dev/null @@ -1,1805 +0,0 @@ -import React, { Component } from "react"; -import { Card, CardBody, CardHeader, Col, Row, Table } from "reactstrap"; -import { AppSwitch } from "@coreui/react"; - -class Switches extends Component { - render() { - return ( -
- - - - Switch default - - - - - - - - - - - - - - - - Switch pills - - - - - - - - - - - - - - - - - 3d Switch{" "} - - CoreUI Pro - - - - - - - - - - - - - - - - - - - 3d Switch{" "} - - disabled - {" "} - - CoreUI Pro - - - - - - - - - - - - - - - - - - - - 3d Switch{" "} - - outline="alt" - {" "} - - CoreUI Pro - - - - - - - - - - - - - - - - - - - 3d Switch{" "} - - label - {" "} - - CoreUI Pro - - - - - - - - - - - - - - - - - - - 3d Switch{" "} - - outline="alt" label - {" "} - - CoreUI Pro - - - - - - - - - - - - - - - - - - - 3d Switch{" "} - - outline="alt" label - {" "} - - CoreUI Pro - - - - - - - - - - - - - - - - - - - Switch outline{" "} - - CoreUI Pro - - - - - - - - - - - - - - - - - - - Switch outline pills{" "} - - CoreUI Pro - - - - - - - - - - - - - - - - - - - Switch outline alternative{" "} - - CoreUI Pro - - - - - - - - - - - - - - - - - - - - Switch outline alternative - pills{" "} - - CoreUI Pro - - - - - - - - - - - - - - - - - - - - Switch with text{" "} - - CoreUI Pro - - - - - - - - - - - - - - - - - - - Switch with text pills{" "} - - CoreUI Pro - - - - - - - - - - - - - - - - - - - Switch with text outline{" "} - - CoreUI Pro - - - - - - - - - - - - - - - - - - - Switch with text outline pills{" "} - - CoreUI Pro - - - - - - - - - - - - - - - - - - - Switch with text outline alternative pills{" "} - - CoreUI Pro - - - - - - - - - - - - - - - - - - - Switch with text outline alternative pills{" "} - - CoreUI Pro - - - - - - - - - - - - - - - - - - - - Switch with text outline alternative{" "} - - CoreUI Pro - - - - - - - - - - - - - - - - - - - Switch with text outline alternative pills{" "} - - CoreUI Pro - - - - - - - - - - - - - - - - - - - - Switch with text outline alternative{" "} - - CoreUI Pro - - - - - - - - - - - - - - - - - - - Switch with text outline alternative pills{" "} - - CoreUI Pro - - - - - - - - - - - - - - - - - - - Sizes - - - - - - - - - - - - - - - - - - - - - - - - - - -
SizeExampleProps
Large - - - Add size={"lg"} -
Normal - - -
Small - - - Add size={"sm"} -
-
-
- -
-
- ); - } -} - -export default Switches; diff --git a/atd-vze/src/views/Base/Switches/Switches.test.js b/atd-vze/src/views/Base/Switches/Switches.test.js deleted file mode 100644 index 972e2e65a..000000000 --- a/atd-vze/src/views/Base/Switches/Switches.test.js +++ /dev/null @@ -1,9 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom"; -import Switches from "./Switches"; - -it("renders without crashing", () => { - const div = document.createElement("div"); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); diff --git a/atd-vze/src/views/Base/Switches/package.json b/atd-vze/src/views/Base/Switches/package.json deleted file mode 100644 index ce01586cf..000000000 --- a/atd-vze/src/views/Base/Switches/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "Switches", - "version": "0.0.0", - "private": true, - "main": "./Switches.js" -} diff --git a/atd-vze/src/views/Base/Tables/Tables.js b/atd-vze/src/views/Base/Tables/Tables.js deleted file mode 100644 index 5e4ad258a..000000000 --- a/atd-vze/src/views/Base/Tables/Tables.js +++ /dev/null @@ -1,457 +0,0 @@ -import React, { Component } from "react"; -import { - Badge, - Card, - CardBody, - CardHeader, - Col, - Pagination, - PaginationItem, - PaginationLink, - Row, - Table, -} from "reactstrap"; - -class Tables extends Component { - render() { - return ( -
- - - - - Simple Table - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
UsernameDate registeredRoleStatus
Samppa Nori2012/01/01Member - Active -
Estavan Lykos2012/02/01Staff - Banned -
Chetan Mohamed2012/02/01Admin - Inactive -
Derick Maximinus2012/03/01Member - Pending -
Friderik Dávid2012/01/21Staff - Active -
- - - - - - 1 - - - 2 - - - 3 - - - 4 - - - - - -
-
- - - - - - Striped Table - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
UsernameDate registeredRoleStatus
Yiorgos Avraamu2012/01/01Member - Active -
Avram Tarasios2012/02/01Staff - Banned -
Quintin Ed2012/02/01Admin - Inactive -
Enéas Kwadwo2012/03/01Member - Pending -
Agapetus Tadeáš2012/01/21Staff - Active -
- - - - Prev - - - - 1 - - - 2 - - - 3 - - - 4 - - - - Next - - - -
-
- -
- - - - - - Condensed Table - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
UsernameDate registeredRoleStatus
Carwyn Fachtna2012/01/01Member - Active -
Nehemiah Tatius2012/02/01Staff - Banned -
Ebbe Gemariah2012/02/01Admin - Inactive -
Eustorgios Amulius2012/03/01Member - Pending -
Leopold Gáspár2012/01/21Staff - Active -
- - - - Prev - - - - 1 - - - 2 - - - 3 - - - 4 - - - - Next - - - -
-
- - - - - - Bordered Table - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
UsernameDate registeredRoleStatus
Pompeius René2012/01/01Member - Active -
Paĉjo Jadon2012/02/01Staff - Banned -
Micheal Mercurius2012/02/01Admin - Inactive -
Ganesha Dubhghall2012/03/01Member - Pending -
Hiroto Šimun2012/01/21Staff - Active -
- - - - Prev - - - - 1 - - - 2 - - - 3 - - - 4 - - - - Next - - - -
-
- -
- - - - - - Combined All Table - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
UsernameDate registeredRoleStatus
Vishnu Serghei2012/01/01Member - Active -
Zbyněk Phoibos2012/02/01Staff - Banned -
Einar Randall2012/02/01Admin - Inactive -
Félix Troels2012/03/01Member - Pending -
Aulus Agmundr2012/01/21Staff - Active -
- -
-
- -
-
- ); - } -} - -export default Tables; diff --git a/atd-vze/src/views/Base/Tables/Tables.test.js b/atd-vze/src/views/Base/Tables/Tables.test.js deleted file mode 100644 index fc646ff56..000000000 --- a/atd-vze/src/views/Base/Tables/Tables.test.js +++ /dev/null @@ -1,9 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom"; -import Tables from "./Tables"; - -it("renders without crashing", () => { - const div = document.createElement("div"); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); diff --git a/atd-vze/src/views/Base/Tables/package.json b/atd-vze/src/views/Base/Tables/package.json deleted file mode 100644 index 548d9a387..000000000 --- a/atd-vze/src/views/Base/Tables/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "Tables", - "version": "0.0.0", - "private": true, - "main": "./Tables.js" -} diff --git a/atd-vze/src/views/Base/Tabs/Tabs.js b/atd-vze/src/views/Base/Tabs/Tabs.js deleted file mode 100644 index e70c33bf3..000000000 --- a/atd-vze/src/views/Base/Tabs/Tabs.js +++ /dev/null @@ -1,248 +0,0 @@ -import React, { Component } from "react"; -import { - Badge, - Col, - Nav, - NavItem, - NavLink, - Row, - TabContent, - TabPane, -} from "reactstrap"; -import classnames from "classnames"; - -class Tabs extends Component { - constructor(props) { - super(props); - - this.toggle = this.toggle.bind(this); - this.state = { - activeTab: new Array(4).fill("1"), - }; - } - - lorem() { - return "Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit."; - } - - toggle(tabPane, tab) { - const newArray = this.state.activeTab.slice(); - newArray[tabPane] = tab; - this.setState({ - activeTab: newArray, - }); - } - - tabPane() { - return ( - <> - {`1. ${this.lorem()}`} - {`2. ${this.lorem()}`} - {`3. ${this.lorem()}`} - - ); - } - - render() { - return ( -
- - - - - {this.tabPane()} - - - - - - {this.tabPane()} - - - - - - {this.tabPane()} - - - - - - {this.tabPane()} - - - -
- ); - } -} - -export default Tabs; diff --git a/atd-vze/src/views/Base/Tabs/Tabs.test.js b/atd-vze/src/views/Base/Tabs/Tabs.test.js deleted file mode 100644 index ec6c41e0b..000000000 --- a/atd-vze/src/views/Base/Tabs/Tabs.test.js +++ /dev/null @@ -1,23 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom"; -import Tabs from "./Tabs"; -import { mount } from "enzyme/build"; - -it("renders without crashing", () => { - const div = document.createElement("div"); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); -it("toggle click without crashing", () => { - const wrapper = mount(); - for (let pane = 0; pane < 4; pane++) { - for (let tabId = 1; tabId < 4; tabId++) { - let Tab = wrapper - .find(".nav-tabs .nav-item .nav-link") - .at(3 * pane + tabId - 1); - Tab.simulate("click"); - expect(wrapper.state().activeTab[pane]).toEqual(tabId.toString()); - } - } - wrapper.unmount(); -}); diff --git a/atd-vze/src/views/Base/Tabs/package.json b/atd-vze/src/views/Base/Tabs/package.json deleted file mode 100644 index e362a8093..000000000 --- a/atd-vze/src/views/Base/Tabs/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "Tabs", - "version": "0.0.0", - "private": true, - "main": "./Tabs.js" -} diff --git a/atd-vze/src/views/Base/Tooltips/Tooltips.js b/atd-vze/src/views/Base/Tooltips/Tooltips.js deleted file mode 100644 index e53b9d8f3..000000000 --- a/atd-vze/src/views/Base/Tooltips/Tooltips.js +++ /dev/null @@ -1,194 +0,0 @@ -import React, { Component } from "react"; -import { - Button, - Card, - CardBody, - CardHeader, - Tooltip, - UncontrolledTooltip, -} from "reactstrap"; - -class TooltipItem extends React.Component { - constructor(props) { - super(props); - - this.toggle = this.toggle.bind(this); - this.state = { - tooltipOpen: false, - }; - } - - toggle() { - this.setState({ - tooltipOpen: !this.state.tooltipOpen, - }); - } - - render() { - return ( - - - - Tooltip Content! - - - ); - } -} - -class Tooltips extends Component { - constructor(props) { - super(props); - - this.toggle = this.toggle.bind(this); - this.state = { - tooltipOpen: [false, false], - tooltips: [ - { - placement: "top", - text: "Top", - }, - { - placement: "bottom", - text: "Bottom", - }, - { - placement: "left", - text: "Left", - }, - { - placement: "right", - text: "Right", - }, - ], - }; - } - - toggle(i) { - const newArray = this.state.tooltipOpen.map((element, index) => { - return index === i ? !element : false; - }); - this.setState({ - tooltipOpen: newArray, - }); - } - - render() { - return ( -
- - - - Tooltips - - - - {/*eslint-disable-next-line*/} -

- Somewhere in here is a{" "} - - tooltip - - . -

- { - this.toggle(0); - }} - > - Hello world! - -
-
- - - - Tooltip - disable autohide - - - {/*eslint-disable-next-line*/} -

- Sometimes you need to allow users to select text within a{" "} - - tooltip - - . -

- { - this.toggle(1); - }} - > - Try to select this text! - -
-
- - - - Tooltip - list - - - {this.state.tooltips.map((tooltip, i) => { - return ; - })} - - - - - - Tooltip - uncontrolled - - - {/*eslint-disable-next-line*/} -

- Somewhere in here is a{" "} - - tooltip - - . -

- - Hello world! - -
-
-
- ); - } -} - -export default Tooltips; diff --git a/atd-vze/src/views/Base/Tooltips/Tooltips.test.js b/atd-vze/src/views/Base/Tooltips/Tooltips.test.js deleted file mode 100644 index 0ef62a394..000000000 --- a/atd-vze/src/views/Base/Tooltips/Tooltips.test.js +++ /dev/null @@ -1,10 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom"; -import Tooltips from "./Tooltips"; - -it("renders without crashing", () => { - const div = document.createElement("div"); - document.body.appendChild(div); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); diff --git a/atd-vze/src/views/Base/Tooltips/package.json b/atd-vze/src/views/Base/Tooltips/package.json deleted file mode 100644 index 86e050463..000000000 --- a/atd-vze/src/views/Base/Tooltips/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "Tooltips", - "version": "0.0.0", - "private": true, - "main": "./Tooltips.js" -} diff --git a/atd-vze/src/views/Base/index.js b/atd-vze/src/views/Base/index.js deleted file mode 100644 index 4ac597cbc..000000000 --- a/atd-vze/src/views/Base/index.js +++ /dev/null @@ -1,37 +0,0 @@ -import Breadcrumbs from "./Breadcrumbs"; -import Cards from "./Cards"; -import Carousels from "./Carousels"; -import Collapses from "./Collapses"; -import Dropdowns from "./Dropdowns"; -import Forms from "./Forms"; -import Jumbotrons from "./Jumbotrons"; -import ListGroups from "./ListGroups"; -import Navbars from "./Navbars"; -import Navs from "./Navs"; -import Popovers from "./Popovers"; -import Paginations from "./Paginations"; -import ProgressBar from "./ProgressBar"; -import Switches from "./Switches"; -import Tables from "./Tables"; -import Tabs from "./Tabs"; -import Tooltips from "./Tooltips"; - -export { - Breadcrumbs, - Cards, - Carousels, - Collapses, - Dropdowns, - Forms, - Jumbotrons, - ListGroups, - Navbars, - Navs, - Popovers, - ProgressBar, - Switches, - Tables, - Tabs, - Tooltips, - Paginations, -}; diff --git a/atd-vze/src/views/Buttons/BrandButtons/BrandButtons.js b/atd-vze/src/views/Buttons/BrandButtons/BrandButtons.js deleted file mode 100644 index 39aa79f4f..000000000 --- a/atd-vze/src/views/Buttons/BrandButtons/BrandButtons.js +++ /dev/null @@ -1,1212 +0,0 @@ -import React, { Component } from "react"; -import { Button, Card, CardBody, CardHeader, Col, Row } from "reactstrap"; - -class BrandButtons extends Component { - render() { - return ( -
- - - - - - Brand Button - Usage ex. - - <Button className="btn-facebook btn-brand"><i - className="fa - fa-facebook"></i><span>Facebook</span></Button> - - - -
- Size Small - - {" "} - Add this class .btn-sm - -
-

- - - - - - - - - - - - - - - - - - - - - - - - - -

-
Size Normal
-

- - - - - - - - - - - - - - - - - - - - - - - - - -

-
- Size Large - - {" "} - Add this class .btn-lg - -
-

- - - - - - - - - - - - - - - - - - - - - - - - - -

-
-
- - - - - - - Brand Button - Icons only. Usage ex. - - <Button className="btn-facebook btn-brand icon"><i - className="fa fa-facebook"></i></Button> - - - -
- Size Small - - {" "} - Add this class .btn-sm - -
-

- - - - - - - - - - - - - - - - - - - - - - - - - -

-
Size Normal
-

- - - - - - - - - - - - - - - - - - - - - - - - - -

-
- Size Large - - {" "} - Add this class .btn-lg - -
-

- - - - - - - - - - - - - - - - - - - - - - - - - -

-
-
- - - - - - - Brand Button - Text only. Usage ex. - - <Button className="btn-facebook btn-brand - text"><span>Facebook</span></Button> - - - -
- Size Small - - {" "} - Add this class .btn-sm - -
-

- - - - - - - - - - - - - - - - - - - - - - - - - -

-
Size Normal
-

- - - - - - - - - - - - - - - - - - - - - - - - - -

-
- Size Large - - {" "} - Add this class .btn-lg - -
-

- - - - - - - - - - - - - - - - - - - - - - - - - -

-
-
- -
-
- ); - } -} - -export default BrandButtons; diff --git a/atd-vze/src/views/Buttons/BrandButtons/BrandButtons.test.js b/atd-vze/src/views/Buttons/BrandButtons/BrandButtons.test.js deleted file mode 100644 index 1b15d98ab..000000000 --- a/atd-vze/src/views/Buttons/BrandButtons/BrandButtons.test.js +++ /dev/null @@ -1,9 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom"; -import BrandButtons from "./"; - -it("renders without crashing", () => { - const div = document.createElement("div"); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); diff --git a/atd-vze/src/views/Buttons/BrandButtons/package.json b/atd-vze/src/views/Buttons/BrandButtons/package.json deleted file mode 100644 index 41d88741e..000000000 --- a/atd-vze/src/views/Buttons/BrandButtons/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "BrandButtons", - "version": "0.0.0", - "private": true, - "main": "./BrandButtons.js" -} diff --git a/atd-vze/src/views/Buttons/ButtonDropdowns/ButtonDropdowns.js b/atd-vze/src/views/Buttons/ButtonDropdowns/ButtonDropdowns.js deleted file mode 100644 index 9184c8cae..000000000 --- a/atd-vze/src/views/Buttons/ButtonDropdowns/ButtonDropdowns.js +++ /dev/null @@ -1,437 +0,0 @@ -import React, { Component } from "react"; -import { - Button, - ButtonDropdown, - Card, - CardBody, - CardHeader, - Col, - DropdownItem, - DropdownMenu, - DropdownToggle, - Row, -} from "reactstrap"; - -class ButtonDropdowns extends Component { - constructor(props) { - super(props); - - this.toggle = this.toggle.bind(this); - this.state = { - dropdownOpen: new Array(19).fill(false), - }; - } - - toggle(i) { - const newArray = this.state.dropdownOpen.map((element, index) => { - return index === i ? !element : false; - }); - this.setState({ - dropdownOpen: newArray, - }); - } - - render() { - return ( -
- - - - - - Button Dropdown - - - - { - this.toggle(0); - }} - > - Button Dropdown - - Header - Action Disabled - Action - - Another Action - - - - - - - - Single button dropdowns - - - { - this.toggle(1); - }} - > - - Primary - - - Header - Action Disabled - Action - - Another Action - - - { - this.toggle(2); - }} - > - - Secondary - - - Header - Action Disabled - Action - - Another Action - - - { - this.toggle(3); - }} - > - - Success - - - Header - Action Disabled - Action - - Another Action - - - { - this.toggle(4); - }} - > - - Info - - - Header - Action Disabled - Action - - Another Action - - - { - this.toggle(5); - }} - > - - Warning - - - Header - Action Disabled - Action - - Another Action - - - { - this.toggle(6); - }} - > - - Danger - - - Header - Action Disabled - Action - - Another Action - - - - - - - - Split button dropdowns - - - { - this.toggle(7); - }} - > - - - - Header - Action Disabled - Action - - Another Action - - - { - this.toggle(8); - }} - > - - - - Header - Action Disabled - Action - - Another Action - - - { - this.toggle(9); - }} - > - - - - Header - Action Disabled - Action - - Another Action - - - { - this.toggle(10); - }} - > - - - - Header - Action Disabled - Action - - Another Action - - - { - this.toggle(11); - }} - > - - - - Header - Action Disabled - Action - - Another Action - - - { - this.toggle(12); - }} - > - - - - Header - Action Disabled - Action - - Another Action - - - - - - - - Dropdown directions - - - { - this.toggle(13); - }} - > - - Direction Up - - - Header - Action Disabled - Action - Another Action - - - { - this.toggle(14); - }} - > - - Direction Left - - - Header - Action Disabled - Action - Another Action - - - { - this.toggle(15); - }} - > - - Direction Right - - - Header - Action Disabled - Action - Another Action - - - { - this.toggle(16); - }} - > - - Default Down - - - Header - Action Disabled - Action - Another Action - - - - - - - - Button Dropdown sizing - - - { - this.toggle(17); - }} - > - - Large Button - - - Header - Action Disabled - Action - Another Action - - - { - this.toggle(18); - }} - > - - Small Button - - - Header - Action Disabled - Action - Another Action - - - - - - -
- ); - } -} - -export default ButtonDropdowns; diff --git a/atd-vze/src/views/Buttons/ButtonDropdowns/ButtonDropdowns.test.js b/atd-vze/src/views/Buttons/ButtonDropdowns/ButtonDropdowns.test.js deleted file mode 100644 index 85b1aae18..000000000 --- a/atd-vze/src/views/Buttons/ButtonDropdowns/ButtonDropdowns.test.js +++ /dev/null @@ -1,19 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom"; -import { mount } from "enzyme"; -import ButtonDropdowns from "./ButtonDropdowns"; - -it("renders without crashing", () => { - const div = document.createElement("div"); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); -it("toggle click without crashing", () => { - const wrapper = mount(); - for (let i = 0; i < 19; i++) { - let ButtonDropdown = wrapper.find("button.dropdown-toggle").at(i); - ButtonDropdown.simulate("click"); - expect(wrapper.state().dropdownOpen[i]).toEqual(true); - } - wrapper.unmount(); -}); diff --git a/atd-vze/src/views/Buttons/ButtonDropdowns/package.json b/atd-vze/src/views/Buttons/ButtonDropdowns/package.json deleted file mode 100644 index bfdccf6cd..000000000 --- a/atd-vze/src/views/Buttons/ButtonDropdowns/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "ButtonDropdowns", - "version": "0.0.0", - "private": true, - "main": "./ButtonDropdowns.js" -} diff --git a/atd-vze/src/views/Buttons/ButtonGroups/ButtonGroups.js b/atd-vze/src/views/Buttons/ButtonGroups/ButtonGroups.js deleted file mode 100644 index 8aac6b40f..000000000 --- a/atd-vze/src/views/Buttons/ButtonGroups/ButtonGroups.js +++ /dev/null @@ -1,214 +0,0 @@ -import React, { Component } from "react"; -import { - Button, - ButtonDropdown, - ButtonGroup, - ButtonToolbar, - Card, - CardBody, - CardHeader, - Col, - DropdownItem, - DropdownMenu, - DropdownToggle, - Input, - InputGroup, - InputGroupAddon, - InputGroupText, - Row, -} from "reactstrap"; - -class ButtonGroups extends Component { - constructor(props) { - super(props); - - this.toggle = this.toggle.bind(this); - this.state = { - dropdownOpen: new Array(2).fill(false), - }; - } - - toggle(i) { - const newArray = this.state.dropdownOpen.map((element, index) => { - return index === i ? !element : false; - }); - this.setState({ - dropdownOpen: newArray, - }); - } - - render() { - return ( -
- - - - - - Button Group - - - - - - - - - - - - - - Vertical variation - - - - - - { - this.toggle(0); - }} - > - Dropdown - - Dropdown Link - Dropdown Link - - - - - - - - - Button Toolbar - - - - - - - - - - - - - - - - - - - - - - - - - - Sizing - - - - - - - -
- - - - - -
- - - - - -
-
- - - - Nesting - - - - - - { - this.toggle(1); - }} - > - Dropdown - - Dropdown Link - Dropdown Link - - - - - - -
- - - - - - Button Toolbar with input groups - - - - - - - - - - - - @ - - - - - - - - - - - - - - @ - - - - - - - - -
- ); - } -} - -export default ButtonGroups; diff --git a/atd-vze/src/views/Buttons/ButtonGroups/ButtonGroups.test.js b/atd-vze/src/views/Buttons/ButtonGroups/ButtonGroups.test.js deleted file mode 100644 index d08b22d6a..000000000 --- a/atd-vze/src/views/Buttons/ButtonGroups/ButtonGroups.test.js +++ /dev/null @@ -1,19 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom"; -import ButtonGroups from "./ButtonGroups"; -import { mount } from "enzyme/build"; - -it("renders without crashing", () => { - const div = document.createElement("div"); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); -it("toggle click without crashing", () => { - const wrapper = mount(); - for (let i = 0; i < 2; i++) { - let ButtonGroup = wrapper.find("button.dropdown-toggle").at(i); - ButtonGroup.simulate("click"); - expect(wrapper.state().dropdownOpen[i]).toEqual(true); - } - wrapper.unmount(); -}); diff --git a/atd-vze/src/views/Buttons/ButtonGroups/package.json b/atd-vze/src/views/Buttons/ButtonGroups/package.json deleted file mode 100644 index 6f9bfb1aa..000000000 --- a/atd-vze/src/views/Buttons/ButtonGroups/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "ButtonGroups", - "version": "0.0.0", - "private": true, - "main": "./ButtonGroups.js" -} diff --git a/atd-vze/src/views/Buttons/Buttons/Buttons.js b/atd-vze/src/views/Buttons/Buttons/Buttons.js deleted file mode 100644 index 0fccee5b7..000000000 --- a/atd-vze/src/views/Buttons/Buttons/Buttons.js +++ /dev/null @@ -1,1125 +0,0 @@ -import React, { Component } from "react"; -import { Button, Card, CardBody, CardHeader, Col, Row } from "reactstrap"; - -class Buttons extends Component { - render() { - return ( -
- - - Standard Buttons - - - - - Normal - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Active State - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Disabled - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Outline Buttons - - -

- Use outline prop -

- - - Normal - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Active State - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Disabled - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- - - Ghost Buttons - - -

- Use - .btn-ghost-* class for ghost buttons. -

- - - Normal - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Active State - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Disabled - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- - - Square Buttons - - -

- Use - .btn-square class for square buttons. -

- - - Normal - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Active State - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Disabled - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- - - Pill Buttons - - -

- Use - .btn-pill class for pill buttons. -

- - - Normal - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Active State - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - Disabled - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
-
- - - Sizes - - -

- Fancy larger or smaller buttons? Add size="lg" or{" "} - size="sm" for additional sizes. -

- - - Small - - - - - - - - - - - - - - - - - - - - Normal - - - - - - - - - - - - - - - - - - - - Large - - - - - - - - - - - - - - - - - -
-
- - - With Icons - - - - - - - - - - - - - - - - - - - - - - - - - - Block Level Buttons - - -

- Add prop block -

- - - - - - - -
-
- - - - - Block Level Buttons - - -

- Add prop block -

- - - - - - - -
-
- -
-
- ); - } -} - -export default Buttons; diff --git a/atd-vze/src/views/Buttons/Buttons/Buttons.test.js b/atd-vze/src/views/Buttons/Buttons/Buttons.test.js deleted file mode 100644 index e7177d381..000000000 --- a/atd-vze/src/views/Buttons/Buttons/Buttons.test.js +++ /dev/null @@ -1,9 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom"; -import Buttons from "./Buttons"; - -it("renders without crashing", () => { - const div = document.createElement("div"); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); diff --git a/atd-vze/src/views/Buttons/Buttons/package.json b/atd-vze/src/views/Buttons/Buttons/package.json deleted file mode 100644 index 61422c12c..000000000 --- a/atd-vze/src/views/Buttons/Buttons/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "Buttons", - "version": "0.0.0", - "private": true, - "main": "./Buttons.js" -} diff --git a/atd-vze/src/views/Buttons/index.js b/atd-vze/src/views/Buttons/index.js deleted file mode 100644 index 2d27357d7..000000000 --- a/atd-vze/src/views/Buttons/index.js +++ /dev/null @@ -1,6 +0,0 @@ -import ButtonDropdowns from "./ButtonDropdowns"; -import ButtonGroups from "./ButtonGroups"; -import Buttons from "./Buttons"; -import BrandButtons from "./BrandButtons"; - -export { ButtonDropdowns, ButtonGroups, Buttons, BrandButtons }; diff --git a/atd-vze/src/views/Charts/Charts.js b/atd-vze/src/views/Charts/Charts.js deleted file mode 100644 index 5b979dee7..000000000 --- a/atd-vze/src/views/Charts/Charts.js +++ /dev/null @@ -1,224 +0,0 @@ -import React, { Component } from "react"; -import { Bar, Doughnut, Line, Pie, Polar, Radar } from "react-chartjs-2"; -import { Card, CardBody, CardColumns, CardHeader } from "reactstrap"; -import { CustomTooltips } from "@coreui/coreui-plugin-chartjs-custom-tooltips"; - -const line = { - labels: ["January", "February", "March", "April", "May", "June", "July"], - datasets: [ - { - label: "My First dataset", - fill: false, - lineTension: 0.1, - backgroundColor: "rgba(75,192,192,0.4)", - borderColor: "rgba(75,192,192,1)", - borderCapStyle: "butt", - borderDash: [], - borderDashOffset: 0.0, - borderJoinStyle: "miter", - pointBorderColor: "rgba(75,192,192,1)", - pointBackgroundColor: "#fff", - pointBorderWidth: 1, - pointHoverRadius: 5, - pointHoverBackgroundColor: "rgba(75,192,192,1)", - pointHoverBorderColor: "rgba(220,220,220,1)", - pointHoverBorderWidth: 2, - pointRadius: 1, - pointHitRadius: 10, - data: [65, 59, 80, 81, 56, 55, 40], - }, - ], -}; - -const bar = { - labels: ["January", "February", "March", "April", "May", "June", "July"], - datasets: [ - { - label: "My First dataset", - backgroundColor: "rgba(255,99,132,0.2)", - borderColor: "rgba(255,99,132,1)", - borderWidth: 1, - hoverBackgroundColor: "rgba(255,99,132,0.4)", - hoverBorderColor: "rgba(255,99,132,1)", - data: [65, 59, 80, 81, 56, 55, 40], - }, - ], -}; - -const doughnut = { - labels: ["Red", "Green", "Yellow"], - datasets: [ - { - data: [300, 50, 100], - backgroundColor: ["#FF6384", "#36A2EB", "#FFCE56"], - hoverBackgroundColor: ["#FF6384", "#36A2EB", "#FFCE56"], - }, - ], -}; - -const radar = { - labels: [ - "Eating", - "Drinking", - "Sleeping", - "Designing", - "Coding", - "Cycling", - "Running", - ], - datasets: [ - { - label: "My First dataset", - backgroundColor: "rgba(179,181,198,0.2)", - borderColor: "rgba(179,181,198,1)", - pointBackgroundColor: "rgba(179,181,198,1)", - pointBorderColor: "#fff", - pointHoverBackgroundColor: "#fff", - pointHoverBorderColor: "rgba(179,181,198,1)", - data: [65, 59, 90, 81, 56, 55, 40], - }, - { - label: "My Second dataset", - backgroundColor: "rgba(255,99,132,0.2)", - borderColor: "rgba(255,99,132,1)", - pointBackgroundColor: "rgba(255,99,132,1)", - pointBorderColor: "#fff", - pointHoverBackgroundColor: "#fff", - pointHoverBorderColor: "rgba(255,99,132,1)", - data: [28, 48, 40, 19, 96, 27, 100], - }, - ], -}; - -const pie = { - labels: ["Red", "Green", "Yellow"], - datasets: [ - { - data: [300, 50, 100], - backgroundColor: ["#FF6384", "#36A2EB", "#FFCE56"], - hoverBackgroundColor: ["#FF6384", "#36A2EB", "#FFCE56"], - }, - ], -}; - -const polar = { - datasets: [ - { - data: [11, 16, 7, 3, 14], - backgroundColor: ["#FF6384", "#4BC0C0", "#FFCE56", "#E7E9ED", "#36A2EB"], - label: "My dataset", // for legend - }, - ], - labels: ["Red", "Green", "Yellow", "Grey", "Blue"], -}; - -const options = { - tooltips: { - enabled: false, - custom: CustomTooltips, - }, - maintainAspectRatio: false, -}; - -class Charts extends Component { - render() { - return ( -
- - - - Line Chart - - - -
- -
-
-
- - - Bar Chart - - - -
- -
-
-
- - - Doughnut Chart - - - -
- -
-
-
- - - Radar Chart - - - -
- -
-
-
- - - Pie Chart - - - -
- -
-
-
- - - Polar Area Chart - - - -
- -
-
-
-
-
- ); - } -} - -export default Charts; diff --git a/atd-vze/src/views/Charts/Charts.test.js b/atd-vze/src/views/Charts/Charts.test.js deleted file mode 100644 index 586572dca..000000000 --- a/atd-vze/src/views/Charts/Charts.test.js +++ /dev/null @@ -1,18 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom"; -import Charts from "./Charts"; - -jest.mock("react-chartjs-2", () => ({ - Line: () => null, - Polar: () => null, - Pie: () => null, - Radar: () => null, - Bar: () => null, - Doughnut: () => null, -})); - -it("renders without crashing", () => { - const div = document.createElement("div"); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); diff --git a/atd-vze/src/views/Charts/package.json b/atd-vze/src/views/Charts/package.json deleted file mode 100644 index 19793aaf2..000000000 --- a/atd-vze/src/views/Charts/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "Charts", - "version": "0.0.0", - "private": true, - "main": "./Charts.js" -} diff --git a/atd-vze/src/views/Crashes/ChargesDetailsCard.js b/atd-vze/src/views/Crashes/ChargesDetailsCard.js index a0ba2602d..2ceb659f7 100644 --- a/atd-vze/src/views/Crashes/ChargesDetailsCard.js +++ b/atd-vze/src/views/Crashes/ChargesDetailsCard.js @@ -1,4 +1,4 @@ -import React from "react"; +import React, { useState } from "react"; import { Card, @@ -10,48 +10,43 @@ import { Collapse, } from "reactstrap"; -const ChargesDetailsCard = ({ chargesData, isExpanded, toggleAccordion }) => { +const ChargesDetailsCard = ({ data }) => { + const [isOpen, setIsOpen] = useState(true); return ( - + - + + + - + - {chargesData.map( - (charge, i) => - charge.charge !== "NO CHARGES" && ( - - - - - ) - )} + {data.map((charge, i) => ( + + + + + + + ))}
UnitPerson ChargeCharge CategoryCitation Number
{charge.charge}{charge.charge_cat_id}
{charge.unit_nbr}{charge.prsn_nbr}{charge.charge}{charge.citation_nbr}
diff --git a/atd-vze/src/views/Crashes/Crash.js b/atd-vze/src/views/Crashes/Crash.js index ee08a09f1..cc760efab 100644 --- a/atd-vze/src/views/Crashes/Crash.js +++ b/atd-vze/src/views/Crashes/Crash.js @@ -18,7 +18,6 @@ import { isReadOnly, } from "../../auth/authContext"; -import CrashCollapses from "./CrashCollapses"; import CrashMap from "./Maps/CrashMap"; import CrashEditCoordsMap from "./Maps/CrashEditCoordsMap"; import Widget02 from "../Widgets/Widget02"; @@ -30,38 +29,29 @@ import Notes from "../../Components/Notes/Notes"; import { createCrashDataMap } from "./crashDataMap"; import Recommendations from "./Recommendations/Recommendations"; import Page404 from "../Pages/Page404/Page404"; +import UnitDetailsCard from "./UnitDetailsCard"; +import PeopleDetailsCard from "./PeopleDetailsCard"; +import ChargesDetailsCard from "./ChargesDetailsCard"; import "./crash.scss"; -import { GET_CRASH, UPDATE_CRASH } from "../../queries/crashes"; -import { GET_PEOPLE } from "../../queries/people"; +import { UPDATE_CRASH, GET_CRASH } from "../../queries/crashes"; import { - GET_NOTES, INSERT_NOTE, UPDATE_NOTE, DELETE_NOTE, } from "../../queries/crashNotes"; function Crash(props) { - const crashId = props.match.params.id; - const { loading, error, data, refetch } = useQuery(GET_CRASH, { - variables: { crashId }, - }); + const crashId = props.match.params.id.toUpperCase(); const { - loading: peopleLoading, - error: peopleError, - data: peopleData, - } = useQuery(GET_PEOPLE, { + loading: crashLoading, + error: crashError, + data: crashData, + refetch: crashRefetch, + } = useQuery(GET_CRASH, { variables: { crashId }, }); - const primaryPersonYearsOfLifeLost = - peopleData?.primary_person_years_of_life_lost?.aggregate?.sum - ?.years_of_life_lost || 0; - const personYearsOfLifeLost = - peopleData?.person_years_of_life_lost?.aggregate?.sum?.years_of_life_lost || - 0; - const totalYearsOfLifeLost = - primaryPersonYearsOfLifeLost + personYearsOfLifeLost; const [editField, setEditField] = useState(""); const [formData, setFormData] = useState({}); @@ -70,32 +60,8 @@ function Crash(props) { const { getRoles } = useAuth0(); const roles = getRoles(); - const isCrashFatal = - data?.atd_txdot_crashes?.[0]?.atd_fatality_count > 0 ? true : false; - const shouldShowFatalityRecommendations = - (isAdmin(roles) || isItSupervisor(roles)) && isCrashFatal; - - if (loading || peopleLoading) return "Loading..."; - if (error) return `Error! ${error.message}`; - if (peopleError) return `Error! ${peopleError.message}`; - - const createGeocoderAddressString = data => { - const geocoderAddressFields = [ - "rpt_block_num", - "rpt_street_pfx", - "street_name", - "rpt_street_pfx", - ]; - let geocoderAddressString = ""; - geocoderAddressFields.forEach(field => { - if (data?.atd_txdot_crashes?.[0]?.[field] !== null) { - geocoderAddressString = geocoderAddressString.concat( - data?.atd_txdot_crashes?.[0]?.[field] + " " - ); - } - }); - return geocoderAddressString; - }; + if (crashLoading) return "Loading..."; + if (crashError) return `Error! ${crashError.message}`; const handleInputChange = e => { const newFormState = Object.assign(formData, { @@ -118,75 +84,71 @@ function Crash(props) { .mutate({ mutation: UPDATE_CRASH, variables: { - crashId: crashId, + id: crashPk, changes: { ...formData, ...secondaryFormData }, }, }) - .then(res => refetch()); + .then(res => crashRefetch()); setEditField(""); }; - const handleButtonClick = (e, buttonParams, data) => { - e.preventDefault(); - - // Expose the field to mutate defined in crashDataMap - // and the value from data using the dataPath, then mutate - const fieldToUpdate = buttonParams.field; - const fieldValue = - data[buttonParams.dataTableName][0][buttonParams.dataPath]; - const buttonFormData = { [fieldToUpdate]: fieldValue }; - - props.client - .mutate({ - mutation: UPDATE_CRASH, - variables: { - crashId: crashId, - changes: { ...formData, ...buttonFormData }, - }, - }) - .then(res => refetch()); + const crashRecord = { + crash: crashData?.crashes?.[0] || { + crash_injury_metrics_view: {}, + crashes_list_view: {}, + }, }; + const crashPk = crashRecord?.crash?.id; const { - atd_fatality_count: deathCount, - sus_serious_injry_cnt: seriousInjuryCount, - latitude_primary: latitude, - longitude_primary: longitude, - address_confirmed_primary: primaryAddress, - address_confirmed_secondary: secondaryAddress, - cr3_stored_flag: cr3StoredFlag, - temp_record: tempRecord, - geocode_method: geocodeMethod, - cr3_file_metadata: cr3FileMetadata, - investigator_narrative_ocr: investigatorNarrative, - } = !!data?.atd_txdot_crashes[0] ? data?.atd_txdot_crashes[0] : {}; + crash_injury_metrics_view: { vz_fatality_count: deathCount }, + crash_injury_metrics_view: { sus_serious_injry_count: seriousInjuryCount }, + crashes_list_view: { is_manual_geocode: isManualGeocode }, + address_primary: primaryAddress, + address_secondary: secondaryAddress, + crash_injury_metrics_view: { years_of_life_lost: yearsOfLifeLost }, + investigator_narrative: investigatorNarrative, + cr3_stored_fl: cr3StoredFlag, + latitude, + longitude, + location_id: locationId, + is_temp_record: tempRecord, + private_dr_fl: isPrivateDrive, + in_austin_full_purpose: isInAustinFullPurpose, + } = crashRecord?.crash; - const mapGeocoderAddress = createGeocoderAddressString(data); + const isCrashFatal = deathCount > 0 ? true : false; + const shouldShowFatalityRecommendations = + (isAdmin(roles) || isItSupervisor(roles)) && isCrashFatal; - const hasLocation = - data && - data?.atd_txdot_crashes.length > 0 && - data?.atd_txdot_crashes[0]["location_id"]; + const hasLocation = crashRecord?.crash["location_id"]; const hasCoordinates = !!latitude && !!longitude; - return !data?.atd_txdot_crashes?.length ? ( + return !crashData.crashes[0] ? ( ) : (
- {primaryAddress && secondaryAddress ? ( -

{`${primaryAddress} & ${secondaryAddress}`}

- ) : ( -

{`${ - primaryAddress ? primaryAddress : "PRIMARY ADDRESS MISSING" - } & ${ - secondaryAddress ? secondaryAddress : "SECONDARY ADDRESS MISSING" - }`}

- )} +

{`${primaryAddress ? primaryAddress : ""} ${ + secondaryAddress ? "& " + secondaryAddress : "" + }`}

+ {(isPrivateDrive !== false || isInAustinFullPurpose !== true) && ( + + + + This crash is not + included in Vision Zero statistical reporting because{" "} + {isPrivateDrive + ? "it occurred on a private drive" + : "it is located outside of the Austin full purpose jurisdiction"} + + + + )} Crash Location (ID:{" "} {(hasLocation && ( - - {data.atd_txdot_crashes[0]["location_id"]} - + {locationId} )) || "unassigned"} )
Geocode Provider:{" "} {hasCoordinates - ? geocodeMethod.name + ? isManualGeocode + ? "Manual Q/A" + : "TxDOT CRIS" : "No Primary Coordinates"} @@ -261,17 +217,17 @@ function Crash(props) { {!hasCoordinates && ( Crash record is missing latitude and longitude values required - for map display. + for map display )} {!isEditingCoords ? ( - + ) : ( )} @@ -281,9 +237,8 @@ function Crash(props) {
@@ -298,42 +253,55 @@ function Crash(props) { )} - + + + {shouldShowFatalityRecommendations && ( - + )} - - + +
diff --git a/atd-vze/src/views/Crashes/CrashChange.js b/atd-vze/src/views/Crashes/CrashChange.js deleted file mode 100644 index 478f116b1..000000000 --- a/atd-vze/src/views/Crashes/CrashChange.js +++ /dev/null @@ -1,939 +0,0 @@ -import React, { useState, useEffect } from "react"; -import { Link, Redirect } from "react-router-dom"; -import { gql } from "apollo-boost"; -import { withApollo } from "react-apollo"; -import { useQuery, useMutation } from "@apollo/react-hooks"; -import { useAuth0 } from "../../auth/authContext"; -import { MiniDiff } from "../../Components/MiniDiff"; -import axios from "axios"; - -import "./crash.scss"; - -import { - Card, - CardBody, - CardHeader, - Col, - Row, - Button, - Alert, - Badge, - Modal, - ModalHeader, - ModalBody, - ModalFooter, - Spinner, -} from "reactstrap"; - -import { AppSwitch } from "@coreui/react"; -import { - GET_CRASH_CHANGE, - GET_CRASH_SECONDARY_RECORDS, - CRASH_MUTATION_UPDATE, - RECORD_DELETE_CHANGE_RECORDS, -} from "../../queries/crashes_changes"; -import { importantCrashFields } from "./crashFieldDescriptions"; - -function CrashChange(props) { - const crashId = props.match.params.id; - const [redirect, setRedirect] = useState(false); - const [selectedFields, setSelectedFields] = useState([]); - const [recordData, setRecordData] = useState({}); - // Arrays of column names - const [importantFieldList, setImportantFieldList] = useState([]); - const [differentFieldsList, setDifferentFieldsList] = useState([]); - const [selectableList, setSelectableList] = useState([]); - // Arrays of Components - const [importantFields, setImportantFields] = useState([]); - const [differentFields, setDifferentFields] = useState([]); - const [showFieldsDiffOnly, setShowFieldsDiffOnly] = useState(true); - // Modals - const [approveAllModalOpen, setApproveAllModalOpen] = useState(false); - const [discardAllModalOpen, setDiscardAllModalOpen] = useState(false); - const [unselectAllModalOpen, setUnselectAllModalOpen] = useState(false); - const [savingChanges, setSavingChanges] = useState(false); - const [errorDialog, setErrorDialog] = useState(false); - const [saveStatus, setSaveStatus] = useState(""); - const [errorMessage, setErrorMessage] = useState(""); - // CR3 Available - const [cr3available, setCR3Available] = useState(false); - - const { user } = useAuth0(); - - /** - * Mutations - */ - - const [updateCrashRecord] = useMutation(CRASH_MUTATION_UPDATE); - - const [deleteFromQueue] = useMutation( - gql` - ${RECORD_DELETE_CHANGE_RECORDS} - ` - ); - - const { data, error, refetch } = useQuery(GET_CRASH_CHANGE, { - variables: { crashId }, - }); - - const { data: secondaryData } = useQuery(GET_CRASH_SECONDARY_RECORDS, { - variables: { crashId }, - }); - - /** - * Wait for data to be retrieved, then change state. - */ - useEffect(() => setRecordData(data), [data]); - - /** - * Returns true if fieldName exists within the selectedFields array. - * @param {string} fieldName - The name of the field - * @returns {boolean} - */ - const isFieldEnabled = fieldName => { - return selectedFields.includes(fieldName); - }; - - /** - * Sleeps a for a few milliseconds - * @param {int} milliseconds - The length of sleep in milliseconds - * @returns {Promise} - */ - const sleep = milliseconds => { - return new Promise(resolve => setTimeout(resolve, milliseconds)); - }; - - /** - * Adds or removes field name from the selectedFields array. - * @param {string} fieldName - The name of the field. - */ - const toggleField = fieldName => { - let newFieldList = selectedFields; - - // If it is there, remove it. - if (isFieldEnabled(fieldName)) { - const index = newFieldList.indexOf(fieldName); - if (index !== -1) newFieldList.splice(index, 1); - - // If it isn't there, then add it. - } else { - newFieldList.push(fieldName); - } - const newList = [...newFieldList]; - setSelectedFields(newList); - }; - - /** - * Toggles the diff only option in state - */ - const toggleDiffOnly = () => { - setShowFieldsDiffOnly(!showFieldsDiffOnly); - }; - - /** - * Returns the existing record in database. - * @returns {object|null} - The object data from the database - */ - const getOriginalRecord = () => { - return recordData["atd_txdot_crashes"][0] || null; - }; - - /** - * Returns the new record as an object - * @returns {object|null} - The parsed object - */ - const getNewRecord = () => { - try { - return JSON.parse(recordData["atd_txdot_changes"][0]["record_json"]); - } catch { - redirectToQueueIndex(); - return null; - } - }; - - /** - * Returns a deconstructable array with two objects containing the old record and the new record. - * @returns {object[]} - */ - const getOriginalNewRecords = () => { - return [getOriginalRecord(), getNewRecord()]; - }; - - /** - * Batch-enables a list of fields - * @param {int} mode - The mode to operate: 1) Main, 2) All other fields, 3) All fields - */ - const fieldsBatchEnable = mode => { - let list = []; - - // Loop through main fields only - if (mode === 1) { - list = [...importantFieldList]; - } - // Loop through all other fields - else if (mode === 2) { - list = [...differentFieldsList]; - } - // Loop through all fields - else if (mode === 3) { - list = [...importantFieldList, ...differentFieldsList]; - } - - // If selectable & not already there - const enabledList = list.filter(field => { - return selectableList.includes(field) && !selectedFields.includes(field); - }); - - const newList = [...selectedFields, ...enabledList]; - setSelectedFields(newList); - }; - - /** - * Batch-enables a list of fields - * @param {int} mode - The mode to operate: 1) Main, 2) All other fields, 3) All fields - */ - const fieldsBatchClear = mode => { - let list = []; - - // Loop through main fields only - if (mode === 1) { - list = [...importantFieldList]; - } - // Loop through all other fields - else if (mode === 2) { - list = [...differentFieldsList]; - } - // Loop through all fields - else if (mode === 3) { - list = [...importantFieldList, ...differentFieldsList]; - } - - const enabledList = selectedFields.filter(field => { - return !list.includes(field); - }); - - const newList = [...enabledList]; - setSelectedFields(newList); - }; - - /** - * Downloads a CR3 - */ - const downloadCR3 = () => { - const requestUrl = `${process.env.REACT_APP_CR3_API_DOMAIN}/cr3/download/${crashId}`; - const token = window.localStorage.getItem("id_token"); - - axios - .request(requestUrl, { - headers: { - Authorization: `Bearer ${token}`, - }, - }) - .then(res => { - const win = window.open(res.data.message, "_blank"); - win.focus(); - }); - }; - - /** - * Returns an array of strings containing the fields that are selectable - * @returns {string[]} - */ - const generate_diff_selectable = () => { - const [originalRecord, newRecord] = getOriginalNewRecords(); - - if (!newRecord) return []; - - return Object.keys(newRecord).filter(field => { - return ( - cleanString(originalRecord[field]) !== cleanString(newRecord[field]) - ); - }); - }; - - /** - * Returns a clean string (if null, then assume empty. - * @param {string} input - The string being cleaned - * @returns {string} - */ - const cleanString = input => { - if (input === null) return ""; - return String(`${input}`).trim(); - }; - - /** - * Generates a JSX Row object, it returns null if there is no difference between the original value - * and the new value from the new record as provided by the ETL process. - * @param {string} field - The name of the field in the database (the column) - * @param {string} label - The name of the label to show (if not the name of the field) - * @param {string} originalFieldValue - The value of the record as it currently is in the database. - * @param {string} newFieldValue - The value of the new record as provided by the ETL process. - * @returns {Row} - */ - const generateRow = (field, label, originalFieldValue, newFieldValue) => { - const originalValue = cleanString(originalFieldValue); - const newValue = cleanString(newFieldValue); - - const change = originalValue !== newValue; - const selectorEnabled = isFieldEnabled(field); - - // if showFieldsDiffOnly is enabled, do not show if no change... - if (showFieldsDiffOnly) { - if (!change) return null; - } - - return ( - - - {field} - - - {originalValue} - - - - - - {change && ( - toggleField(field)} - checked={selectorEnabled} - /> - )} - - - ); - }; - - /** - * In this useEffect, we listen for any changes to the data or to the - * selected fields. If they change, so does our two groups of fields. - */ - useEffect(() => { - if (Object.keys(recordData).length > 0) { - if ( - (recordData["atd_txdot_crashes"][0]["cr3_stored_flag"] || null) === "Y" - ) { - setCR3Available(true); - } - - try { - // We need a list of all important fields as defined in importantCrashFields - setImportantFieldList( - Object.keys(importantCrashFields).filter(field => { - return field; - }) - ); - - setSelectableList(generate_diff_selectable()); - } catch { - redirectToQueueIndex(); - } - } - }, [recordData]); // eslint-disable-line react-hooks/exhaustive-deps - - /** - * In this useEffect, we listen for changes to the importantFieldList - * group, as well as any changes to the showFieldsDiffOnly variable. - */ - useEffect(() => { - if (Object.keys(recordData).length === 0) return; - - const [originalRecord, newRecord] = getOriginalNewRecords(); - const importantFields = Object.keys(importantCrashFields); - - try { - delete originalRecord["cr3_stored_flag"]; - delete originalRecord["crash_id"]; - delete originalRecord["__typename"]; - } finally { - // do nothing - } - - try { - // Now we need the rest of all other fields - setDifferentFieldsList( - Object.keys(originalRecord).filter(field => { - return !importantFields.includes(field); - }) - ); - - // Now we get to build our component based on our list of important fields - setImportantFields( - Object.keys(importantCrashFields).map(field => { - return generateRow( - field, - field.label, - originalRecord[field], - newRecord[field] - ); - }) - ); - } catch { - redirectToQueueIndex(); - } - }, [importantFieldList, showFieldsDiffOnly, recordData, selectedFields]); // eslint-disable-line react-hooks/exhaustive-deps - - /** - * In this useEffect, we listen for changes to the differentFieldsList - * group, as well as any changes to the showFieldsDiffOnly variable. - */ - useEffect(() => { - if (Object.keys(recordData).length === 0) return; - - const [originalRecord, newRecord] = getOriginalNewRecords(); - - try { - setDifferentFields( - differentFieldsList.map(field => { - return generateRow( - field, - field, - originalRecord[field], - newRecord[field] - ); - }) - ); - } catch { - redirectToQueueIndex(); - } - }, [differentFieldsList, showFieldsDiffOnly, recordData, selectedFields]); // eslint-disable-line react-hooks/exhaustive-deps - - /** - * Closes all dialogs - */ - const hideAllDialogs = () => { - setApproveAllModalOpen(false); - setDiscardAllModalOpen(false); - setUnselectAllModalOpen(false); - setSavingChanges(false); - }; - - /** - * Hides the Save Selected Changes Modal - */ - const hideSaveSelectedChanges = () => { - setApproveAllModalOpen(false); - }; - - /** - * Show the Save Selected Changes Modal - */ - const showSaveSelectedChanges = () => { - setApproveAllModalOpen(true); - }; - - /** - * Hides the Discard New Record Modal - */ - const hideDiscardNewRecord = () => { - setDiscardAllModalOpen(false); - }; - - /** - * Shows the Discard New Record Modal - */ - const showDiscardNewRecord = () => { - setDiscardAllModalOpen(true); - }; - - /** - * Hides the Unselect All Changes Modal - */ - const hideUnselectAllModal = () => { - setUnselectAllModalOpen(false); - }; - - /** - * Shows the Unselect All Changes Modal - */ - const showUnselectAllModal = () => { - setUnselectAllModalOpen(true); - }; - - /** - * Shows the Error dialog - */ - const showErrorDialog = () => { - hideAllDialogs(); - setErrorDialog(true); - }; - - /** - * Hides the Error dialog - */ - const hideErrorDialog = () => { - setErrorDialog(false); - }; - - /** - * Shows the process dialog (when saving or deleting) - */ - const showProcessDialog = () => { - setSavingChanges(true); - }; - - /** - * Operations: Update, Delete, etc. - */ - - /** - * Redirects to the index page - */ - const redirectToQueueIndex = () => { - setRedirect(true); - }; - - /** - * It is dummy start point for any changes to the database... - * @returns {Promise} - */ - const startSaveProcess = async () => { - showProcessDialog(); - setSaveStatus("beginning update process"); - await sleep(1000); - }; - - /** - * Executes graphql query to update the crash record - */ - const executeUpdateCrashRecord = async () => { - const record = secondaryData["atd_txdot_changes"][0]; - const recordString = record["record_json"] || "{}"; - const recordObject = - JSON.parse(recordString)[0] || JSON.parse(recordString) || {}; - - let changesObject = {}; - - selectedFields.forEach(field => { - changesObject[field] = recordObject[field]; - }); - - changesObject["updated_by"] = user.email || "DiffView"; - - updateCrashRecord({ - variables: { - crashId: crashId, - changes: changesObject, - }, - }) - .then(() => { - refetch(); - }) - .catch(error => console.error(error)); - }; - - /** - * Executes graphql queries to update secondary records - * @returns {Promise} - */ - const executeUpdateQueries = async () => { - setSaveStatus("updating secondary records"); - await sleep(1000); - }; - - /** - * Executes the queries to delete the records from queue - * @returns {Promise} - */ - const executeDeleteChangesRecords = async () => { - setSaveStatus("removing records from queue"); - await sleep(1000); - await deleteFromQueue({ variables: { crashId: crashId } }); - await refetch(); - }; - - /** - * Displays the error in a Dialog - * @param {string} errorMessage - The error message to be displayed - * @return {Promise} - */ - const chainError = errorMessage => { - setErrorMessage(String(errorMessage)); - showErrorDialog(); - return Promise.reject(errorMessage); - }; - - /** - * Saves the selected fields and discards the change - */ - const saveSelectedFields = () => { - startSaveProcess() - .then(executeUpdateCrashRecord, chainError) - .then(executeUpdateQueries, chainError) - .then(executeDeleteChangesRecords, chainError) - .then(() => { - // If it all goes well then redirect to the index page... - redirectToQueueIndex(); - }); - }; - - /** - * Initializes the discard process... - */ - const discardChange = () => { - hideDiscardNewRecord(); - - startSaveProcess() - .then(executeDeleteChangesRecords) - .then(() => { - setSaveStatus("Redirecting to index page..."); - redirectToQueueIndex(); - }) - .catch(error => { - setErrorMessage("Error on Delete: " + error); - showErrorDialog(); - }); - }; - - /** - * Render variables - */ - // List of Selectable Fields - const mainFieldsSelectable = importantFieldList.filter(field => { - return selectableList.includes(field); - }); - - // If selectable & not already there - const otherFieldsSelectable = differentFieldsList.filter(field => { - return selectableList.includes(field); - }); - - const noDifferencesMessage = ( - - There are no differences in the rest of the record. - - ); - - const fieldsHeader = ( - - - Crash Table Field - - -
- Current -
- - -
- New -
- - -   - -
- ); - - /** - * Render the view - */ - return redirect ? ( - - ) : error ? ( -
{error}
- ) : ( -
- - -

Crash ID: {crashId}

-
-
- - - - - - Options - -
- toggleDiffOnly()} - /> - Show All Fields -
-
- - - - -  Open Existing - - - - - - - - - showSaveSelectedChanges()} - > - - - showDiscardNewRecord()} - > - - - - -
- -
- - {/* IMPORTANT FIELDS */} - - - - - - Main Fields: {mainFieldsSelectable.length} - - - - - - {((mainFieldsSelectable.length > 0 || - showFieldsDiffOnly === false) && ( - <> - {fieldsHeader} - {importantFields} - - )) || <>{noDifferencesMessage}} - - - - - - {/* OTHER FIELDS */} - - - - - - Other Fields: {otherFieldsSelectable.length} - - - - - - {((otherFieldsSelectable.length > 0 || - showFieldsDiffOnly === false) && ( - <> - {fieldsHeader} - {differentFields} - - )) || <>{noDifferencesMessage}} - - - - - - hideSaveSelectedChanges()} - className={"modal-success"} - > - hideSaveSelectedChanges()}> - {selectedFields.length > 0 && <>Save selected changes?} - {selectedFields.length === 0 && <>No selected changes} - - - {selectedFields.length > 0 && ( - <> - Click Save to save the selected changes into the - record. Click Cancel to stop and close this - dialog without changes. - - )} - {selectedFields.length === 0 && ( - <> - No changes have been selected. In order to make changes to the - existing record, you must select at least one change. - - )} - - - {selectedFields.length > 0 && ( - - )} - - - - - hideUnselectAllModal()} - className={"modal-warning"} - > - hideUnselectAllModal()}> - Unselect all? - - - Click Unselect All to turn off every selected item. - Click Cancel to stop and close this dialog without - changes. - - - {" "} - - - - - hideDiscardNewRecord()} - className={"modal-danger"} - > - hideDiscardNewRecord()}> - Discard incoming record? - - - Click Discard to discard the new incoming record, and - leave the original the way it is without changes. Click{" "} - Cancel to stop and close this dialog without changes.{" "} - This cannot be undone. - - - {" "} - - - - - - - - Commiting Changes to Database - - - - - - Saving changes, please wait... {saveStatus} - - - - You will be redirected back to the queue. - - - - hideErrorDialog()} - className={"modal-secondary"} - keyboard={false} - > - hideErrorDialog()}> - Error - - - {errorMessage} - - - - - -
- ); -} - -export default withApollo(CrashChange); diff --git a/atd-vze/src/views/Crashes/CrashChangeLog.js b/atd-vze/src/views/Crashes/CrashChangeLog.js index ec8a135aa..48272ca65 100644 --- a/atd-vze/src/views/Crashes/CrashChangeLog.js +++ b/atd-vze/src/views/Crashes/CrashChangeLog.js @@ -1,243 +1,119 @@ -import React, { Component } from "react"; - -import { - Badge, - Button, - Card, - CardBody, - CardHeader, - Col, - Table, - Row, - Modal, - ModalHeader, - ModalBody, - ModalFooter, -} from "reactstrap"; +import React, { useMemo, useState } from "react"; +import { Card, CardBody, CardHeader, Table } from "reactstrap"; import { formatDateTimeString } from "../../helpers/format"; - -class CrashChangeLog extends Component { - constructor(props) { - super(props); - - this.state = { - modal: false, - modalBody: null, - dataFrom: null, - dataTo: null, - data: this.props.data, - }; - } - - /** - * Shows the modal box by changing the state, does not alter the body. - */ - showModal = () => { - this.setState({ - modal: true, - }); - }; - - /** - * Closes the modal box by changing the state and emptying the modal body. - */ - closeModal = () => { - this.setState({ - modal: false, - modalBody: null, - }); - }; - - /** - * Compares the archived json object against the current data object as populated via props. - * @param {Object} record's json - */ - compare = record => { - // Holds only the keys - let diff = []; - - // Holds the html for our modal box - let modalBody = null; - - // Iterate through our record's key & values - for (let [key, value] of Object.entries( - this.props.data.atd_txdot_crashes[0] - )) { - // Let's get rid of typename - if (key === "__typename") continue; - - try { - // Gather the archived value for the current field - let archivedRecordValue = record.record_json[key]; - - // If the value is different from the current value, then put it in the diff array. - if (archivedRecordValue !== value) { - diff.push({ - original_record_key: key, - original_record_value: value, - archived_record_value: archivedRecordValue, - }); - } - } catch (error) { - alert("Error: " + error); - } +import ChangeDetailsModal from "./CrashChangeLogDetails"; + +const KEYS_TO_IGNORE = ["updated_at", "updated_by", "position"]; + +/** + * Return an array of values that are different between the `old` object and `new` object + * Each object in the array takes the format + * { field: , old: , new: } + */ +const getDiffArray = (old, new_) => { + const diffArray = Object.keys(new_).reduce((diffs, key) => { + if (new_?.[key] !== old?.[key] && KEYS_TO_IGNORE.indexOf(key) < 0) { + diffs.push({ field: key, old: old?.[key], new: new_?.[key] }); } + return diffs; + }, []); + // sort array of entries by field name + diffArray.sort((a, b) => { + if (a.field < b.field) { + return -1; + } + if (a.field > b.field) { + return 1; + } + return 0; + }); + return diffArray; +}; + +/** + * Prettify the user name if it is `cris` + */ +const formatUserName = userName => + userName === "cris" ? "TxDOT CRIS" : userName; + +/** + * Hook that returns an array with one entry per row in the + * the change log view for the given crash. It adds two properties to the data + * returned from the change log view: + * - diffs: an array of old/new values for each field that has changed + * - affected_fields: an array of the field names that have changed + */ +const useChangeLogData = data => + useMemo(() => { + if (!data) { + return []; + } + return data.map(change => { + change.diffs = getDiffArray( + change.record_json.old, + change.record_json.new + ); + change.affected_fields = change.diffs.map(diff => diff.field); + change.created_by = formatUserName(change.created_by); + return change; + }); + }, [data]); - // Define a function to pass to JSON.stringify which will skip over - // the __typename key in the JS object being stringified. - const stringifyReplacer = (key, value) => { - if (key === "__typename") { - return undefined; - } - return value; - }; - - // For each entry created in the diff array, generate an HTML table row. - let modalItems = diff.map((item, i) => { - // The following two conditions check if an the current or archived value to - // to be shown in the crach's changelog are objects, such as found when a jsonb - // field is pulled from the database. In this case, they are stringified for - // human-readble output. - if (typeof item.original_record_value === "object") { - item.original_record_value = JSON.stringify( - item.original_record_value, - stringifyReplacer - ); - } +const isNewRecordEvent = change => change.operation_type === "create"; - if (typeof item.archived_record_value === "object") { - item.archived_record_value = JSON.stringify( - item.archived_record_value, - stringifyReplacer - ); - } +/** + * The primary UI component which renders the change log with clickable rows + */ +export default function CrashChangeLog({ data }) { + const [selectedChange, setSelectedChange] = useState(null); - return ( - - {item.original_record_key} - - - {String(item.original_record_value)} - - - - - {String(item.archived_record_value)} - - - - ); - }); + const changes = useChangeLogData(data); + if (changes.length === 0) { + return

No change history found

; + } - // Generate the body of the modal box - modalBody = ( -
-
Crash ID: {record.record_crash_id}
-
Edited Date: {formatDateTimeString(record.update_timestamp)}
-
Updated by: {record.updated_by || "Unavailable"}
-   - + return ( + + Record history + +
- - - - - + + + + + + - {modalItems} -
FieldCurrent ValuePrevious Value
Record typeEventAffected fieldsEdited byDate
-
- ); - - // Set the state of the modal box to contain the body - this.setState({ modalBody: modalBody }); - // Show the modal - this.showModal(); - }; - - render() { - let modal = null, - content = null; - // If there are no records, let's not render anything... - if (this.props.data.atd_txdot_change_log.length === 0) { - modal = null; - content =

No changes found for this record.

; - } else { - modal = ( - - Record Differences - {this.state.modalBody} - - - - - ); - content = ( - <> -

Record History

- - - - - - - + + {changes.map(change => ( + setSelectedChange(change)} + style={{ cursor: "pointer" }} + > + + + + + - - - {this.props.data.atd_txdot_change_log.map(record => ( - - - - - - ))} - -
Date EditedUpdated by
{change.record_type}{change.operation_type} + {isNewRecordEvent(change) + ? "" + : change.affected_fields.join(", ")} + {change.created_by}{formatDateTimeString(change.created_at)}
- - {formatDateTimeString(record.update_timestamp)} - - - - {String(record.updated_by || "Unavailable")} - - - -
- - ); - } - - // Render Box - return ( -
- {modal} - - - - - Change Log - - {content} - - - -
- ); - } + ))} + + + {/* Modal with change details table */} + {selectedChange && ( + + )} + +
+ ); } - -export default CrashChangeLog; diff --git a/atd-vze/src/views/Crashes/CrashChangeLogDetails.js b/atd-vze/src/views/Crashes/CrashChangeLogDetails.js new file mode 100644 index 000000000..d21b57e5e --- /dev/null +++ b/atd-vze/src/views/Crashes/CrashChangeLogDetails.js @@ -0,0 +1,73 @@ +import React from "react"; +import { + Button, + Table, + Modal, + ModalHeader, + ModalBody, + ModalFooter, +} from "reactstrap"; +import { formatDateTimeString } from "../../helpers/format"; +const isNewRecordEvent = change => change.operation_type === "create"; + +/** + * Header component of the change details table + */ +const ChangeSummary = ({ selectedChange }) => { + return ( + <> + + {`${selectedChange.record_type}`} ID{" "} + {selectedChange.record_id} edited by{" "} + {selectedChange.created_by} + {" - "} + {formatDateTimeString(selectedChange.created_at)} + + + ); +}; + +/** + * Modal which renders change log details when a change log entry is clicked + */ +const ChangeDetailsModal = ({ selectedChange, setSelectedChange }) => { + return ( + setSelectedChange(null)} + className="mw-100 mx-5" + fade={false} + > + setSelectedChange(null)}> + + + + + + + {!isNewRecordEvent(selectedChange) && } + + + + {selectedChange.diffs.map(diff => ( + + + {!isNewRecordEvent(selectedChange) && ( + + )} + + + ))} + +
FieldPrevious valueNew value
{diff.field}{String(diff.old)}{String(diff.new)}
+
+ + + +
+ ); +}; + +export default ChangeDetailsModal; diff --git a/atd-vze/src/views/Crashes/CrashCollapses.js b/atd-vze/src/views/Crashes/CrashCollapses.js deleted file mode 100644 index b53679ca0..000000000 --- a/atd-vze/src/views/Crashes/CrashCollapses.js +++ /dev/null @@ -1,107 +0,0 @@ -import React, { Component } from "react"; -import { Card, CardBody, CardHeader, Col, Row } from "reactstrap"; - -import UnitDetailsCard from "./UnitDetailsCard"; -import PeopleDetailsCard from "./PeopleDetailsCard"; -import ChargesDetailsCard from "./ChargesDetailsCard"; - -class CrashCollapses extends Component { - constructor(props) { - super(props); - this.onEntering = this.onEntering.bind(this); - this.onEntered = this.onEntered.bind(this); - this.onExiting = this.onExiting.bind(this); - this.onExited = this.onExited.bind(this); - this.toggle = this.toggle.bind(this); - this.toggleAccordion = this.toggleAccordion.bind(this); - this.toggleCustom = this.toggleCustom.bind(this); - this.toggleFade = this.toggleFade.bind(this); - this.state = { - collapse: false, - accordion: [true, false, false], - custom: [true, false], - status: "Closed", - fadeIn: true, - timeout: 300, - }; - } - - onEntering() { - this.setState({ status: "Opening..." }); - } - - onEntered() { - this.setState({ status: "Opened" }); - } - - onExiting() { - this.setState({ status: "Closing..." }); - } - - onExited() { - this.setState({ status: "Closed" }); - } - - toggle() { - this.setState({ collapse: !this.state.collapse }); - } - - toggleAccordion(tab) { - const prevState = this.state.accordion; - const state = prevState.map((x, index) => (tab === index ? !x : false)); - - this.setState({ - accordion: state, - }); - } - - toggleCustom(tab) { - const prevState = this.state.custom; - const state = prevState.map((x, index) => (tab === index ? !x : false)); - - this.setState({ - custom: state, - }); - } - - toggleFade() { - this.setState({ fadeIn: !this.state.fadeIn }); - } - - render() { - return ( -
- - - - - Related Records - - -
- - - -
-
-
- -
-
- ); - } -} - -export default CrashCollapses; diff --git a/atd-vze/src/views/Crashes/CrashDiagram.js b/atd-vze/src/views/Crashes/CrashDiagram.js index b422a5023..964343987 100644 --- a/atd-vze/src/views/Crashes/CrashDiagram.js +++ b/atd-vze/src/views/Crashes/CrashDiagram.js @@ -9,20 +9,19 @@ import { Col, Row, UncontrolledTooltip, + Alert, } from "reactstrap"; import axios from "axios"; import { TransformWrapper, TransformComponent } from "react-zoom-pan-pinch"; -import { isDev } from "../../helpers/environment"; -const CrashDiagram = props => { - const [rotation, setRotation] = useState(0); +const CR3_DIAGRAM_BASE_URL = process.env.REACT_APP_CR3_DIAGRAM_BASE_URL; - // Set S3 folder for diagram depending on environment - const s3Folder = - process.env.NODE_ENV === "production" || isDev ? "production" : "staging"; +const CrashDiagram = ({ crashId, isCr3Stored, isTempRecord }) => { + const [diagramError, setDiagramError] = useState(false); + const [rotation, setRotation] = useState(0); const requestCR3 = () => { - const requestUrl = `${process.env.REACT_APP_CR3_API_DOMAIN}/cr3/download/${props.crashId}`; + const requestUrl = `${process.env.REACT_APP_CR3_API_DOMAIN}/cr3/download/${crashId}`; const token = window.localStorage.getItem("id_token"); axios @@ -51,123 +50,137 @@ const CrashDiagram = props => { Crash Diagram - {props.isCr3Stored ? ( - - ) : ( -
- )} +
- - {!!props.cr3FileMetadata && props.cr3FileMetadata.diagram_s3_file ? ( - - {({ zoomIn, zoomOut, resetTransform, ...rest }) => ( - <> - - - - - - - - - - - Reset Zoom - - - - - - - crash diagram - - - - - )} - - ) : props.isTempRecord ? ( -
- CR-3 PDFs, diagrams and narratives are not available for temporary - records. Using the case id, check the{" "} - + + - CRIS website - {" "} - for the latest status of this crash. -
- ) : ( -
- The crash diagram and investigator narrative are not available at - this time. -
- )} -
- {!!props.cr3FileMetadata && props.cr3FileMetadata.diagram_s3_file ? ( - -
- - - - - - - - - - - -
-
- ) : ( -
+ {({ zoomIn, zoomOut, resetTransform, ...rest }) => ( + <> + + + + + + + + + + + Reset Zoom + + + + + + + crash diagram { + console.error("Error loading CR3 diagram image"); + setDiagramError(true); + }} + /> + + + + + )} + + + +
+ + + + + + + + + + + +
+
+ )} + {diagramError && + (isTempRecord ? ( + + + Crash diagrams are not + available for user-created crash records + + + ) : ( + + +

+ The crash diagram is not available. Typically, this indicates + there was an error when processing this crash's CR3 PDF. +

+

+ For additional assistance, you can + +  report a bug  {" "} + + + . +

+
+
+ ))}
); }; diff --git a/atd-vze/src/views/Crashes/Crashes.js b/atd-vze/src/views/Crashes/Crashes.js index 34436551a..08b6588da 100644 --- a/atd-vze/src/views/Crashes/Crashes.js +++ b/atd-vze/src/views/Crashes/Crashes.js @@ -13,7 +13,8 @@ import { // Our initial query configuration let queryConf = { - table: "atd_txdot_crashes", + table: "crashes_list_view", + dateField: "crash_date_ct", single_item: "crashes", showDateRange: true, columns: crashGridTableColumns, @@ -54,7 +55,7 @@ const Crashes = () => { minDate={minDate} roleSpecificColumns={adminColumns} hasSpecificRole={isAdminOrItSupervisor} - defaultSearchField="crash_id" + defaultSearchField="record_locator" /> ); }; diff --git a/atd-vze/src/views/Crashes/CrashesChanges.js b/atd-vze/src/views/Crashes/CrashesChanges.js deleted file mode 100644 index ed8849903..000000000 --- a/atd-vze/src/views/Crashes/CrashesChanges.js +++ /dev/null @@ -1,31 +0,0 @@ -import React from "react"; -import { withApollo } from "react-apollo"; - -import GridTable from "../../Components/GridTable"; -import gqlAbstract from "../../queries/gqlAbstract"; - -import { crashChangesGridTableColumns } from "./crashChangesGridTableParameters"; - -// Our initial query configuration -let queryConf = { - options: { - useQuery: { - fetchPolicy: "no-cache", - }, - }, - table: "atd_txdot_changes_view", - single_item: "changes", - columns: crashChangesGridTableColumns, - order_by: {}, - where: {}, - limit: 25, - offset: 0, -}; - -let crashesQuery = new gqlAbstract(queryConf); - -const CrashesChanges = () => ( - -); - -export default withApollo(CrashesChanges); diff --git a/atd-vze/src/views/Crashes/Maps/CrashEditCoordsMap.js b/atd-vze/src/views/Crashes/Maps/CrashEditCoordsMap.js index 0cae826b3..7912f8d01 100644 --- a/atd-vze/src/views/Crashes/Maps/CrashEditCoordsMap.js +++ b/atd-vze/src/views/Crashes/Maps/CrashEditCoordsMap.js @@ -8,8 +8,7 @@ import MapGL, { import Pin from "./Pin"; import { useMutation } from "react-apollo"; -import { useAuth0 } from "../../../auth/authContext"; -import { UPDATE_COORDS } from "../../../queries/crashes"; +import { UPDATE_CRASH } from "../../../queries/crashes"; import { CrashEditLatLonForm } from "./CrashEditLatLonForm"; import { defaultInitialState, @@ -18,25 +17,21 @@ import { } from "../../../helpers/map"; const CrashEditCoordsMap = ({ - data, - mapGeocoderAddress, - crashId, + latitude, + longitude, + crashPk, refetchCrashData, setIsEditingCoords, }) => { - const { user } = useAuth0(); - const { email = null } = user; - const { latitude_primary = null, longitude_primary = null } = data; - const mapRef = React.useRef(); const [isDragging, setIsDragging] = React.useState(false); const [markerCoordinates, setMarkerCoordinates] = React.useState({ - latitude: latitude_primary, - longitude: longitude_primary, + latitude: latitude, + longitude: longitude, }); const [isSubmitting, setIsSubmitting] = React.useState(false); - const [updateCrashCoordinates] = useMutation(UPDATE_COORDS); + const [updateCrashCoordinates] = useMutation(UPDATE_CRASH); const onDrag = e => { const latitude = e.viewState.latitude; @@ -50,11 +45,11 @@ const CrashEditCoordsMap = ({ setIsSubmitting(true); const variables = { - qaStatus: 3, // Lat/Long entered manually to Primary - geocodeProvider: 5, // Manual Q/A - crashId: crashId, - updatedBy: email, - ...markerCoordinates, + id: crashPk, + changes: { + ...markerCoordinates, + updated_by: localStorage.getItem("hasura_user_email"), + }, }; updateCrashCoordinates({ @@ -71,8 +66,8 @@ const CrashEditCoordsMap = ({ const handleFormReset = () => { // Reset marker to original coordinates or default fallback const originalMarkerCoordinates = { - latitude: latitude_primary || defaultInitialState.latitude, - longitude: longitude_primary || defaultInitialState.longitude, + latitude: latitude || defaultInitialState.latitude, + longitude: longitude || defaultInitialState.longitude, }; // Move map center and marks to original coordinates or default fallback @@ -95,8 +90,8 @@ const CrashEditCoordsMap = ({ { - const { latitude_primary = null, longitude_primary = null } = data; - +const CrashMap = ({ latitude, longitude }) => { return ( { > - + {/* add nearmap raster source and style */} diff --git a/atd-vze/src/views/Crashes/PeopleDetailsCard.js b/atd-vze/src/views/Crashes/PeopleDetailsCard.js index b9c99431e..d361bc17b 100644 --- a/atd-vze/src/views/Crashes/PeopleDetailsCard.js +++ b/atd-vze/src/views/Crashes/PeopleDetailsCard.js @@ -1,4 +1,4 @@ -import React from "react"; +import React, { useState } from "react"; import { useQuery } from "@apollo/react-hooks"; import { @@ -12,39 +12,33 @@ import { import RelatedRecordsTable from "./RelatedRecordsTable"; -import { primaryPersonDataMap, personDataMap } from "./personDataMap"; +import { primaryPersonDataMap, personDataMap } from "./peopleDataMap"; import { GET_PERSON_LOOKUPS } from "../../queries/lookups"; -import { - GET_PEOPLE, - UPDATE_PRIMARYPERSON, - UPDATE_PERSON, -} from "../../queries/people"; +import { UPDATE_PERSON } from "../../queries/people"; + +const PeopleDetailsCard = ({ data, refetch, ...props }) => { + const [isOpen, setIsOpen] = useState(true); -const PeopleDetailsCard = ({ isExpanded, toggleAccordion, ...props }) => { - const crashId = props.match.params.id; + const { data: lookupSelectOptions, loading, error } = useQuery( + GET_PERSON_LOOKUPS + ); + + const primaryPersonData = data.filter( + person => person.is_primary_person === true + ); - const { data: lookupSelectOptions } = useQuery(GET_PERSON_LOOKUPS); - const { data, refetch } = useQuery(GET_PEOPLE, { - variables: { crashId }, - }); + const personData = data.filter(person => person.is_primary_person === false); const personMutation = { mutation: UPDATE_PERSON, variables: { - crashId: crashId, personId: "", changes: {}, }, }; - const primaryPersonMutation = { - mutation: UPDATE_PRIMARYPERSON, - variables: { - crashId: crashId, - personId: "", - changes: {}, - }, - }; + if (loading) return "Loading..."; + if (error) return `Error! ${error.message}`; return ( @@ -53,47 +47,37 @@ const PeopleDetailsCard = ({ isExpanded, toggleAccordion, ...props }) => { block color="link" className="text-left m-0 p-0" - onClick={() => toggleAccordion(1)} - aria-expanded={isExpanded} - aria-controls="collapseOne" + onClick={() => setIsOpen(!isOpen)} >
- People{" "} - - { - data.atd_txdot_primaryperson.concat(data.atd_txdot_person) - .length - } - + People + {data.length}
- + - {data.atd_txdot_person.length > 0 && ( + {personData.length > 0 && ( { +const Recommendations = ({ crashPk, recommendation, refetch }) => { // get current users email const userEmail = localStorage.getItem("hasura_user_email"); // fetch recommendation table from database using graphQL query - const { loading, error, data, refetch } = useQuery(GET_RECOMMENDATIONS, { - variables: { crashId }, - }); + const { loading, error, data } = useQuery(GET_RECOMMENDATION_LOOKUPS); // declare mutation functions const [addRecommendation] = useMutation(INSERT_RECOMMENDATION); @@ -32,7 +30,6 @@ const Recommendations = ({ crashId }) => { if (error) return `Error! ${error.message}`; const fieldConfig = recommendationsDataMap; - const recommendation = data?.recommendations?.[0]; const partners = recommendation?.recommendations_partners; const doesRecommendationRecordExist = recommendation ? true : false; const recommendationRecordId = recommendation?.id; @@ -47,7 +44,7 @@ const Recommendations = ({ crashId }) => { const onAdd = valuesObject => { const recommendationRecord = { - crashId, + crashPk, userEmail, ...valuesObject, }; @@ -183,7 +180,6 @@ const Recommendations = ({ crashId }) => {
-
); }; diff --git a/atd-vze/src/views/Crashes/RelatedRecordsTable.js b/atd-vze/src/views/Crashes/RelatedRecordsTable.js index 2dcc7cc47..1c650f820 100644 --- a/atd-vze/src/views/Crashes/RelatedRecordsTable.js +++ b/atd-vze/src/views/Crashes/RelatedRecordsTable.js @@ -9,6 +9,7 @@ const RelatedRecordsTable = ({ fieldConfig, data, sortField, + secondSortField, tableName, keyField, lookupOptions, @@ -76,9 +77,17 @@ const RelatedRecordsTable = ({ const formatValue = (data, field) => { let fieldValue = data[field]; - if (typeof data[field] === "object") { + // If the field comes from a hasura relationship then set the fieldValue accordingly + if (fieldConfig.fields[field].relationshipName) { + fieldValue = data[fieldConfig.fields[field].relationshipName][field]; + // If the field value is still an object we need to go a layer deeper to get the lookup desc + } else if (typeof data[field] === "object") { fieldValue = data[field] && data[field][fieldConfig.fields[field].lookup_desc]; + } else if (data[field] === true) { + fieldValue = "YES"; + } else if (data[field] === false) { + fieldValue = "NO"; } // Display null values as blanks, but allow 0 @@ -112,7 +121,11 @@ const RelatedRecordsTable = ({ {data - .sort((a, b) => (a[sortField] > b[sortField] ? 1 : -1)) + .sort( + (a, b) => + a[sortField] - b[sortField] || + a[secondSortField] - b[secondSortField] + ) .map(row => { return ( @@ -126,7 +139,7 @@ const RelatedRecordsTable = ({ .map((field, i) => { // Render victim name cell in victim name column if row is a fatality if (field === "victim_name") { - if (row.prsn_injry_sev_id === 4) { + if (row.injry_sev.id === 4) { return ( ); @@ -154,9 +169,6 @@ const RelatedRecordsTable = ({ const isEditing = editField === field && row === editRow; - const fieldLookupPrefix = - fieldConfig.fields[field].lookupPrefix; - const updateFieldKey = fieldConfig.fields[field] .updateFieldKey ? fieldConfig.fields[field].updateFieldKey @@ -200,28 +212,22 @@ const RelatedRecordsTable = ({ } defaultValue={ // Check for null values and display as blank - row[field] && - row[field][`${fieldLookupPrefix}_id`] !== - null - ? row[field][`${fieldLookupPrefix}_id`] + row[field] && row[field][`id`] !== null + ? row[field][`id`] : "" } type="select" > - + {lookupOptions[ fieldConfig.fields[field].lookupOptions ].map(option => { return ( ); })} @@ -236,9 +242,8 @@ const RelatedRecordsTable = ({ handleInputChange(e, updateFieldKey) } > - - - + + )}
diff --git a/atd-vze/src/views/Crashes/UnitDetailsCard.js b/atd-vze/src/views/Crashes/UnitDetailsCard.js index cb1dc7bbb..fe5430df9 100644 --- a/atd-vze/src/views/Crashes/UnitDetailsCard.js +++ b/atd-vze/src/views/Crashes/UnitDetailsCard.js @@ -1,4 +1,4 @@ -import React from "react"; +import React, { useState } from "react"; import { useQuery } from "@apollo/react-hooks"; import { @@ -14,66 +14,49 @@ import RelatedRecordsTable from "./RelatedRecordsTable"; import { unitDataMap } from "./unitDataMap"; import { GET_UNIT_LOOKUPS } from "../../queries/lookups"; -import { GET_UNITS, UPDATE_UNIT } from "../../queries/units"; +import { UPDATE_UNIT } from "../../queries/units"; -// // Quickfix to prioritize the main cardinal directions. -// if (fieldConfig.format === "select") { -// selectOptions.sort((a, b) => (a[`${prefix}_desc`].length > 5 ? 1 : -1)); - -// defaultValue = selectOptions.find(opt => opt[`${prefix}_desc`] === value)[ -// `${prefix}_id` -// ]; -// } - -const UnitDetailsCard = ({ isExpanded, toggleAccordion, ...props }) => { - const crashId = props.match.params.id; +const UnitDetailsCard = ({ data, refetch, ...props }) => { + const [isOpen, setIsOpen] = useState(true); const unitMutation = { mutation: UPDATE_UNIT, variables: { - crashId: crashId, unitId: "", changes: {}, }, }; - const { loading, error, data, refetch } = useQuery(GET_UNITS, { - variables: { crashId }, - }); - const { data: lookupSelectOptions } = useQuery(GET_UNIT_LOOKUPS); + const { data: lookupSelectOptions, loading, error } = useQuery( + GET_UNIT_LOOKUPS + ); if (loading) return "Loading..."; if (error) return `Error! ${error.message}`; - return loading ? ( - Loading... - ) : ( + return ( - + { - const crashId = props.match.params.id; - - const personId = - tableName === "atd_txdot_primaryperson" - ? row.primaryperson_id - : row.person_id; - - const { data, refetch } = useQuery(GET_PERSON_NAMES, { - variables: { crashId, personId }, - }); - - const personData = - tableName === "atd_txdot_primaryperson" - ? data?.atd_txdot_primaryperson?.[0] - : data?.atd_txdot_person?.[0]; + const personId = row.id; // Format name by concatenating first, middle, last or returning NO DATA const formatName = () => { var concatenatedName = ""; Object.keys(nameFieldConfig.subfields).forEach(field => { - if (personData?.[field] != null) { - concatenatedName = concatenatedName.concat(" ", personData?.[field]); + if (row?.[field] != null) { + concatenatedName = concatenatedName.concat(" ", row?.[field]); } }); const isNameBlank = concatenatedName === ""; @@ -59,15 +44,12 @@ const VictimNameField = ({ {Object.keys(nameFieldConfig.subfields).map(field => { return ( - + handleInputChange(e, field)} // Make input render in uppercase style={{ textTransform: "uppercase" }} @@ -116,7 +98,7 @@ const VictimNameField = ({ )} - {!isEditing && ( + {!isEditing && !isReadOnly && ( +
+ + +
+ + +
+
+ setSuccessfulNewRecordId(false)} + fade={false} + > + {/*eslint-disable-next-line*/} + Successfully created + crash{" "} + + #T{successfulNewRecordId} + + + setFeedback(false)} + fade={false} + > + {" "} + {feedback.title}: {feedback.message} + +
+
+ + + + + + + + + + + ); +}; + +export default withApollo(CreateCrashRecord); diff --git a/atd-vze/src/views/Tools/CreateCrashRecordTable.js b/atd-vze/src/views/CreateCrashRecord/CreateCrashRecordTable.js similarity index 57% rename from atd-vze/src/views/Tools/CreateCrashRecordTable.js rename to atd-vze/src/views/CreateCrashRecord/CreateCrashRecordTable.js index 7d1c23d43..688816519 100644 --- a/atd-vze/src/views/Tools/CreateCrashRecordTable.js +++ b/atd-vze/src/views/CreateCrashRecord/CreateCrashRecordTable.js @@ -1,9 +1,8 @@ -import React, { useState, useEffect } from "react"; +import React, { useState } from "react"; import { Link } from "react-router-dom"; import { withApollo } from "react-apollo"; -import { gql } from "apollo-boost"; -import { useQuery, useMutation } from "@apollo/react-hooks"; +import { useMutation } from "@apollo/react-hooks"; import { Alert, @@ -13,53 +12,32 @@ import { CardHeader, FormGroup, Input, - Label, Modal, ModalBody, ModalFooter, ModalHeader, - Table + Label, + Modal, + ModalBody, + ModalFooter, + ModalHeader, + Table, } from "reactstrap"; +import { SOFT_DELETE_TEMP_RECORDS } from "../../queries/tempRecords"; +import { formatDateTimeString } from "../../helpers/format"; -const GET_TEMP_RECORDS = gql` - query getTempRecords { - atd_txdot_crashes(where: { temp_record: { _eq: true } }) { - crash_id - case_id - crash_date - crash_time - updated_by - last_update - } - } -`; - -const DELETE_TEMP_RECORD = gql` - mutation deleteTempRecords($crashId: Int!) { - delete_atd_txdot_crashes(where: { crash_id: { _eq: $crashId } }) { - affected_rows - } - delete_atd_txdot_units(where: { crash_id: { _eq: $crashId } }) { - affected_rows - } - delete_atd_txdot_primaryperson(where: { crash_id: { _eq: $crashId } }) { - affected_rows - } - delete_atd_txdot_person(where: { crash_id: { _eq: $crashId } }) { - affected_rows - } - } -`; - -const CreateCrashRecordTable = () => { - - const [crashesData, setCrashesData] = useState(null); +const CreateCrashRecordTable = ({ + crashesData, + loading, + error, + refetch, + userEmail, + setSuccessfulNewRecordId, +}) => { const [crashSearch, setCrashSearch] = useState(""); const [modalOpen, setModalOpen] = useState(false); const [deleteId, setDeleteId] = useState(null); const [feedback, setFeedback] = useState(null); - const { loading, error, data } = useQuery(GET_TEMP_RECORDS, {fetchPolicy: 'no-cache'}); - const [deleteRecord] = useMutation(DELETE_TEMP_RECORD); + const [deleteTempRecords] = useMutation(SOFT_DELETE_TEMP_RECORDS); - useEffect(() => { - setCrashesData(data); - }, [data]); + if (loading) return "Loading..."; + if (error) return `Error! ${error.message}`; /** * Updates the case_id being searched @@ -70,39 +48,40 @@ const CreateCrashRecordTable = () => { }; /** - * Deletes all the temporary records in the database + * Soft deletes the temporary crash and all its associated unit and people records */ const handleDelete = () => { - setFeedback(null); - deleteRecord({ variables: { crashId: deleteId } }).then(() => { - const newData = crashesData["atd_txdot_crashes"].filter((item) => { - return item.crash_id !== deleteId; + deleteTempRecords({ + variables: { recordId: deleteId, updatedBy: userEmail }, + }) + .then(() => { + setSuccessfulNewRecordId(null); + setDeleteId(null); + setFeedback(`Crash ID ${deleteId} has been deleted.`); + toggleModalDelete(); + refetch(); + }) + .catch(err => { + setFeedback(String(err)); + setDeleteId(null); }); - setDeleteId(null); - setFeedback(`Crash ID ${deleteId} has been deleted.`); - setCrashesData({"atd_txdot_crashes": newData}); - toggleModalDelete(); - }).catch(err => { - setFeedback(String(err)); - setDeleteId(null); - }); - } + }; /** * Opens/Closes the delete modal */ const toggleModalDelete = () => { setModalOpen(!modalOpen); - } + }; /** - * Commits the crash_id to be deleted to state, and prompts for deletion. - * @param {int} crashId - The crash id to be deleted. + * Commits the crash record id to be deleted to state, and prompts for deletion. + * @param {int} recordId - The record id to be deleted. */ - const openModalDelete = (crashId) => { - setDeleteId(crashId); + const openModalDelete = recordId => { + setDeleteId(recordId); toggleModalDelete(); - } + }; return ( <> @@ -138,38 +117,35 @@ const CreateCrashRecordTable = () => { Crash ID Case ID - Crash Date - Crash Time + Crash Timestamp Updated By - Last Update + Updated At Action {crashesData && - crashesData["atd_txdot_crashes"] && - crashesData.atd_txdot_crashes.map((item, index) => { + crashesData.map((item, index) => { if (crashSearch !== "" && item.case_id !== crashSearch) return null; return ( - - {item.crash_id} + + {item.record_locator} {item.case_id} - {item.crash_date} - {item.crash_time} + {formatDateTimeString(item.crash_timestamp)} {item.updated_by} - {item.last_update} + {formatDateTimeString(item.updated_at)} @@ -190,7 +166,9 @@ const CreateCrashRecordTable = () => { Delete this record? - Are you sure you want to delete crash id {deleteId}? This cannot be undone. + + Are you sure you want to delete crash id T{deleteId}? + - - - - - - - - Badges contextual variations - - - - Primary - - - Secondary - - - Success - - - Danger - - - Warning - - - Info - - - Light - - - Dark - - - - - - - Badges pill badges - - - - Primary - - - Secondary - - - Success - - - Danger - - - Warning - - - Info - - - Light - - - Dark - - - - - - - Badges links - - - - Primary - - - Secondary - - - Success - - - Danger - - - Warning - - - Info - - - Light - - - Dark - - - - - - - ); - } -} - -export default Badges; diff --git a/atd-vze/src/views/Notifications/Badges/Badges.test.js b/atd-vze/src/views/Notifications/Badges/Badges.test.js deleted file mode 100644 index 6a5b296c5..000000000 --- a/atd-vze/src/views/Notifications/Badges/Badges.test.js +++ /dev/null @@ -1,9 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom"; -import Badges from "./Badges"; - -it("renders without crashing", () => { - const div = document.createElement("div"); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); diff --git a/atd-vze/src/views/Notifications/Badges/package.json b/atd-vze/src/views/Notifications/Badges/package.json deleted file mode 100644 index 6ea6e74ff..000000000 --- a/atd-vze/src/views/Notifications/Badges/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "Badges", - "version": "0.0.0", - "private": true, - "main": "./Badges.js" -} diff --git a/atd-vze/src/views/Notifications/Modals/Modals.js b/atd-vze/src/views/Notifications/Modals/Modals.js deleted file mode 100644 index 6619646fb..000000000 --- a/atd-vze/src/views/Notifications/Modals/Modals.js +++ /dev/null @@ -1,369 +0,0 @@ -import React, { Component } from "react"; -import { - Button, - Card, - CardBody, - CardHeader, - Col, - Modal, - ModalBody, - ModalFooter, - ModalHeader, - Row, -} from "reactstrap"; - -class Modals extends Component { - constructor(props) { - super(props); - this.state = { - modal: false, - large: false, - small: false, - primary: false, - success: false, - warning: false, - danger: false, - info: false, - }; - - this.toggle = this.toggle.bind(this); - this.toggleLarge = this.toggleLarge.bind(this); - this.toggleSmall = this.toggleSmall.bind(this); - this.togglePrimary = this.togglePrimary.bind(this); - this.toggleSuccess = this.toggleSuccess.bind(this); - this.toggleWarning = this.toggleWarning.bind(this); - this.toggleDanger = this.toggleDanger.bind(this); - this.toggleInfo = this.toggleInfo.bind(this); - } - - toggle() { - this.setState({ - modal: !this.state.modal, - }); - } - - toggleLarge() { - this.setState({ - large: !this.state.large, - }); - } - - toggleSmall() { - this.setState({ - small: !this.state.small, - }); - } - - togglePrimary() { - this.setState({ - primary: !this.state.primary, - }); - } - - toggleSuccess() { - this.setState({ - success: !this.state.success, - }); - } - - toggleWarning() { - this.setState({ - warning: !this.state.warning, - }); - } - - toggleDanger() { - this.setState({ - danger: !this.state.danger, - }); - } - - toggleInfo() { - this.setState({ - info: !this.state.info, - }); - } - - render() { - return ( -
- - - - - Bootstrap Modals - - - - - Modal title - - Lorem ipsum dolor sit amet, consectetur adipisicing elit, - sed do eiusmod tempor incididunt ut labore et dolore magna - aliqua. Ut enim ad minim veniam, quis nostrud exercitation - ullamco laboris nisi ut aliquip ex ea commodo consequat. - Duis aute irure dolor in reprehenderit in voluptate velit - esse cillum dolore eu fugiat nulla pariatur. Excepteur sint - occaecat cupidatat non proident, sunt in culpa qui officia - deserunt mollit anim id est laborum. - - - {" "} - - - - - - - - Modal title - - - Lorem ipsum dolor sit amet, consectetur adipisicing elit, - sed do eiusmod tempor incididunt ut labore et dolore magna - aliqua. Ut enim ad minim veniam, quis nostrud exercitation - ullamco laboris nisi ut aliquip ex ea commodo consequat. - Duis aute irure dolor in reprehenderit in voluptate velit - esse cillum dolore eu fugiat nulla pariatur. Excepteur sint - occaecat cupidatat non proident, sunt in culpa qui officia - deserunt mollit anim id est laborum. - - - {" "} - - - - - - - - Modal title - - - Lorem ipsum dolor sit amet, consectetur adipisicing elit, - sed do eiusmod tempor incididunt ut labore et dolore magna - aliqua. Ut enim ad minim veniam, quis nostrud exercitation - ullamco laboris nisi ut aliquip ex ea commodo consequat. - Duis aute irure dolor in reprehenderit in voluptate velit - esse cillum dolore eu fugiat nulla pariatur. Excepteur sint - occaecat cupidatat non proident, sunt in culpa qui officia - deserunt mollit anim id est laborum. - - - {" "} - - - - -
- - - - - Modal title - - - Lorem ipsum dolor sit amet, consectetur adipisicing elit, - sed do eiusmod tempor incididunt ut labore et dolore magna - aliqua. Ut enim ad minim veniam, quis nostrud exercitation - ullamco laboris nisi ut aliquip ex ea commodo consequat. - Duis aute irure dolor in reprehenderit in voluptate velit - esse cillum dolore eu fugiat nulla pariatur. Excepteur sint - occaecat cupidatat non proident, sunt in culpa qui officia - deserunt mollit anim id est laborum. - - - {" "} - - - - - - - - Modal title - - - Lorem ipsum dolor sit amet, consectetur adipisicing elit, - sed do eiusmod tempor incididunt ut labore et dolore magna - aliqua. Ut enim ad minim veniam, quis nostrud exercitation - ullamco laboris nisi ut aliquip ex ea commodo consequat. - Duis aute irure dolor in reprehenderit in voluptate velit - esse cillum dolore eu fugiat nulla pariatur. Excepteur sint - occaecat cupidatat non proident, sunt in culpa qui officia - deserunt mollit anim id est laborum. - - - {" "} - - - - - - - - Modal title - - - Lorem ipsum dolor sit amet, consectetur adipisicing elit, - sed do eiusmod tempor incididunt ut labore et dolore magna - aliqua. Ut enim ad minim veniam, quis nostrud exercitation - ullamco laboris nisi ut aliquip ex ea commodo consequat. - Duis aute irure dolor in reprehenderit in voluptate velit - esse cillum dolore eu fugiat nulla pariatur. Excepteur sint - occaecat cupidatat non proident, sunt in culpa qui officia - deserunt mollit anim id est laborum. - - - {" "} - - - - - - - - Modal title - - - Lorem ipsum dolor sit amet, consectetur adipisicing elit, - sed do eiusmod tempor incididunt ut labore et dolore magna - aliqua. Ut enim ad minim veniam, quis nostrud exercitation - ullamco laboris nisi ut aliquip ex ea commodo consequat. - Duis aute irure dolor in reprehenderit in voluptate velit - esse cillum dolore eu fugiat nulla pariatur. Excepteur sint - occaecat cupidatat non proident, sunt in culpa qui officia - deserunt mollit anim id est laborum. - - - {" "} - - - - - - - - Modal title - - - Lorem ipsum dolor sit amet, consectetur adipisicing elit, - sed do eiusmod tempor incididunt ut labore et dolore magna - aliqua. Ut enim ad minim veniam, quis nostrud exercitation - ullamco laboris nisi ut aliquip ex ea commodo consequat. - Duis aute irure dolor in reprehenderit in voluptate velit - esse cillum dolore eu fugiat nulla pariatur. Excepteur sint - occaecat cupidatat non proident, sunt in culpa qui officia - deserunt mollit anim id est laborum. - - - {" "} - - - -
-
- -
-
- ); - } -} - -export default Modals; diff --git a/atd-vze/src/views/Notifications/Modals/Modals.test.js b/atd-vze/src/views/Notifications/Modals/Modals.test.js deleted file mode 100644 index 1eb00de10..000000000 --- a/atd-vze/src/views/Notifications/Modals/Modals.test.js +++ /dev/null @@ -1,9 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom"; -import Modals from "./Modals"; - -it("renders without crashing", () => { - const div = document.createElement("div"); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); diff --git a/atd-vze/src/views/Notifications/Modals/package.json b/atd-vze/src/views/Notifications/Modals/package.json deleted file mode 100644 index 04e7ea00b..000000000 --- a/atd-vze/src/views/Notifications/Modals/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "Modals", - "version": "0.0.0", - "private": true, - "main": "./Modals.js" -} diff --git a/atd-vze/src/views/Notifications/index.js b/atd-vze/src/views/Notifications/index.js deleted file mode 100644 index 8b99384b3..000000000 --- a/atd-vze/src/views/Notifications/index.js +++ /dev/null @@ -1,5 +0,0 @@ -import Alerts from "./Alerts"; -import Badges from "./Badges"; -import Modals from "./Modals"; - -export { Alerts, Badges, Modals }; diff --git a/atd-vze/src/views/Reports/ReportsInconsistentKSI.js b/atd-vze/src/views/Reports/ReportsInconsistentKSI.js deleted file mode 100644 index e4cac0664..000000000 --- a/atd-vze/src/views/Reports/ReportsInconsistentKSI.js +++ /dev/null @@ -1,46 +0,0 @@ -import React from "react"; -import { withApollo } from "react-apollo"; - -import GridTable from "../../Components/GridTable"; -import gqlAbstract from "../../queries/gqlAbstract"; - -import { - crashGridTableColumns, -} from "./crashesInconsistentTableParameters"; - -// Our initial query configuration -let queryConf = { - table: "view_crashes_inconsistent_numbers", - single_item: "crashes", - showDateRange: false, - columns: crashGridTableColumns, - where: {}, - order_by: {}, - limit: 25, - offset: 0, -}; - -let exportFields = ` - atc_crash_id - atc_death_cnt - atu_death_cnt - atpp_death_cnt - atp_death_cnt - sus_serious_injry_cnt - atu_sus_serious_injry_cnt - atpp_sus_serious_injry_cnt - atp_sus_serious_injry_cnt -` - -let crashesQuery = new gqlAbstract(queryConf); - -const ReportsInconsistentKSI = () => ( - -); - -export default withApollo(ReportsInconsistentKSI); diff --git a/atd-vze/src/views/Reports/crashesInconsistentTableParameters.js b/atd-vze/src/views/Reports/crashesInconsistentTableParameters.js deleted file mode 100644 index 4bee67dd2..000000000 --- a/atd-vze/src/views/Reports/crashesInconsistentTableParameters.js +++ /dev/null @@ -1,67 +0,0 @@ -/* -* Configuration for the table view, no need for advanced filters. -* */ - -export const crashGridTableColumns = { - atc_crash_id: { - primary_key: true, - searchable: true, - sortable: true, - label_search: "Search by Crash ID", - label_table: "Crash ID", - type: "Int", - }, - atc_death_cnt: { - searchable: false, - sortable: true, - label_search: "", - label_table: "Crash Death Count", - type: "Int", - }, - atu_death_cnt: { - searchable: false, - sortable: true, - label_search: "", - label_table: "Unit Death Count", - type: "Int", - }, - atp_death_cnt: { - searchable: false, - sortable: true, - label_search: "", - label_table: "Person Death Count", - type: "Int", - }, - atpp_death_cnt: { - searchable: false, - sortable: true, - label_search: "", - label_table: "Primary Person Death Count", - type: "Int", - }, - - sus_serious_injry_cnt: { - searchable: false, - sortable: true, - label_table: "Crash Suspected Serious Injury", - type: "Int", - }, - atu_sus_serious_injry_cnt: { - searchable: false, - sortable: true, - label_table: "Unit Suspected Serious Injury", - type: "Int", - }, - atp_sus_serious_injry_cnt: { - searchable: false, - sortable: true, - label_table: "Person Suspected Serious Injury", - type: "Int", - }, - atpp_sus_serious_injry_cnt: { - searchable: false, - sortable: true, - label_table: "Primary Person Suspected Serious Injury", - type: "Int", - }, -}; diff --git a/atd-vze/src/views/Theme/Colors/Colors.js b/atd-vze/src/views/Theme/Colors/Colors.js deleted file mode 100644 index fedc91fdb..000000000 --- a/atd-vze/src/views/Theme/Colors/Colors.js +++ /dev/null @@ -1,184 +0,0 @@ -import React, { Component } from "react"; -import ReactDOM from "react-dom"; -import classNames from "classnames"; -import { Row, Col } from "reactstrap"; -import { rgbToHex } from "@coreui/coreui/dist/js/coreui-utilities"; - -class ThemeView extends Component { - constructor(props) { - super(props); - - this.state = { - bgColor: "rgb(255, 255, 255)", - }; - } - - componentDidMount() { - const elem = ReactDOM.findDOMNode(this).parentNode.firstChild; - const color = window - .getComputedStyle(elem) - .getPropertyValue("background-color"); - this.setState({ - bgColor: color || this.state.bgColor, - }); - } - - render() { - return ( - - - - - - - - - - - -
HEX:{rgbToHex(this.state.bgColor)}
RGB:{this.state.bgColor}
- ); - } -} - -class ThemeColor extends Component { - // constructor(props) { - // super(props); - // } - render() { - // const { className, children, ...attributes } = this.props - const { className, children } = this.props; - - const classes = classNames(className, "theme-color w-75 rounded mb-3"); - - return ( - -
- {children} - - - ); - } -} - -class Colors extends Component { - render() { - return ( -
-
-
- Theme colors -
-
- - -
Brand Primary Color
-
- -
Brand Secondary Color
-
- -
Brand Success Color
-
- -
Brand Danger Color
-
- -
Brand Warning Color
-
- -
Brand Info Color
-
- -
Brand Light Color
-
- -
Brand Dark Color
-
-
-
-
-
-
- Grays -
-
- - -
Gray 100 Color
-
- -
Gray 200 Color
-
- -
Gray 300 Color
-
- -
Gray 400 Color
-
- -
Gray 500 Color
-
- -
Gray 600 Color
-
- -
Gray 700 Color
-
- -
Gray 800 Color
-
- -
Gray 900 Color
-
-
-
-
-
-
- Additional colors -
-
- - -
Blue Color
-
- -
Light Blue Color
-
- -
Indigo Color
-
- -
Purple Color
-
- -
Pink Color
-
- -
Red Color
-
- -
Orange Color
-
- -
Yellow Color
-
- -
Green Color
-
- -
Teal Color
-
- -
Cyan Color
-
-
-
-
-
- ); - } -} - -export default Colors; diff --git a/atd-vze/src/views/Theme/Colors/Colors.test.js b/atd-vze/src/views/Theme/Colors/Colors.test.js deleted file mode 100644 index e8271efcc..000000000 --- a/atd-vze/src/views/Theme/Colors/Colors.test.js +++ /dev/null @@ -1,7 +0,0 @@ -import React from "react"; -import Colors from "./Colors"; -import { mount } from "enzyme"; - -it("renders without crashing", () => { - mount(); -}); diff --git a/atd-vze/src/views/Theme/Colors/package.json b/atd-vze/src/views/Theme/Colors/package.json deleted file mode 100644 index 6a2c041d9..000000000 --- a/atd-vze/src/views/Theme/Colors/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "Colors", - "version": "0.0.0", - "private": true, - "main": "./Colors.js" -} diff --git a/atd-vze/src/views/Theme/Typography/Typography.js b/atd-vze/src/views/Theme/Typography/Typography.js deleted file mode 100644 index 312863174..000000000 --- a/atd-vze/src/views/Theme/Typography/Typography.js +++ /dev/null @@ -1,259 +0,0 @@ -import React, { Component } from "react"; - -class Typography extends Component { - render() { - return ( -
-
-
Headings
-
-

- Documentation and examples for Bootstrap typography, including - global settings, headings, body text, lists, and more. -

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
HeadingExample
-

- - <h1></h1> - -

-
- h1. Bootstrap heading -
-

- - <h2></h2> - -

-
- h2. Bootstrap heading -
-

- - <h3></h3> - -

-
- h3. Bootstrap heading -
-

- - <h4></h4> - -

-
- h4. Bootstrap heading -
-

- - <h5></h5> - -

-
- h5. Bootstrap heading -
-

- - <h6></h6> - -

-
- h6. Bootstrap heading -
-
-
-
-
Headings
-
-

- .h1 through{" "} - .h6 classes are also - available, for when you want to match the font styling of a - heading but cannot use the associated HTML element. -

-
-

h1. Bootstrap heading

-

h2. Bootstrap heading

-

h3. Bootstrap heading

-

h4. Bootstrap heading

-

h5. Bootstrap heading

-

h6. Bootstrap heading

-
-
-
-
-
Display headings
-
-

- Traditional heading elements are designed to work best in the meat - of your page content. When you need a heading to stand out, - consider using a display heading—a larger, - slightly more opinionated heading style. -

-
- - - - - - - - - - - - - - - -
- Display 1 -
- Display 2 -
- Display 3 -
- Display 4 -
-
-
-
-
-
Inline text elements
-
-

- Traditional heading elements are designed to work best in the meat - of your page content. When you need a heading to stand out, - consider using a display heading—a larger, - slightly more opinionated heading style. -

-
-

- You can use the mark tag to highlight text. -

-

- - This line of text is meant to be treated as deleted text. - -

-

- - This line of text is meant to be treated as no longer - accurate. - -

-

- - This line of text is meant to be treated as an addition to the - document. - -

-

- This line of text will render as underlined -

-

- - This line of text is meant to be treated as fine print. - -

-

- This line rendered as bold text. -

-

- This line rendered as italicized text. -

-
-
-
-
-
Description list alignment
-
-

- Align terms and descriptions horizontally by using our grid - system’s predefined classes (or semantic mixins). For longer - terms, you can optionally add a{" "} - .text-truncate class to - truncate the text with an ellipsis. -

-
-
-
Description lists
-
- A description list is perfect for defining terms. -
- -
Euismod
-
-

- Vestibulum id ligula porta felis euismod semper eget lacinia - odio sem nec elit. -

-

Donec id elit non mi porta gravida at eget metus.

-
- -
Malesuada porta
-
- Etiam porta sem malesuada magna mollis euismod. -
- -
- Truncated term is truncated -
-
- Fusce dapibus, tellus ac cursus commodo, tortor mauris - condimentum nibh, ut fermentum massa justo sit amet risus. -
- -
Nesting
-
-
-
Nested definition list
-
- Aenean posuere, tortor sed cursus feugiat, nunc augue - blandit nunc. -
-
-
-
-
-
-
-
- ); - } -} - -export default Typography; diff --git a/atd-vze/src/views/Theme/Typography/Typography.test.js b/atd-vze/src/views/Theme/Typography/Typography.test.js deleted file mode 100644 index ef859f6e9..000000000 --- a/atd-vze/src/views/Theme/Typography/Typography.test.js +++ /dev/null @@ -1,9 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom"; -import Typography from "./Typography"; - -it("renders without crashing", () => { - const div = document.createElement("div"); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); diff --git a/atd-vze/src/views/Theme/Typography/package.json b/atd-vze/src/views/Theme/Typography/package.json deleted file mode 100644 index 565eac289..000000000 --- a/atd-vze/src/views/Theme/Typography/package.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "name": "Typography", - "version": "0.0.0", - "private": true, - "main": "./Typography.js" -} diff --git a/atd-vze/src/views/Theme/index.js b/atd-vze/src/views/Theme/index.js deleted file mode 100644 index 969c5b2df..000000000 --- a/atd-vze/src/views/Theme/index.js +++ /dev/null @@ -1,4 +0,0 @@ -import Colors from "./Colors"; -import Typography from "./Typography"; - -export { Colors, Typography }; diff --git a/atd-vze/src/views/Tools/CreateCrashRecord.js b/atd-vze/src/views/Tools/CreateCrashRecord.js deleted file mode 100644 index a441227b9..000000000 --- a/atd-vze/src/views/Tools/CreateCrashRecord.js +++ /dev/null @@ -1,465 +0,0 @@ -import React, { useState, useEffect, useReducer } from "react"; -import { Link } from "react-router-dom"; - -import { - Alert, - Button, - Card, - CardBody, - CardHeader, - CardFooter, - Col, - Input, - Label, - Form, - FormGroup, - FormText, - FormFeedback, -} from "reactstrap"; -import { format } from "date-fns"; -import { withApollo } from "react-apollo"; -import { gql } from "apollo-boost"; -import "./CreateCrashRecord.css"; -import UnitsForm from "./UnitsForm"; -import CreateCrashRecordTable from "./CreateCrashRecordTable"; -import { useAuth0 } from "../../auth/authContext"; - -const CreateCrashRecord = ({ client }) => { - const { user } = useAuth0(); - - const unitsInitialState = [ - { unit_desc_id: 1, atd_fatality_count: 0, sus_serious_injry_cnt: 0 }, - ]; - - const formInitialState = { - tempId: 1000, - caseId: "", - crashTime: format(new Date(), "HH:mm:ss"), - crashDate: format(new Date(), "yyyy-MM-dd"), - primaryAddress: "", - secondayAddress: "", - units: [ - { unit_desc_id: 1, atd_fatality_count: 0, sus_serious_injry_cnt: 0 }, - ], - }; - - const [tempId, setTempId] = useState(formInitialState.tempId); - const [caseId, setCaseId] = useState(formInitialState.caseId); - const [successfulNewRecordId, setSuccessfulNewRecordId] = useState(null); - const [crashTime, setCrashTime] = useState(formInitialState.crashTime); - const [crashDate, setCrashDate] = useState(formInitialState.crashDate); - const [feedback, setFeedback] = useState(false); - const [primaryAddress, setPrimaryAddress] = useState( - formInitialState.primaryAddress - ); - const [secondayAddress, setSecondaryAddress] = useState( - formInitialState.secondayAddress - ); - - function unitsReducer(state, action) { - const { type, payload, unitIndex } = action; - - // When a user clicks the "Add Unit" button, add another unit object to the - // unit state array using the initial state template provided from the payload. - if (type === "addNewUnit") { - return [...state, payload]; - } - - if (type === "reset") { - return unitsInitialState; - } - - const updatedState = [...state]; - updatedState[unitIndex][type] = payload; - return updatedState; - } - - const [unitFormState, unitFormDispatch] = useReducer( - unitsReducer, - unitsInitialState - ); - - function isFieldInvalid(data) { - return !data; - } - - useEffect(() => { - const GET_HIGHEST_TEMP_RECORD_ID = gql` - { - atd_txdot_crashes( - where: { temp_record: { _eq: true } } - limit: 1 - order_by: { crash_id: desc } - ) { - crash_id - } - } - `; - - client - .mutate({ - mutation: GET_HIGHEST_TEMP_RECORD_ID, - }) - .then(res => { - // Find the highest existing temp crash record ID value. - // If there aren't and temp crash records, - // default to 1000. - const highestCurrentTempId = res.data.atd_txdot_crashes[0] - ? res.data.atd_txdot_crashes[0].crash_id - : 1000; - setTempId(highestCurrentTempId + 1); - }) - .catch(error => { - setFeedback({ title: "Error", message: String(error) }); - }); - }, [client]); - - const resetForm = () => { - setCaseId(formInitialState.caseId); - setCrashTime(formInitialState.crashTime); - setCrashDate(formInitialState.crashDate); - setPrimaryAddress(formInitialState.primaryAddress); - setSecondaryAddress(formInitialState.secondayAddress); - unitFormDispatch({ type: "reset" }); - }; - - const handleFormSubmit = e => { - e.preventDefault(); - setFeedback(false); - - client - .query({ - query: gql` - { - atd_txdot_crashes(where: {case_id: {_eq: "${caseId}"}}) { - case_id - } - } - `, - }) - .then(res => { - if (res.data.atd_txdot_crashes.length > 0) { - setFeedback({ title: "Error", message: "Case ID must be unique." }); - } else { - if (isFieldInvalid(caseId)) { - setFeedback({ - title: "Error", - message: "Must have a valid Case ID.", - }); - return false; - } - - // Build an array of persons objects formated as a string - // so the String can be interpolated into the gql tag syntax. - let personObjects = "["; - let unitObjects = "["; - - unitFormState.forEach((unit, i) => { - let unitNumber = i + 1; - - unitObjects = unitObjects.concat( - `{ - crash_id: $crash_id, - unit_nbr: ${unitNumber}, - death_cnt: ${Number(unit.atd_fatality_count)}, - sus_serious_injry_cnt: ${Number(unit.sus_serious_injry_cnt)}, - unit_desc_id: ${Number(unit.unit_desc_id)} - }` - ); - - for ( - let index = 0; - index < Number(unit.atd_fatality_count); - index++ - ) { - personObjects = personObjects.concat(`{ - crash_id: ${tempId}, - unit_nbr: ${unitNumber}, - prsn_injry_sev_id: 4, - }`); - } - - for ( - let index = 0; - index < Number(unit.sus_serious_injry_cnt); - index++ - ) { - personObjects = personObjects.concat(`{ - crash_id: ${tempId}, - unit_nbr: ${unitNumber}, - prsn_injry_sev_id: 1, - }`); - } - }); - - personObjects = personObjects.concat("]"); - unitObjects = unitObjects.concat("]"); - - const INSERT_BULK = gql` - mutation bulkInsert( - $address_confirmed_primary: String - $address_confirmed_secondary: String - $atd_fatality_count: Int - $case_id: String - $crash_date: date - $crash_fatal_fl: String - $crash_id: Int - $crash_time: time, - $sus_serious_injry_cnt: Int, - $updated_by: String - ) { - insert_atd_txdot_crashes( - objects: [ - { - address_confirmed_primary: $address_confirmed_primary - address_confirmed_secondary: $address_confirmed_secondary - atd_fatality_count: $atd_fatality_count - case_id: $case_id - city_id: 22 - crash_date: $crash_date - crash_fatal_fl: $crash_fatal_fl - crash_id: $crash_id - crash_time: $crash_time - sus_serious_injry_cnt: $sus_serious_injry_cnt - updated_by: $updated_by - temp_record: true - } - ] - ) { - affected_rows - returning { - crash_id - } - } - - insert_atd_txdot_units( - objects: ${unitObjects} - ) { - affected_rows - } - - insert_atd_txdot_primaryperson(objects: ${personObjects}) { - affected_rows - } - } - `; - const fatalityCountSum = unitFormState.reduce( - (a, b) => a + Number(b.atd_fatality_count), - 0 - ); - const susSeriousInjuryCountSum = unitFormState.reduce( - (a, b) => a + Number(b.sus_serious_injry_cnt), - 0 - ); - - const crashVariables = { - atd_fatality_count: fatalityCountSum, - address_confirmed_primary: primaryAddress, - address_confirmed_secondary: secondayAddress, - case_id: caseId, - crash_date: crashDate, - crash_fatal_fl: fatalityCountSum > 0 ? "Y" : "N", - crash_id: tempId, - crash_time: crashTime, - sus_serious_injry_cnt: susSeriousInjuryCountSum, - updated_by: user.email, - }; - - client - .mutate({ - mutation: INSERT_BULK, - variables: crashVariables, - }) - .then(res => { - // Increment the temp ID so the user can resuse the form. - setTempId(tempId + 1); - setSuccessfulNewRecordId( - res.data.insert_atd_txdot_crashes.returning[0].crash_id - ); - resetForm(); - // unitFormDispatch({ type: "reset" }); - }) - .catch(error => { - setFeedback({ title: "Error", message: String(error) }); - }); - } - }); - }; - - return ( -
handleFormSubmit(e)} - onReset={e => resetForm(e)} - className="form-horizontal" - > - - Create New Crash Record Set - - setSuccessfulNewRecordId(false)} - > - {/*eslint-disable-next-line*/} - Crash record creation successful.{" "} - - Open new Crash ID #{successfulNewRecordId} details page - - . - - setFeedback(false)} - > - {feedback.title}: {feedback.message} - - - - - - - - setCaseId(e.target.value)} - /> - {isFieldInvalid(caseId) ? ( - - Case ID must be unique and can't be blank. - - ) : ( - - Please enter the Case ID - - )} - - - - - - - - setCrashTime(e.target.value)} - /> - {isFieldInvalid(crashTime) ? ( - Crash Time can't be blank. - ) : ( - - Please enter the Crash Time - - )} - - - - - - - - setCrashDate(e.target.value)} - /> - {isFieldInvalid(crashDate) ? ( - Crash Date can't be blank. - ) : ( - - Please enter the Crash Date. - - )} - - - - - - - - setPrimaryAddress(e.target.value)} - /> - - Please enter the Primary Address - - - - - - - - - setSecondaryAddress(e.target.value)} - /> - - Please enter the Secondary Address - - - - - - -
- -
-
- -
- - -
-
-
- - - ); -}; - -export default withApollo(CreateCrashRecord); diff --git a/atd-vze/src/views/Tools/ToolsUploadNonCR3.css b/atd-vze/src/views/Tools/ToolsUploadNonCR3.css deleted file mode 100644 index aef0c54ef..000000000 --- a/atd-vze/src/views/Tools/ToolsUploadNonCR3.css +++ /dev/null @@ -1,30 +0,0 @@ -.text-value--shadow { - text-shadow: 3px 3px 4px rgba(0,0,0,0.2); -} - -.hottable { - border: solid 1px red; -} - -.hottable__footer { - background-color: #f0f0f0; - font-size: .8rem; - padding: .25rem; -} - -.btn-secondary--spaced { - margin: 1rem 0; -} - -.csv-reader-input { - padding: .4rem 0; -} - -.show-errors-btn { - padding: .8rem 0px; -} - -.show-errors-btn > span { - position: relative; - top: -0.4rem; -} diff --git a/atd-vze/src/views/UploadNonCr3/UploadNonCR3.css b/atd-vze/src/views/UploadNonCr3/UploadNonCR3.css new file mode 100644 index 000000000..c2dbdb030 --- /dev/null +++ b/atd-vze/src/views/UploadNonCr3/UploadNonCR3.css @@ -0,0 +1,30 @@ +.text-value--shadow { + text-shadow: 3px 3px 4px rgba(0, 0, 0, 0.2); +} + +.hottable { + border: solid 1px red; +} + +.hottable__footer { + background-color: #f0f0f0; + font-size: 0.8rem; + padding: 0.25rem; +} + +.btn-secondary--spaced { + margin: 1rem 0; +} + +.csv-reader-input { + padding: 0.4rem 0; +} + +.show-errors-btn { + padding: 0.8rem 0px; +} + +.show-errors-btn > span { + position: relative; + top: -0.4rem; +} diff --git a/atd-vze/src/views/Tools/ToolsUploadNonCR3.js b/atd-vze/src/views/UploadNonCr3/UploadNonCR3.js similarity index 99% rename from atd-vze/src/views/Tools/ToolsUploadNonCR3.js rename to atd-vze/src/views/UploadNonCr3/UploadNonCR3.js index 715171e09..c2dc36abd 100644 --- a/atd-vze/src/views/Tools/ToolsUploadNonCR3.js +++ b/atd-vze/src/views/UploadNonCr3/UploadNonCR3.js @@ -21,7 +21,7 @@ import { import { withApollo } from "react-apollo"; import { useMutation } from "@apollo/react-hooks"; -import "./ToolsUploadNonCR3.css"; +import "./UploadNonCR3.css"; import "handsontable/dist/handsontable.full.css"; import { HotTable } from "@handsontable/react"; import CSVReader from "react-csv-reader"; diff --git a/atd-vze/src/views/VZDashboard/VZDashboard.js b/atd-vze/src/views/VZDashboard/VZDashboard.js index e877afd85..24957d131 100644 --- a/atd-vze/src/views/VZDashboard/VZDashboard.js +++ b/atd-vze/src/views/VZDashboard/VZDashboard.js @@ -5,41 +5,26 @@ import { useQuery } from "@apollo/react-hooks"; import Widget02 from "../Widgets/Widget02"; import VZLinksWidget from "../Widgets/VZLinksWidget"; import VZNoticeWidget from "../Widgets/VZNoticeWidget"; -import { format, subDays } from "date-fns"; import { GET_CRASHES_YTD } from "../../queries/dashboard"; import bi_logo from "../../assets/img/brand/power_bi_icon_white_on_transparent.png"; function VZDashboard() { - const year = new Date().getFullYear(); - const yearStart = `${year}-01-01`; - // We use the same end date as VZV so VZE widget totals match VZV widgets - const yearEnd = format(subDays(new Date(), 14), "yyyy-MM-dd"); + const year = new Date().getUTCFullYear(); + const yearStart = `${year}-01-01T00:00:00`; const { loading, error, data } = useQuery(GET_CRASHES_YTD, { - variables: { yearStart, yearEnd }, + variables: { yearStart }, }); - if (loading) return "Loading..."; if (error) return `Error! ${error.message}`; - const { - years_of_life_lost: yearsOfLifeLostPrimaryPerson, - } = data.primaryPersonFatalities.aggregate.sum; - - const { - years_of_life_lost: yearsOfLifeLostPerson, - } = data.personFatalities.aggregate.sum; - - const { - sus_serious_injry_cnt: seriousInjuryCount, - } = data.seriousInjuriesAndTotal.aggregate.sum; - const { atd_fatality_count: deathCount } = data.fatalities.aggregate.sum; + const aggregateData = + data.socrata_export_crashes_view_aggregate.aggregate.sum; - const yearsOfLifeLostYTD = - yearsOfLifeLostPrimaryPerson + yearsOfLifeLostPerson; - const fatalitiesYTD = deathCount; - const seriousInjuriesYTD = seriousInjuryCount; + const yearsOfLifeLostYTD = aggregateData.years_of_life_lost; + const fatalitiesYTD = aggregateData.death_cnt; + const seriousInjuriesYTD = aggregateData.sus_serious_injry_cnt; // Widget02 expects a string value, DB returns number or null const commaSeparator = number => diff --git a/atd-vze/src/views/Widgets/Widget01.js b/atd-vze/src/views/Widgets/Widget01.js deleted file mode 100644 index 7d4a36a48..000000000 --- a/atd-vze/src/views/Widgets/Widget01.js +++ /dev/null @@ -1,81 +0,0 @@ -import React, { Component } from "react"; -import PropTypes from "prop-types"; -import { Card, CardBody, Progress } from "reactstrap"; -import classNames from "classnames"; -import { mapToCssModules } from "reactstrap/lib/utils"; - -const propTypes = { - header: PropTypes.string, - mainText: PropTypes.string, - smallText: PropTypes.string, - color: PropTypes.string, - value: PropTypes.string, - children: PropTypes.node, - className: PropTypes.string, - cssModule: PropTypes.object, - variant: PropTypes.string, -}; - -const defaultProps = { - header: "89.9%", - mainText: "Lorem ipsum...", - smallText: "Lorem ipsum dolor sit amet enim.", - // color: '', - value: "25", - variant: "", -}; - -class Widget01 extends Component { - render() { - const { - className, - cssModule, - header, - mainText, - smallText, - color, - value, - children, - variant, - ...attributes - } = this.props; - - // demo purposes only - const progress = { style: "", color: color, value: value }; - const card = { style: "", bgColor: "" }; - - if (variant === "inverse") { - progress.style = "progress-white"; - progress.color = ""; - card.style = "text-white"; - card.bgColor = "bg-" + color; - } - - const classes = mapToCssModules( - classNames(className, card.style, card.bgColor), - cssModule - ); - progress.style = classNames("progress-xs my-3", progress.style); - - return ( - - -
{header}
-
{mainText}
- - {smallText} -
{children}
-
-
- ); - } -} - -Widget01.propTypes = propTypes; -Widget01.defaultProps = defaultProps; - -export default Widget01; diff --git a/atd-vze/src/views/Widgets/Widget02.js b/atd-vze/src/views/Widgets/Widget02.js index d481dc154..cc3872c60 100644 --- a/atd-vze/src/views/Widgets/Widget02.js +++ b/atd-vze/src/views/Widgets/Widget02.js @@ -89,6 +89,7 @@ class Widget02 extends Component { } }; + return ( diff --git a/atd-vze/src/views/Widgets/Widget04.js b/atd-vze/src/views/Widgets/Widget04.js deleted file mode 100644 index 95b09194d..000000000 --- a/atd-vze/src/views/Widgets/Widget04.js +++ /dev/null @@ -1,82 +0,0 @@ -import React, { Component } from "react"; -import PropTypes from "prop-types"; -import { Card, CardBody, Progress } from "reactstrap"; -import classNames from "classnames"; -import { mapToCssModules } from "reactstrap/lib/utils"; - -const propTypes = { - header: PropTypes.string, - icon: PropTypes.string, - color: PropTypes.string, - value: PropTypes.string, - children: PropTypes.node, - className: PropTypes.string, - cssModule: PropTypes.object, - invert: PropTypes.bool, -}; - -const defaultProps = { - header: "87.500", - icon: "icon-people", - color: "info", - value: "25", - children: "Visitors", - invert: false, -}; - -class Widget04 extends Component { - render() { - const { - className, - cssModule, - header, - icon, - color, - value, - children, - invert, - ...attributes - } = this.props; - - // demo purposes only - const progress = { style: "", color: color, value: value }; - const card = { style: "", bgColor: "", icon: icon }; - - if (invert) { - progress.style = "progress-white"; - progress.color = ""; - card.style = "text-white"; - card.bgColor = "bg-" + color; - } - - const classes = mapToCssModules( - classNames(className, card.style, card.bgColor), - cssModule - ); - progress.style = classNames("progress-xs mt-3 mb-0", progress.style); - - return ( - - -
- -
-
{header}
- - {children} - - -
-
- ); - } -} - -Widget04.propTypes = propTypes; -Widget04.defaultProps = defaultProps; - -export default Widget04; diff --git a/atd-vze/src/views/Widgets/Widgets.js b/atd-vze/src/views/Widgets/Widgets.js deleted file mode 100644 index 592a1652f..000000000 --- a/atd-vze/src/views/Widgets/Widgets.js +++ /dev/null @@ -1,507 +0,0 @@ -import React, { Component } from "react"; -import { CardGroup, Col, Row } from "reactstrap"; -import Widget01 from "./Widget01"; -import Widget02 from "./Widget02"; -import Widget03 from "./Widget03"; -import Widget04 from "./Widget04"; -import VZLinksWidget from "./VZLinksWidget"; -import { Line } from "react-chartjs-2"; - -// Brand Card Chart -const makeSocialBoxData = dataSetNo => { - const socialBoxData = [ - { data: [65, 59, 84, 84, 51, 55, 40], label: "facebook" }, - { data: [1, 13, 9, 17, 34, 41, 38], label: "twitter" }, - { data: [78, 81, 80, 45, 34, 12, 40], label: "linkedin" }, - { data: [35, 23, 56, 22, 97, 23, 64], label: "google" }, - ]; - - const dataset = socialBoxData[dataSetNo]; - const data = { - labels: ["January", "February", "March", "April", "May", "June", "July"], - datasets: [ - { - backgroundColor: "rgba(255,255,255,.1)", - borderColor: "rgba(255,255,255,.55)", - pointHoverBackgroundColor: "#fff", - borderWidth: 2, - data: dataset.data, - label: dataset.label, - }, - ], - }; - return () => data; -}; - -const socialChartOpts = { - responsive: true, - maintainAspectRatio: false, - legend: { - display: false, - }, - scales: { - xAxes: [ - { - display: false, - }, - ], - yAxes: [ - { - display: false, - }, - ], - }, - elements: { - point: { - radius: 0, - hitRadius: 10, - hoverRadius: 4, - hoverBorderWidth: 3, - }, - }, -}; - -class Widgets extends Component { - render() { - return ( -
- - - - - - - - - - Excepteur sint occaecat... - - - - - - - - - - - - - - Excepteur sint occaecat... - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - ({ - variant: "facebook", - friends: "89k", - feeds: "459", - })} - > -
- -
-
- - - ({ - variant: "twitter", - followers: "973k", - tweets: "1.792", - })} - > -
- -
-
- - - ({ - variant: "linkedin", - contacts: "500+", - feeds: "292", - })} - > -
- -
-
- - - ({ - variant: "google-plus", - followers: "894", - circles: "92", - })} - > -
- -
-
- -
- - - Visitors - - - New Clients - - - Products sold - - - Returning Visitors - - - Avg. Time - - - - - - Visitors - - - - - New Clients - - - - - Products sold - - - - - Returning Visitors - - - - - Avg. Time - - - - - Comments - - - - - - - Visitors - - - - - New Clients - - - - - Products sold - - - - - Returning Visitors - - - - - Avg. Time - - - - - Comments - - - - - -
- ); - } -} - -export default Widgets; diff --git a/atd-vze/src/views/Widgets/Widgets.test.js b/atd-vze/src/views/Widgets/Widgets.test.js deleted file mode 100644 index 7018945ce..000000000 --- a/atd-vze/src/views/Widgets/Widgets.test.js +++ /dev/null @@ -1,13 +0,0 @@ -import React from "react"; -import ReactDOM from "react-dom"; -import Widgets from "./Widgets"; - -jest.mock("react-chartjs-2", () => ({ - Line: () => null, -})); - -it("renders without crashing", () => { - const div = document.createElement("div"); - ReactDOM.render(, div); - ReactDOM.unmountComponentAtNode(div); -}); diff --git a/atd-vze/src/views/index.js b/atd-vze/src/views/index.js index 8b20dee3c..e9d19e711 100644 --- a/atd-vze/src/views/index.js +++ b/atd-vze/src/views/index.js @@ -1,73 +1,5 @@ -import { - Breadcrumbs, - Cards, - Carousels, - Collapses, - Dropdowns, - Forms, - Jumbotrons, - ListGroups, - Navbars, - Navs, - Paginations, - Popovers, - ProgressBar, - Switches, - Tables, - Tabs, - Tooltips, -} from "./Base"; - -import { - ButtonDropdowns, - ButtonGroups, - Buttons, - BrandButtons, -} from "./Buttons"; -import Charts from "./Charts"; import Dashboard from "./Dashboard"; -import { CoreUIIcons, Flags, FontAwesome, SimpleLineIcons } from "./Icons"; -import { Alerts, Badges, Modals } from "./Notifications"; -import { Login, Page404, Page500, Register } from "./Pages"; -import { Colors, Typography } from "./Theme"; -import Widgets from "./Widgets"; -export { - Badges, - Typography, - Colors, - CoreUIIcons, - Page404, - Page500, - Register, - Login, - Modals, - Alerts, - Flags, - SimpleLineIcons, - FontAwesome, - ButtonDropdowns, - ButtonGroups, - BrandButtons, - Buttons, - Tooltips, - Tabs, - Tables, - Charts, - Dashboard, - Widgets, - Jumbotrons, - Switches, - ProgressBar, - Popovers, - Navs, - Navbars, - ListGroups, - Forms, - Dropdowns, - Collapses, - Carousels, - Cards, - Breadcrumbs, - Paginations, -}; +import { Login, Page500, Register } from "./Pages"; + +export { Page500, Register, Login, Dashboard }; diff --git a/atd-vzv/package.json b/atd-vzv/package.json index 81affad59..fc24afebf 100644 --- a/atd-vzv/package.json +++ b/atd-vzv/package.json @@ -1,6 +1,6 @@ { "name": "atd-vzv", - "version": "1.48.0", + "version": "2.0.0", "homepage": "/viewer", "description": "ATD Vision Zero Viewer", "author": "ATD Data & Technology Services", @@ -54,10 +54,10 @@ "react-dev-utils/chalk/ansi-styles": "https://github.com/codercodingthecode/ansi-styles" }, "scripts": { - "start": "react-scripts start", - "build": "./patchindex.sh && CI= react-scripts build && cp _redirects build && cp -r build viewer && mv viewer build", - "build:staging": "VZV_ENVIRONMENT=STAGING npm run build", - "build:production": "VZV_ENVIRONMENT=PRODUCTION npm run build", + "start": "REACT_APP_UNDER_MAINTENANCE=false REACT_APP_VZV_ENVIRONMENT=STAGING react-scripts start", + "build": "CI= react-scripts build && cp _redirects build && cp -r build viewer && mv viewer build", + "build:staging": "REACT_APP_VZV_ENVIRONMENT=STAGING npm run build", + "build:production": "REACT_APP_VZV_ENVIRONMENT=PRODUCTION npm run build", "build:preview": "REACT_APP_VZV_ENVIRONMENT=PREVIEW npm run build", "test": "react-scripts test", "eject": "react-scripts eject", diff --git a/atd-vzv/patchindex.sh b/atd-vzv/patchindex.sh deleted file mode 100755 index ddd1dcc2a..000000000 --- a/atd-vzv/patchindex.sh +++ /dev/null @@ -1,39 +0,0 @@ -#!/usr/bin/env bash - -# -# The following script patches the header html for the index.html page -# based on provided environment variables. -# - -# If we do have it, then make assumptions about the environment. -if [[ "${VZV_ENVIRONMENT}" = "PRODUCTION" ]]; then - # Assume production env - export vzv_snippet_mode="production"; -else - # Assume staging - export vzv_snippet_mode="staging"; -fi; - - -# If we have the environment, let's check for the snippet comment: -if grep -q "<\!--VZV_HEADER_SNIPPETS-->" public/index.html; then - # We have all we need! - echo "Patch code available!"; -else - # We don't have it, let's exit completely. - echo "Patch code unavailable, please add '' to the header." - exit 0; -fi; - -# Log current environment -echo "Patching snippets for environment: ${vzv_snippet_mode}"; - -# Trusting AWK as opposed to SED because it works in both mac and linux as you would expect. -# SED in mac for some reason wants me to install gsed which I can't tell if it is available in Netlify. -awk 'NR==FNR { a[n++]=$0; next } /VZV_HEADER_SNIPPETS/ { for (i=0;i ./public/index.patched.html; - -# Finally we swap file names and clean up... -mv ./public/index.html ./public/index.backup.html; -mv ./public/index.patched.html ./public/index.html; diff --git a/atd-vzv/public/header_snippets_production.html b/atd-vzv/public/header_snippets_production.html deleted file mode 100644 index c8e0148dc..000000000 --- a/atd-vzv/public/header_snippets_production.html +++ /dev/null @@ -1,12 +0,0 @@ - - - diff --git a/atd-vzv/public/header_snippets_staging.html b/atd-vzv/public/header_snippets_staging.html deleted file mode 100644 index f849e774e..000000000 --- a/atd-vzv/public/header_snippets_staging.html +++ /dev/null @@ -1 +0,0 @@ - diff --git a/atd-vzv/src/App.js b/atd-vzv/src/App.js index 35a2d98aa..0d561c5b1 100644 --- a/atd-vzv/src/App.js +++ b/atd-vzv/src/App.js @@ -2,12 +2,24 @@ import React from "react"; import { usePath } from "hookrouter"; import SideDrawer from "./views/nav/SideDrawer"; import Content from "./views/content/Content"; +import UnderMaintenance from "./views/NotFound/UnderMaintenance"; import "./App.css"; +const isUnderMaintenance = process.env.REACT_APP_UNDER_MAINTENANCE === "true"; +console.log("Is under maintenance: ", process.env.REACT_APP_UNDER_MAINTENANCE); + const App = () => { const currentPath = usePath(); const isMeasuresPath = currentPath === "/measures"; + if (isUnderMaintenance) { + return ( +
+ +
+ ); + } + return (
{!isMeasuresPath && } diff --git a/atd-vzv/src/views/NotFound/NotFound.js b/atd-vzv/src/views/NotFound/NotFound.js index 6ac350a10..9d92a353c 100644 --- a/atd-vzv/src/views/NotFound/NotFound.js +++ b/atd-vzv/src/views/NotFound/NotFound.js @@ -1,11 +1,13 @@ import React from "react"; -import { Container } from "reactstrap"; +import { Container, Row } from "reactstrap"; const NotFound = () => { return ( - -

Sorry, but this page does not exist.

+ + +

Sorry, but this page does not exist.

+
); }; diff --git a/atd-vzv/src/views/NotFound/UnderMaintenance.js b/atd-vzv/src/views/NotFound/UnderMaintenance.js new file mode 100644 index 000000000..dfbe381e9 --- /dev/null +++ b/atd-vzv/src/views/NotFound/UnderMaintenance.js @@ -0,0 +1,63 @@ +import React from "react"; +import Footer from "../nav/Footer"; + +import { Container, Row, Navbar, Alert } from "reactstrap"; +import { responsive } from "../../constants/responsive"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { faInfoCircle } from "@fortawesome/free-solid-svg-icons"; + + +// UnderMaintance is a fallback view that is rendered when the REACT_APP_UNDER_MAINTENANCE environment variable is "true" +// This variable can be set via the Netlify dashboard under Site Configuration in the section titled Environment variables +// It can also be toggled in the start script defined in package.json +// isMeasuresPath is true when the route is '/measures', the view that is serves the widgets on the austintexas.gov drupal site +// that view should not show the header nor footer, since its an embed in another page +const UnderMaintenance = ({ isMeasuresPath }) => { + return ( +
+ {!isMeasuresPath && ( +
+ + +
+

+ Vision Zero -- Help Austin reach zero traffic deaths +

+ Vision Zero Austin Logo +
+
+
+
+ )} + + + + +
+ + {isMeasuresPath + ? "Vision Zero metrics are currently under maintenance. " + : "The Vision Zero Viewer is undergoing maintenance and will be unavailable until September 3, 2024"} +
+
+
+
+ {!isMeasuresPath &&
} +
+ ); +}; + +export default UnderMaintenance; diff --git a/atd-vzv/src/views/content/Content.js b/atd-vzv/src/views/content/Content.js index cd6de7c1d..06d18d5ec 100644 --- a/atd-vzv/src/views/content/Content.js +++ b/atd-vzv/src/views/content/Content.js @@ -29,18 +29,18 @@ const Content = () => { width: calc(100vw - ${responsive.drawerWidth}px); `; - const mainSyles = ` + const mainStyles = ` top: ${responsive.headerHeight}px; `; - const mainMobileStilye = ` + const mainMobileStyle = ` top: ${responsive.headerHeightMobile}px; `; const StyledContent = styled.div` .content { position: relative; - ${!isMeasuresPath && mainSyles} + ${!isMeasuresPath && mainStyles} ${isMapPath && mapStyles} } @@ -49,7 +49,7 @@ const Content = () => { .content { width: 100vw; height: calc(100% - ${responsive.headerHeightMobile}px); - ${!isMeasuresPath && mainMobileStilye} + ${!isMeasuresPath && mainMobileStyle} } } `; diff --git a/atd-vzv/src/views/map/InfoBox/MapInfoBox.js b/atd-vzv/src/views/map/InfoBox/MapInfoBox.js index 5e9ce1ea6..d3d0d625a 100644 --- a/atd-vzv/src/views/map/InfoBox/MapInfoBox.js +++ b/atd-vzv/src/views/map/InfoBox/MapInfoBox.js @@ -29,7 +29,7 @@ const MapInfoBox = React.memo( const buildSeriousInjuriesOrFatalitiesConfig = (info) => [ { title: "Date/Time", - content: format(new Date(info.crash_date), "MM/dd/yyyy hh:mm a"), + content: format(new Date(info.crash_timestamp_ct), "MM/dd/yyyy H:m a"), }, { title: "Fatalities", content: info.death_cnt }, { title: "Serious Injuries", content: info.sus_serious_injry_cnt }, @@ -37,7 +37,7 @@ const MapInfoBox = React.memo( title: "Modes Involved", content: info.units_involved.split(" &").join(", "), }, - { title: "Crash ID", content: info.crash_id }, + { title: "Crash ID", content: info.cris_crash_id || `T${info.id}` }, ]; const cardConfig = { diff --git a/atd-vzv/src/views/map/helpers.js b/atd-vzv/src/views/map/helpers.js index c4e653a9b..4aa33cb7c 100644 --- a/atd-vzv/src/views/map/helpers.js +++ b/atd-vzv/src/views/map/helpers.js @@ -55,7 +55,7 @@ export const createMapDataUrl = ( ? null : `${endpoint}?$select=${mapRequestFields.join(",")}` + `&$limit=100000` + - `&$where=crash_date between '${startDate}' and '${endDate}'` + + `&$where=crash_timestamp_ct between '${startDate}' and '${endDate}'` + // if there is a polygon selected, add as filter ((!!mapPolygon && ` AND within_polygon(point, '${mapPolygon}')`) || "") + diff --git a/atd-vzv/src/views/nav/SideMapTimeOfDayChart.js b/atd-vzv/src/views/nav/SideMapTimeOfDayChart.js index d636475ce..47ee2cac8 100644 --- a/atd-vzv/src/views/nav/SideMapTimeOfDayChart.js +++ b/atd-vzv/src/views/nav/SideMapTimeOfDayChart.js @@ -51,7 +51,7 @@ export const SideMapTimeOfDayChart = ({ filters }) => { const crashTimeWindows = Object.values(filters).map((filter) => filter); const crashTimeTotals = crashes.reduce((accumulator, crash) => { crashTimeWindows.forEach((timeWindow, i) => { - const crashDate = crash.crash_date; + const crashDate = crash.crash_timestamp_ct; const crashHour = parseInt(format(new Date(crashDate), "H")); crashHour >= timeWindow[0] && crashHour <= timeWindow[1] && @@ -94,7 +94,7 @@ export const SideMapTimeOfDayChart = ({ filters }) => { const timeWindowArray = filters[timeWindow]; const timeWindowStart = timeWindowArray[0]; const timeWindowEnd = timeWindowArray[1]; - const timeWindowFilterString = ` AND date_extract_hh(crash_date) between ${timeWindowStart} and ${timeWindowEnd} AND date_extract_mm(crash_date) between 0 and 59`; + const timeWindowFilterString = ` AND date_extract_hh(crash_timestamp_ct) between ${timeWindowStart} and ${timeWindowEnd} AND date_extract_mm(crash_timestamp_ct) between 0 and 59`; setMapTimeWindow(timeWindowFilterString); } diff --git a/atd-vzv/src/views/summary/CrashesByMode.js b/atd-vzv/src/views/summary/CrashesByMode.js index f613cb4aa..eb292037c 100644 --- a/atd-vzv/src/views/summary/CrashesByMode.js +++ b/atd-vzv/src/views/summary/CrashesByMode.js @@ -109,7 +109,7 @@ const CrashesByMode = () => { year.toString() === format(dataEndDate, "yyyy") ? `${summaryCurrentYearEndDate}T23:59:59` : `${year}-12-31T23:59:59`; - let url = `${crashEndpointUrl}?$where=${crashType.queryStringCrash} AND crash_date between '${year}-01-01T00:00:00' and '${endDate}'`; + let url = `${crashEndpointUrl}?$where=${crashType.queryStringCrash} AND crash_timestamp_ct between '${year}-01-01T00:00:00' and '${endDate}'`; await axios.get(url).then((res) => { newData = { ...newData, ...{ [year]: res.data } }; }); diff --git a/atd-vzv/src/views/summary/CrashesByPopulation.js b/atd-vzv/src/views/summary/CrashesByPopulation.js index 63fe881e7..f19b4fe95 100644 --- a/atd-vzv/src/views/summary/CrashesByPopulation.js +++ b/atd-vzv/src/views/summary/CrashesByPopulation.js @@ -21,18 +21,18 @@ const CrashesByPopulation = () => { const url = `${crashEndpointUrl}?$query=`; useEffect(() => { - const dateCondition = `crash_date BETWEEN '${format( + const dateCondition = `crash_timestamp_ct BETWEEN '${format( dataStartDate, "yyyy-MM-dd" )}T00:00:00' and '${fiveYearAvgEndDateByPop}T23:59:59'`; const queryGroupAndOrder = `GROUP BY year ORDER BY year`; const queries = { - fatalities: `SELECT date_extract_y(crash_date) as year, sum(death_cnt) as total + fatalities: `SELECT date_extract_y(crash_timestamp_ct) as year, sum(death_cnt) as total WHERE death_cnt > 0 AND ${dateCondition} ${queryGroupAndOrder}`, - fatalitiesAndSeriousInjuries: `SELECT date_extract_y(crash_date) as year, sum(death_cnt) + sum(sus_serious_injry_cnt) as total + fatalitiesAndSeriousInjuries: `SELECT date_extract_y(crash_timestamp_ct) as year, sum(death_cnt) + sum(sus_serious_injry_cnt) as total WHERE (death_cnt > 0 OR sus_serious_injry_cnt > 0) AND ${dateCondition} ${queryGroupAndOrder}`, - seriousInjuries: `SELECT date_extract_y(crash_date) as year, sum(sus_serious_injry_cnt) as total + seriousInjuries: `SELECT date_extract_y(crash_timestamp_ct) as year, sum(sus_serious_injry_cnt) as total WHERE sus_serious_injry_cnt > 0 AND ${dateCondition} ${queryGroupAndOrder}`, }; diff --git a/atd-vzv/src/views/summary/CrashesByTimeOfDay.js b/atd-vzv/src/views/summary/CrashesByTimeOfDay.js index 9f1a6eeed..e41b5bf14 100644 --- a/atd-vzv/src/views/summary/CrashesByTimeOfDay.js +++ b/atd-vzv/src/views/summary/CrashesByTimeOfDay.js @@ -63,7 +63,7 @@ const calculateHourBlockTotals = (records, crashType) => { const dataArray = buildDataArray(); records.forEach((record) => { - const recordDateTime = parseISO(record.crash_date); + const recordDateTime = parseISO(record.crash_timestamp_ct); const recordHour = format(recordDateTime, "hha"); const recordDay = format(recordDateTime, "E"); @@ -97,8 +97,8 @@ const getFatalitiesByYearsAgoUrl = (activeTab, crashType) => { const yearsAgoDate = format(sub(new Date(), { years: activeTab }), "yyyy"); let queryUrl = activeTab === 0 - ? `${crashEndpointUrl}?$where=${crashType.queryStringCrash} AND crash_date between '${summaryCurrentYearStartDate}T00:00:00' and '${summaryCurrentYearEndDate}T23:59:59'` - : `${crashEndpointUrl}?$where=${crashType.queryStringCrash} AND crash_date between '${yearsAgoDate}-01-01T00:00:00' and '${yearsAgoDate}-12-31T23:59:59'`; + ? `${crashEndpointUrl}?$where=${crashType.queryStringCrash} AND crash_timestamp_ct between '${summaryCurrentYearStartDate}T00:00:00' and '${summaryCurrentYearEndDate}T23:59:59'` + : `${crashEndpointUrl}?$where=${crashType.queryStringCrash} AND crash_timestamp_ct between '${yearsAgoDate}-01-01T00:00:00' and '${yearsAgoDate}-12-31T23:59:59'`; return queryUrl; }; @@ -129,8 +129,8 @@ const CrashesByTimeOfDay = () => { if (maxForLegend) return; const maxQuery = ` - SELECT date_extract_dow(crash_date) as day, date_extract_hh(crash_date) as hour, date_extract_y(crash_date) as year, SUM(death_cnt) as death, SUM(sus_serious_injry_cnt) as serious, serious + death as all - WHERE crash_date BETWEEN '${format( + SELECT date_extract_dow(crash_timestamp_ct) as day, date_extract_hh(crash_timestamp_ct) as hour, date_extract_y(crash_timestamp_ct) as year, SUM(death_cnt) as death, SUM(sus_serious_injry_cnt) as serious, serious + death as all + WHERE crash_timestamp_ct BETWEEN '${format( dataStartDate, "yyyy-MM-dd" )}' and '${summaryCurrentYearEndDate}' diff --git a/atd-vzv/src/views/summary/CrashesByYear.js b/atd-vzv/src/views/summary/CrashesByYear.js index d44ca17ba..e2ecead9b 100644 --- a/atd-vzv/src/views/summary/CrashesByYear.js +++ b/atd-vzv/src/views/summary/CrashesByYear.js @@ -23,32 +23,32 @@ const CrashesByYear = () => { const [crashType, setCrashType] = useState(null); const [chartType, setChartType] = useState("Monthly"); - const [avgData, setAvgData] = useState([]); - const [currentYearData, setCurrentYearData] = useState([]); + const [avgData, setAvgData] = useState(null); + const [currentYearData, setCurrentYearData] = useState(null); const url = `${crashEndpointUrl}?$query=`; // Fetch data for By Month Average and Cumulative visualizations useEffect(() => { - const avgDateCondition = `crash_date BETWEEN '${fiveYearAvgStartDate}T00:00:00' and '${fiveYearAvgEndDate}T23:59:59'`; - const currentYearDateCondition = `crash_date BETWEEN '${summaryCurrentYearStartDate}T00:00:00' and '${summaryCurrentYearEndDate}T23:59:59'`; + const avgDateCondition = `crash_timestamp_ct BETWEEN '${fiveYearAvgStartDate}T00:00:00' and '${fiveYearAvgEndDate}T23:59:59'`; + const currentYearDateCondition = `crash_timestamp_ct BETWEEN '${summaryCurrentYearStartDate}T00:00:00' and '${summaryCurrentYearEndDate}T23:59:59'`; const queryGroupAndOrder = `GROUP BY month ORDER BY month`; const avgQueries = { - fatalities: `SELECT date_extract_m(crash_date) as month, sum(death_cnt) / 5 as avg + fatalities: `SELECT date_extract_m(crash_timestamp_ct) as month, sum(death_cnt) / 5 as avg WHERE death_cnt > 0 AND ${avgDateCondition} ${queryGroupAndOrder}`, - fatalitiesAndSeriousInjuries: `SELECT date_extract_m(crash_date) as month, sum(death_cnt) / 5 + sum(sus_serious_injry_cnt) / 5 as avg + fatalitiesAndSeriousInjuries: `SELECT date_extract_m(crash_timestamp_ct) as month, sum(death_cnt) / 5 + sum(sus_serious_injry_cnt) / 5 as avg WHERE (death_cnt > 0 OR sus_serious_injry_cnt > 0) AND ${avgDateCondition} ${queryGroupAndOrder}`, - seriousInjuries: `SELECT date_extract_m(crash_date) as month, sum(sus_serious_injry_cnt) / 5 as avg + seriousInjuries: `SELECT date_extract_m(crash_timestamp_ct) as month, sum(sus_serious_injry_cnt) / 5 as avg WHERE sus_serious_injry_cnt > 0 AND ${avgDateCondition} ${queryGroupAndOrder}`, }; const currentYearQueries = { - fatalities: `SELECT date_extract_m(crash_date) as month, sum(death_cnt) as total + fatalities: `SELECT date_extract_m(crash_timestamp_ct) as month, sum(death_cnt) as total WHERE death_cnt > 0 AND ${currentYearDateCondition} ${queryGroupAndOrder}`, - fatalitiesAndSeriousInjuries: `SELECT date_extract_m(crash_date) as month, sum(death_cnt) + sum(sus_serious_injry_cnt) as total + fatalitiesAndSeriousInjuries: `SELECT date_extract_m(crash_timestamp_ct) as month, sum(death_cnt) + sum(sus_serious_injry_cnt) as total WHERE (death_cnt > 0 OR sus_serious_injry_cnt > 0) AND ${currentYearDateCondition} ${queryGroupAndOrder}`, - seriousInjuries: `SELECT date_extract_m(crash_date) as month, sum(sus_serious_injry_cnt) as total + seriousInjuries: `SELECT date_extract_m(crash_timestamp_ct) as month, sum(sus_serious_injry_cnt) as total WHERE sus_serious_injry_cnt > 0 AND ${currentYearDateCondition} ${queryGroupAndOrder}`, }; @@ -113,7 +113,7 @@ const CrashesByYear = () => {
- {avgData.length > 0 && currentYearData.length > 0 ? ( + {avgData && currentYearData ? (
{ const [totalCrashes, setTotalCrashes] = useState(null); useEffect(() => { - const fatalitiesUrl = `${crashEndpointUrl}?$where=(death_cnt > 0 AND crash_date between '${summaryCurrentYearStartDate}T00:00:00' and '${summaryCurrentYearEndDate}T23:59:59') OR (death_cnt > 0 AND crash_date between '${summaryLastYearStartDate}T00:00:00' and '${summaryLastYearEndDate}T23:59:59')`; - const yearsOfLifeLostUrl = `${personEndpointUrl}?$where=(prsn_injry_sev_id = '4' AND crash_date between '${summaryCurrentYearStartDate}T00:00:00' and '${summaryCurrentYearEndDate}T23:59:59') OR (prsn_injry_sev_id = '4' AND crash_date between '${summaryLastYearStartDate}T00:00:00' and '${summaryLastYearEndDate}T23:59:59')`; - const seriousInjuriesUrl = `${crashEndpointUrl}?$where=(sus_serious_injry_cnt > 0 AND crash_date between '${summaryCurrentYearStartDate}T00:00:00' and '${summaryCurrentYearEndDate}T23:59:59') OR (sus_serious_injry_cnt > 0 AND crash_date between '${summaryLastYearStartDate}T00:00:00' and '${summaryLastYearEndDate}T23:59:59')`; - const totalCrashesUrl = `${crashEndpointUrl}?$limit=100000&$where=(crash_date between '${summaryCurrentYearStartDate}T00:00:00' and '${summaryCurrentYearEndDate}T23:59:59') OR (crash_date between '${summaryLastYearStartDate}T00:00:00' and '${summaryLastYearEndDate}T23:59:59')`; + const fatalitiesUrl = `${crashEndpointUrl}?$where=(death_cnt > 0 AND crash_timestamp_ct between '${summaryCurrentYearStartDate}T00:00:00' and '${summaryCurrentYearEndDate}T23:59:59') OR (death_cnt > 0 AND crash_timestamp_ct between '${summaryLastYearStartDate}T00:00:00' and '${summaryLastYearEndDate}T23:59:59')`; + const yearsOfLifeLostUrl = `${personEndpointUrl}?$where=(prsn_injry_sev_id = '4' AND crash_timestamp_ct between '${summaryCurrentYearStartDate}T00:00:00' and '${summaryCurrentYearEndDate}T23:59:59') OR (prsn_injry_sev_id = '4' AND crash_timestamp_ct between '${summaryLastYearStartDate}T00:00:00' and '${summaryLastYearEndDate}T23:59:59')`; + const seriousInjuriesUrl = `${crashEndpointUrl}?$where=(sus_serious_injry_cnt > 0 AND crash_timestamp_ct between '${summaryCurrentYearStartDate}T00:00:00' and '${summaryCurrentYearEndDate}T23:59:59') OR (sus_serious_injry_cnt > 0 AND crash_timestamp_ct between '${summaryLastYearStartDate}T00:00:00' and '${summaryLastYearEndDate}T23:59:59')`; + const totalCrashesUrl = `${crashEndpointUrl}?$limit=100000&$where=(crash_timestamp_ct between '${summaryCurrentYearStartDate}T00:00:00' and '${summaryCurrentYearEndDate}T23:59:59') OR (crash_timestamp_ct between '${summaryLastYearStartDate}T00:00:00' and '${summaryLastYearEndDate}T23:59:59')`; const requestConfigs = [ { diff --git a/atd-vzv/src/views/summary/helpers/helpers.js b/atd-vzv/src/views/summary/helpers/helpers.js index 7e1fe0861..1de124ca5 100644 --- a/atd-vzv/src/views/summary/helpers/helpers.js +++ b/atd-vzv/src/views/summary/helpers/helpers.js @@ -7,7 +7,7 @@ import { dataEndDate } from "../../../constants/time"; const calcFieldTotalsFromRecords = (data, prevYear, currentYear, field) => data.reduce( (accumulator, record) => { - const recordYear = record.crash_date.slice(0, 4); + const recordYear = record.crash_timestamp_ct.slice(0, 4); accumulator = { ...accumulator, [recordYear]: (accumulator[recordYear] += parseInt(record[field])), @@ -31,7 +31,7 @@ export const calcSummaryTotalSeriousInjuries = (data, prevYear, currentYear) => export const calcSummaryTotalCrashes = (data, prevYear, currentYear) => data.reduce( (accumulator, record) => { - const recordYear = record.crash_date.slice(0, 4); + const recordYear = record.crash_timestamp_ct.slice(0, 4); accumulator = { ...accumulator, [recordYear]: (accumulator[recordYear] += 1), @@ -58,7 +58,7 @@ const calcYearsOfLifeLost = (record) => { export const getSummaryYearsOfLifeLost = (data, prevYear, currentYear) => { return data.reduce( (accumulator, record) => { - const recordYear = record.crash_date.slice(0, 4); + const recordYear = record.crash_timestamp_ct.slice(0, 4); accumulator = { ...accumulator, [recordYear]: (accumulator[recordYear] += calcYearsOfLifeLost(record)), diff --git a/atd-vzv/src/views/summary/queries/socrataQueries.js b/atd-vzv/src/views/summary/queries/socrataQueries.js index 6cab95359..11b8f68ea 100644 --- a/atd-vzv/src/views/summary/queries/socrataQueries.js +++ b/atd-vzv/src/views/summary/queries/socrataQueries.js @@ -1,5 +1,22 @@ -const crashDatasetID = "y2wy-tgr5"; -const personDatasetID = "xecs-rpy9"; +const DATASET_IDS = { + staging: { + crash: "3aut-fhzp", + person: "v3x4-fjgm", + }, + prod: { + crash: "y2wy-tgr5", + person: "xecs-rpy9", + }, +}; + +const crashDatasetID = + process.env.REACT_APP_VZV_ENVIRONMENT === "PRODUCTION" + ? DATASET_IDS.prod.crash + : DATASET_IDS.staging.crash; +const personDatasetID = + process.env.REACT_APP_VZV_ENVIRONMENT === "PRODUCTION" + ? DATASET_IDS.prod.person + : DATASET_IDS.staging.person; export const crashEndpointUrl = `https://data.austintexas.gov/resource/${crashDatasetID}.json`; export const crashGeoJSONEndpointUrl = `https://data.austintexas.gov/resource/${crashDatasetID}.geojson`; @@ -11,7 +28,8 @@ export const mapRequestFields = [ "sus_serious_injry_cnt", "latitude", "longitude", - "crash_id", + "id", + "cris_crash_id", "units_involved", - "crash_date", + "crash_timestamp_ct", ];