From a5b12716dd9bf58fd814cf9d3cb0c55a7d7b13d3 Mon Sep 17 00:00:00 2001 From: clairblacketer Date: Fri, 17 Nov 2017 15:18:32 -0500 Subject: [PATCH] Updated indices to include primary keys and moved foreign keys to their own files. --- DDLGeneratr/codeToRun.R | 4 +- .../sql/sql_server/OMOP CDM constraints.sql | 151 +- .../sql_server/OMOP CDM indexes required.sql | 151 +- .../oracle/OMOP CDM oracle constraints.txt | 189 +- .../output/oracle/OMOP CDM oracle indexes.txt | 184 +- .../output/pdw/OMOP CDM pdw constraints.txt | 421 +++ .../output/pdw/OMOP CDM pdw indexes.txt | 342 ++ .../OMOP CDM postgresql constraints.txt | 421 +++ .../OMOP CDM postgresql indexes.txt | 371 ++ .../OMOP CDM sql server constraints.txt | 421 +++ .../OMOP CDM sql server indexes.txt | 342 ++ DDLGeneratr/reports/OMOP_CDM_PDF.Rmd | 101 +- DDLGeneratr/reports/OMOP_CDM_v5_3.pdf | 3004 +++++++++-------- 13 files changed, 4243 insertions(+), 1859 deletions(-) create mode 100644 DDLGeneratr/output/pdw/OMOP CDM pdw constraints.txt create mode 100644 DDLGeneratr/output/pdw/OMOP CDM pdw indexes.txt create mode 100644 DDLGeneratr/output/postgresql/OMOP CDM postgresql constraints.txt create mode 100644 DDLGeneratr/output/postgresql/OMOP CDM postgresql indexes.txt create mode 100644 DDLGeneratr/output/sql server/OMOP CDM sql server constraints.txt create mode 100644 DDLGeneratr/output/sql server/OMOP CDM sql server indexes.txt diff --git a/DDLGeneratr/codeToRun.R b/DDLGeneratr/codeToRun.R index 6acd326..9023460 100644 --- a/DDLGeneratr/codeToRun.R +++ b/DDLGeneratr/codeToRun.R @@ -14,14 +14,14 @@ writeDDL("postgresql") writeDDL("redshift") writeDDL("sql server") -# Step 3: Run the following code to create indices for Oracle, Postgres, PDW and Sql Server +# Step 3: Run the following code to create the primary key constraints and index files for Oracle, Postgres, PDW and Sql Server writeIndex("oracle") writeIndex("postgresql") writeIndex("pdw") writeIndex("sql server") -# Step 4: Run the following code to create constraints for Oracle, Postgres, PDW and Sql Server +# Step 4: Run the following code to create foreign key constraints for Oracle, Postgres, PDW and Sql Server writeConstraints("oracle") writeConstraints("postgresql") diff --git a/DDLGeneratr/inst/sql/sql_server/OMOP CDM constraints.sql b/DDLGeneratr/inst/sql/sql_server/OMOP CDM constraints.sql index 0fb138b..17f363a 100644 --- a/DDLGeneratr/inst/sql/sql_server/OMOP CDM constraints.sql +++ b/DDLGeneratr/inst/sql/sql_server/OMOP CDM constraints.sql @@ -26,7 +26,7 @@ ####### # # ####### # ##### ###### # # ## ##### ### ##### ##### #### # # #### # # # # # # # # # #### -@targetdialect script to create constraints within OMOP common data model, version 5.3.0 +@targetdialect script to create foreign key constraints within OMOP common data model, version 5.3.0 last revised: 15-November-2017 @@ -36,155 +36,6 @@ author: Patrick Ryan, Clair Blacketer *************************/ -/************************ -************************* -************************* -************************* - -Primary key constraints - -************************* -************************* -************************* -************************/ - - - -/************************ - -Standardized vocabulary - -************************/ - - - -ALTER TABLE concept ADD CONSTRAINT xpk_concept PRIMARY KEY NONCLUSTERED (concept_id); - -ALTER TABLE vocabulary ADD CONSTRAINT xpk_vocabulary PRIMARY KEY NONCLUSTERED (vocabulary_id); - -ALTER TABLE domain ADD CONSTRAINT xpk_domain PRIMARY KEY NONCLUSTERED (domain_id); - -ALTER TABLE concept_class ADD CONSTRAINT xpk_concept_class PRIMARY KEY NONCLUSTERED (concept_class_id); - -ALTER TABLE concept_relationship ADD CONSTRAINT xpk_concept_relationship PRIMARY KEY NONCLUSTERED (concept_id_1,concept_id_2,relationship_id); - -ALTER TABLE relationship ADD CONSTRAINT xpk_relationship PRIMARY KEY NONCLUSTERED (relationship_id); - -ALTER TABLE concept_ancestor ADD CONSTRAINT xpk_concept_ancestor PRIMARY KEY NONCLUSTERED (ancestor_concept_id,descendant_concept_id); - -ALTER TABLE source_to_concept_map ADD CONSTRAINT xpk_source_to_concept_map PRIMARY KEY NONCLUSTERED (source_vocabulary_id,target_concept_id,source_code,valid_end_date); - -ALTER TABLE drug_strength ADD CONSTRAINT xpk_drug_strength PRIMARY KEY NONCLUSTERED (drug_concept_id, ingredient_concept_id); - -ALTER TABLE cohort_definition ADD CONSTRAINT xpk_cohort_definition PRIMARY KEY NONCLUSTERED (cohort_definition_id); - -ALTER TABLE attribute_definition ADD CONSTRAINT xpk_attribute_definition PRIMARY KEY NONCLUSTERED (attribute_definition_id); - - -/************************** - -Standardized meta-data - -***************************/ - - - - - - - - - -/************************ - -Standardized clinical data - -************************/ - - -/**PRIMARY KEY NONCLUSTERED constraints**/ - -ALTER TABLE person ADD CONSTRAINT xpk_person PRIMARY KEY NONCLUSTERED ( person_id ) ; - -ALTER TABLE observation_period ADD CONSTRAINT xpk_observation_period PRIMARY KEY NONCLUSTERED ( observation_period_id ) ; - -ALTER TABLE specimen ADD CONSTRAINT xpk_specimen PRIMARY KEY NONCLUSTERED ( specimen_id ) ; - -ALTER TABLE death ADD CONSTRAINT xpk_death PRIMARY KEY NONCLUSTERED ( person_id ) ; - -ALTER TABLE visit_occurrence ADD CONSTRAINT xpk_visit_occurrence PRIMARY KEY NONCLUSTERED ( visit_occurrence_id ) ; - -ALTER TABLE visit_detail ADD CONSTRAINT xpk_visit_detail PRIMARY KEY NONCLUSTERED ( visit_detail_id ) ; - -ALTER TABLE procedure_occurrence ADD CONSTRAINT xpk_procedure_occurrence PRIMARY KEY NONCLUSTERED ( procedure_occurrence_id ) ; - -ALTER TABLE drug_exposure ADD CONSTRAINT xpk_drug_exposure PRIMARY KEY NONCLUSTERED ( drug_exposure_id ) ; - -ALTER TABLE device_exposure ADD CONSTRAINT xpk_device_exposure PRIMARY KEY NONCLUSTERED ( device_exposure_id ) ; - -ALTER TABLE condition_occurrence ADD CONSTRAINT xpk_condition_occurrence PRIMARY KEY NONCLUSTERED ( condition_occurrence_id ) ; - -ALTER TABLE measurement ADD CONSTRAINT xpk_measurement PRIMARY KEY NONCLUSTERED ( measurement_id ) ; - -ALTER TABLE note ADD CONSTRAINT xpk_note PRIMARY KEY NONCLUSTERED ( note_id ) ; - -ALTER TABLE note_nlp ADD CONSTRAINT xpk_note_nlp PRIMARY KEY NONCLUSTERED ( note_nlp_id ) ; - -ALTER TABLE observation ADD CONSTRAINT xpk_observation PRIMARY KEY NONCLUSTERED ( observation_id ) ; - - - - -/************************ - -Standardized health system data - -************************/ - - -ALTER TABLE location ADD CONSTRAINT xpk_location PRIMARY KEY NONCLUSTERED ( location_id ) ; - -ALTER TABLE care_site ADD CONSTRAINT xpk_care_site PRIMARY KEY NONCLUSTERED ( care_site_id ) ; - -ALTER TABLE provider ADD CONSTRAINT xpk_provider PRIMARY KEY NONCLUSTERED ( provider_id ) ; - - - -/************************ - -Standardized health economics - -************************/ - - -ALTER TABLE payer_plan_period ADD CONSTRAINT xpk_payer_plan_period PRIMARY KEY NONCLUSTERED ( payer_plan_period_id ) ; - -ALTER TABLE cost ADD CONSTRAINT xpk_visit_cost PRIMARY KEY NONCLUSTERED ( cost_id ) ; - - -/************************ - -Standardized derived elements - -************************/ - -ALTER TABLE cohort ADD CONSTRAINT xpk_cohort PRIMARY KEY NONCLUSTERED ( cohort_definition_id, subject_id, cohort_start_date, cohort_end_date ) ; - -ALTER TABLE cohort_attribute ADD CONSTRAINT xpk_cohort_attribute PRIMARY KEY NONCLUSTERED ( cohort_definition_id, subject_id, cohort_start_date, cohort_end_date, attribute_definition_id ) ; - -ALTER TABLE drug_era ADD CONSTRAINT xpk_drug_era PRIMARY KEY NONCLUSTERED ( drug_era_id ) ; - -ALTER TABLE dose_era ADD CONSTRAINT xpk_dose_era PRIMARY KEY NONCLUSTERED ( dose_era_id ) ; - -ALTER TABLE condition_era ADD CONSTRAINT xpk_condition_era PRIMARY KEY NONCLUSTERED ( condition_era_id ) ; - - - - - - - - /************************ ************************* ************************* diff --git a/DDLGeneratr/inst/sql/sql_server/OMOP CDM indexes required.sql b/DDLGeneratr/inst/sql/sql_server/OMOP CDM indexes required.sql index 7ed41c2..83bd1a3 100644 --- a/DDLGeneratr/inst/sql/sql_server/OMOP CDM indexes required.sql +++ b/DDLGeneratr/inst/sql/sql_server/OMOP CDM indexes required.sql @@ -32,11 +32,160 @@ last revised: 14-November-2017 author: Patrick Ryan, Clair Blacketer -description: These indices are considered a minimal requirement to ensure adequate performance of analyses. +description: These primary keys and indices are considered a minimal requirement to ensure adequate performance of analyses. *************************/ +/************************ +************************* +************************* +************************* + +Primary key constraints + +************************* +************************* +************************* +************************/ + + + +/************************ + +Standardized vocabulary + +************************/ + + + +ALTER TABLE concept ADD CONSTRAINT xpk_concept PRIMARY KEY NONCLUSTERED (concept_id); + +ALTER TABLE vocabulary ADD CONSTRAINT xpk_vocabulary PRIMARY KEY NONCLUSTERED (vocabulary_id); + +ALTER TABLE domain ADD CONSTRAINT xpk_domain PRIMARY KEY NONCLUSTERED (domain_id); + +ALTER TABLE concept_class ADD CONSTRAINT xpk_concept_class PRIMARY KEY NONCLUSTERED (concept_class_id); + +ALTER TABLE concept_relationship ADD CONSTRAINT xpk_concept_relationship PRIMARY KEY NONCLUSTERED (concept_id_1,concept_id_2,relationship_id); + +ALTER TABLE relationship ADD CONSTRAINT xpk_relationship PRIMARY KEY NONCLUSTERED (relationship_id); + +ALTER TABLE concept_ancestor ADD CONSTRAINT xpk_concept_ancestor PRIMARY KEY NONCLUSTERED (ancestor_concept_id,descendant_concept_id); + +ALTER TABLE source_to_concept_map ADD CONSTRAINT xpk_source_to_concept_map PRIMARY KEY NONCLUSTERED (source_vocabulary_id,target_concept_id,source_code,valid_end_date); + +ALTER TABLE drug_strength ADD CONSTRAINT xpk_drug_strength PRIMARY KEY NONCLUSTERED (drug_concept_id, ingredient_concept_id); + +ALTER TABLE cohort_definition ADD CONSTRAINT xpk_cohort_definition PRIMARY KEY NONCLUSTERED (cohort_definition_id); + +ALTER TABLE attribute_definition ADD CONSTRAINT xpk_attribute_definition PRIMARY KEY NONCLUSTERED (attribute_definition_id); + + +/************************** + +Standardized meta-data + +***************************/ + + + +/************************ + +Standardized clinical data + +************************/ + + +/**PRIMARY KEY NONCLUSTERED constraints**/ + +ALTER TABLE person ADD CONSTRAINT xpk_person PRIMARY KEY NONCLUSTERED ( person_id ) ; + +ALTER TABLE observation_period ADD CONSTRAINT xpk_observation_period PRIMARY KEY NONCLUSTERED ( observation_period_id ) ; + +ALTER TABLE specimen ADD CONSTRAINT xpk_specimen PRIMARY KEY NONCLUSTERED ( specimen_id ) ; + +ALTER TABLE death ADD CONSTRAINT xpk_death PRIMARY KEY NONCLUSTERED ( person_id ) ; + +ALTER TABLE visit_occurrence ADD CONSTRAINT xpk_visit_occurrence PRIMARY KEY NONCLUSTERED ( visit_occurrence_id ) ; + +ALTER TABLE visit_detail ADD CONSTRAINT xpk_visit_detail PRIMARY KEY NONCLUSTERED ( visit_detail_id ) ; + +ALTER TABLE procedure_occurrence ADD CONSTRAINT xpk_procedure_occurrence PRIMARY KEY NONCLUSTERED ( procedure_occurrence_id ) ; + +ALTER TABLE drug_exposure ADD CONSTRAINT xpk_drug_exposure PRIMARY KEY NONCLUSTERED ( drug_exposure_id ) ; + +ALTER TABLE device_exposure ADD CONSTRAINT xpk_device_exposure PRIMARY KEY NONCLUSTERED ( device_exposure_id ) ; + +ALTER TABLE condition_occurrence ADD CONSTRAINT xpk_condition_occurrence PRIMARY KEY NONCLUSTERED ( condition_occurrence_id ) ; + +ALTER TABLE measurement ADD CONSTRAINT xpk_measurement PRIMARY KEY NONCLUSTERED ( measurement_id ) ; + +ALTER TABLE note ADD CONSTRAINT xpk_note PRIMARY KEY NONCLUSTERED ( note_id ) ; + +ALTER TABLE note_nlp ADD CONSTRAINT xpk_note_nlp PRIMARY KEY NONCLUSTERED ( note_nlp_id ) ; + +ALTER TABLE observation ADD CONSTRAINT xpk_observation PRIMARY KEY NONCLUSTERED ( observation_id ) ; + + + + +/************************ + +Standardized health system data + +************************/ + + +ALTER TABLE location ADD CONSTRAINT xpk_location PRIMARY KEY NONCLUSTERED ( location_id ) ; + +ALTER TABLE care_site ADD CONSTRAINT xpk_care_site PRIMARY KEY NONCLUSTERED ( care_site_id ) ; + +ALTER TABLE provider ADD CONSTRAINT xpk_provider PRIMARY KEY NONCLUSTERED ( provider_id ) ; + + + +/************************ + +Standardized health economics + +************************/ + + +ALTER TABLE payer_plan_period ADD CONSTRAINT xpk_payer_plan_period PRIMARY KEY NONCLUSTERED ( payer_plan_period_id ) ; + +ALTER TABLE cost ADD CONSTRAINT xpk_visit_cost PRIMARY KEY NONCLUSTERED ( cost_id ) ; + + +/************************ + +Standardized derived elements + +************************/ + +ALTER TABLE cohort ADD CONSTRAINT xpk_cohort PRIMARY KEY NONCLUSTERED ( cohort_definition_id, subject_id, cohort_start_date, cohort_end_date ) ; + +ALTER TABLE cohort_attribute ADD CONSTRAINT xpk_cohort_attribute PRIMARY KEY NONCLUSTERED ( cohort_definition_id, subject_id, cohort_start_date, cohort_end_date, attribute_definition_id ) ; + +ALTER TABLE drug_era ADD CONSTRAINT xpk_drug_era PRIMARY KEY NONCLUSTERED ( drug_era_id ) ; + +ALTER TABLE dose_era ADD CONSTRAINT xpk_dose_era PRIMARY KEY NONCLUSTERED ( dose_era_id ) ; + +ALTER TABLE condition_era ADD CONSTRAINT xpk_condition_era PRIMARY KEY NONCLUSTERED ( condition_era_id ) ; + + +/************************ +************************* +************************* +************************* + +Indices + +************************* +************************* +************************* +************************/ + /************************ Standardized vocabulary diff --git a/DDLGeneratr/output/oracle/OMOP CDM oracle constraints.txt b/DDLGeneratr/output/oracle/OMOP CDM oracle constraints.txt index 6a0ce77..facbafa 100644 --- a/DDLGeneratr/output/oracle/OMOP CDM oracle constraints.txt +++ b/DDLGeneratr/output/oracle/OMOP CDM oracle constraints.txt @@ -26,7 +26,7 @@ ####### # # ####### # ##### ###### # # ## ##### ### ##### ##### #### # # #### # # # # # # # # # #### -oracle script to create constraints within OMOP common data model, version 5.3.0 +oracle script to create foreign key constraints within OMOP common data model, version 5.3.0 last revised: 15-November-2017 @@ -36,153 +36,6 @@ author: Patrick Ryan, Clair Blacketer *************************/ -/************************ -************************* -************************* -************************* - -Primary key constraints - -************************* -************************* -************************* -************************/ - - - -/************************ - -Standardized vocabulary - -************************/ - - - -ALTER TABLE concept ADD CONSTRAINT xpk_concept PRIMARY KEY (concept_id); - -ALTER TABLE vocabulary ADD CONSTRAINT xpk_vocabulary PRIMARY KEY (vocabulary_id); - -ALTER TABLE domain ADD CONSTRAINT xpk_domain PRIMARY KEY (domain_id); - -ALTER TABLE concept_class ADD CONSTRAINT xpk_concept_class PRIMARY KEY (concept_class_id); - -ALTER TABLE concept_relationship ADD CONSTRAINT xpk_concept_relationship PRIMARY KEY (concept_id_1,concept_id_2,relationship_id); - -ALTER TABLE relationship ADD CONSTRAINT xpk_relationship PRIMARY KEY (relationship_id); - -ALTER TABLE concept_ancestor ADD CONSTRAINT xpk_concept_ancestor PRIMARY KEY (ancestor_concept_id,descendant_concept_id); - -ALTER TABLE source_to_concept_map ADD CONSTRAINT xpk_source_to_concept_map PRIMARY KEY (source_vocabulary_id,target_concept_id,source_code,valid_end_date); - -ALTER TABLE drug_strength ADD CONSTRAINT xpk_drug_strength PRIMARY KEY (drug_concept_id, ingredient_concept_id); - -ALTER TABLE cohort_definition ADD CONSTRAINT xpk_cohort_definition PRIMARY KEY (cohort_definition_id); - -ALTER TABLE attribute_definition ADD CONSTRAINT xpk_attribute_definition PRIMARY KEY (attribute_definition_id); - - -/************************** - -Standardized meta-data - -***************************/ - - - - - - - - - -/************************ - -Standardized clinical data - -************************/ - - -/**PRIMARY KEY NONCLUSTERED constraints**/ - -ALTER TABLE person ADD CONSTRAINT xpk_person PRIMARY KEY ( person_id ) ; - -ALTER TABLE observation_period ADD CONSTRAINT xpk_observation_period PRIMARY KEY ( observation_period_id ) ; - -ALTER TABLE specimen ADD CONSTRAINT xpk_specimen PRIMARY KEY ( specimen_id ) ; - -ALTER TABLE death ADD CONSTRAINT xpk_death PRIMARY KEY ( person_id ) ; - -ALTER TABLE visit_occurrence ADD CONSTRAINT xpk_visit_occurrence PRIMARY KEY ( visit_occurrence_id ) ; - -ALTER TABLE procedure_occurrence ADD CONSTRAINT xpk_procedure_occurrence PRIMARY KEY ( procedure_occurrence_id ) ; - -ALTER TABLE drug_exposure ADD CONSTRAINT xpk_drug_exposure PRIMARY KEY ( drug_exposure_id ) ; - -ALTER TABLE device_exposure ADD CONSTRAINT xpk_device_exposure PRIMARY KEY ( device_exposure_id ) ; - -ALTER TABLE condition_occurrence ADD CONSTRAINT xpk_condition_occurrence PRIMARY KEY ( condition_occurrence_id ) ; - -ALTER TABLE measurement ADD CONSTRAINT xpk_measurement PRIMARY KEY ( measurement_id ) ; - -ALTER TABLE note ADD CONSTRAINT xpk_note PRIMARY KEY ( note_id ) ; - -ALTER TABLE note_nlp ADD CONSTRAINT xpk_note_nlp PRIMARY KEY ( note_nlp_id ) ; - -ALTER TABLE observation ADD CONSTRAINT xpk_observation PRIMARY KEY ( observation_id ) ; - - - - -/************************ - -Standardized health system data - -************************/ - - -ALTER TABLE location ADD CONSTRAINT xpk_location PRIMARY KEY ( location_id ) ; - -ALTER TABLE care_site ADD CONSTRAINT xpk_care_site PRIMARY KEY ( care_site_id ) ; - -ALTER TABLE provider ADD CONSTRAINT xpk_provider PRIMARY KEY ( provider_id ) ; - - - -/************************ - -Standardized health economics - -************************/ - - -ALTER TABLE payer_plan_period ADD CONSTRAINT xpk_payer_plan_period PRIMARY KEY ( payer_plan_period_id ) ; - -ALTER TABLE cost ADD CONSTRAINT xpk_visit_cost PRIMARY KEY ( cost_id ) ; - - -/************************ - -Standardized derived elements - -************************/ - -ALTER TABLE cohort ADD CONSTRAINT xpk_cohort PRIMARY KEY ( cohort_definition_id, subject_id, cohort_start_date, cohort_end_date ) ; - -ALTER TABLE cohort_attribute ADD CONSTRAINT xpk_cohort_attribute PRIMARY KEY ( cohort_definition_id, subject_id, cohort_start_date, cohort_end_date, attribute_definition_id ) ; - -ALTER TABLE drug_era ADD CONSTRAINT xpk_drug_era PRIMARY KEY ( drug_era_id ) ; - -ALTER TABLE dose_era ADD CONSTRAINT xpk_dose_era PRIMARY KEY ( dose_era_id ) ; - -ALTER TABLE condition_era ADD CONSTRAINT xpk_condition_era PRIMARY KEY ( condition_era_id ) ; - - - - - - - - /************************ ************************* ************************* @@ -328,6 +181,31 @@ ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_admitting_s FOREIGN KEY (a ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_discharge FOREIGN KEY (discharge_to_concept_id) REFERENCES concept (concept_id); +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_preceding FOREIGN KEY (preceding_visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_concept FOREIGN KEY (visit_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_type_concept FOREIGN KEY (visit_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_care_site FOREIGN KEY (care_site_id) REFERENCES care_site (care_site_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_concept_s FOREIGN KEY (visit_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_admitting_s FOREIGN KEY (admitting_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_discharge FOREIGN KEY (discharge_to_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_preceding FOREIGN KEY (preceding_visit_detail_id) REFERENCES visit_detail (visit_detail_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_parent FOREIGN KEY (visit_detail_parent_id) REFERENCES visit_detail (visit_detail_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpd_v_detail_visit FOREIGN KEY (visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + ALTER TABLE procedure_occurrence ADD CONSTRAINT fpk_procedure_person FOREIGN KEY (person_id) REFERENCES person (person_id); @@ -526,3 +404,18 @@ ALTER TABLE dose_era ADD CONSTRAINT fpk_dose_era_unit_concept FOREIGN KEY (unit_ ALTER TABLE condition_era ADD CONSTRAINT fpk_condition_era_person FOREIGN KEY (person_id) REFERENCES person (person_id); ALTER TABLE condition_era ADD CONSTRAINT fpk_condition_era_concept FOREIGN KEY (condition_concept_id) REFERENCES concept (concept_id); + + +/************************ +************************* +************************* +************************* + +Unique constraints + +************************* +************************* +************************* +************************/ + +ALTER TABLE concept_synonym ADD CONSTRAINT uq_concept_synonym UNIQUE (concept_id, concept_synonym_name, language_concept_id); diff --git a/DDLGeneratr/output/oracle/OMOP CDM oracle indexes.txt b/DDLGeneratr/output/oracle/OMOP CDM oracle indexes.txt index 5e9c417..1e8d22c 100644 --- a/DDLGeneratr/output/oracle/OMOP CDM oracle indexes.txt +++ b/DDLGeneratr/output/oracle/OMOP CDM oracle indexes.txt @@ -1,13 +1,13 @@ /********************************************************************************* # Copyright 2014 Observational Health Data Sciences and Informatics # -# +# # Licensed under the Apache License, Version 2.0 (the "License"); # you may not use this file except in compliance with the License. # You may obtain a copy of the License at -# +# # http://www.apache.org/licenses/LICENSE-2.0 -# +# # Unless required by applicable law or agreed to in writing, software # distributed under the License is distributed on an "AS IS" BASIS, # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. @@ -17,26 +17,175 @@ /************************ - ####### # # ####### ###### ##### ###### # # ####### ##### ### - # # ## ## # # # # # # # # ## ## # # # # # # # # ##### ###### # # ###### #### - # # # # # # # # # # # # # # # # # # # # # # ## # # # # # # # # - # # # # # # # ###### # # # # # # # # ###### ##### # # # # # # ##### ## ##### #### - # # # # # # # # # # # # # # # ### # # # # # # # # ## # # - # # # # # # # # # # # # # # # # # ### # # # # ## # # # # # # # # - ####### # # ####### # ##### ###### # # ## ##### ### ##### ### # # ##### ###### # # ###### #### - + ####### # # ####### ###### ##### ###### # # ####### ##### ### + # # ## ## # # # # # # # # ## ## # # # # # # # # ##### ###### # # ###### #### + # # # # # # # # # # # # # # # # # # # # # # ## # # # # # # # # + # # # # # # # ###### # # # # # # # # ###### ##### # # # # # # ##### ## ##### #### + # # # # # # # # # # # # # # # ### # # # # # # # # ## # # + # # # # # # # # # # # # # # # # # ### # # # # ## # # # # # # # # + ####### # # ####### # ##### ###### # # ## ##### ### ##### ### # # ##### ###### # # ###### #### -oracle script to create the required indexes within OMOP common data model, version 5.3 + +oracle script to create the required indexes within OMOP common data model, version 5.3 last revised: 14-November-2017 author: Patrick Ryan, Clair Blacketer -description: These indices are considered a minimal requirement to ensure adequate performance of analyses. +description: These primary keys and indices are considered a minimal requirement to ensure adequate performance of analyses. *************************/ +/************************ +************************* +************************* +************************* + +Primary key constraints + +************************* +************************* +************************* +************************/ + + + +/************************ + +Standardized vocabulary + +************************/ + + + +ALTER TABLE concept ADD CONSTRAINT xpk_concept PRIMARY KEY (concept_id); + +ALTER TABLE vocabulary ADD CONSTRAINT xpk_vocabulary PRIMARY KEY (vocabulary_id); + +ALTER TABLE domain ADD CONSTRAINT xpk_domain PRIMARY KEY (domain_id); + +ALTER TABLE concept_class ADD CONSTRAINT xpk_concept_class PRIMARY KEY (concept_class_id); + +ALTER TABLE concept_relationship ADD CONSTRAINT xpk_concept_relationship PRIMARY KEY (concept_id_1,concept_id_2,relationship_id); + +ALTER TABLE relationship ADD CONSTRAINT xpk_relationship PRIMARY KEY (relationship_id); + +ALTER TABLE concept_ancestor ADD CONSTRAINT xpk_concept_ancestor PRIMARY KEY (ancestor_concept_id,descendant_concept_id); + +ALTER TABLE source_to_concept_map ADD CONSTRAINT xpk_source_to_concept_map PRIMARY KEY (source_vocabulary_id,target_concept_id,source_code,valid_end_date); + +ALTER TABLE drug_strength ADD CONSTRAINT xpk_drug_strength PRIMARY KEY (drug_concept_id, ingredient_concept_id); + +ALTER TABLE cohort_definition ADD CONSTRAINT xpk_cohort_definition PRIMARY KEY (cohort_definition_id); + +ALTER TABLE attribute_definition ADD CONSTRAINT xpk_attribute_definition PRIMARY KEY (attribute_definition_id); + + +/************************** + +Standardized meta-data + +***************************/ + + + +/************************ + +Standardized clinical data + +************************/ + + +/**PRIMARY KEY NONCLUSTERED constraints**/ + +ALTER TABLE person ADD CONSTRAINT xpk_person PRIMARY KEY ( person_id ) ; + +ALTER TABLE observation_period ADD CONSTRAINT xpk_observation_period PRIMARY KEY ( observation_period_id ) ; + +ALTER TABLE specimen ADD CONSTRAINT xpk_specimen PRIMARY KEY ( specimen_id ) ; + +ALTER TABLE death ADD CONSTRAINT xpk_death PRIMARY KEY ( person_id ) ; + +ALTER TABLE visit_occurrence ADD CONSTRAINT xpk_visit_occurrence PRIMARY KEY ( visit_occurrence_id ) ; + +ALTER TABLE visit_detail ADD CONSTRAINT xpk_visit_detail PRIMARY KEY ( visit_detail_id ) ; + +ALTER TABLE procedure_occurrence ADD CONSTRAINT xpk_procedure_occurrence PRIMARY KEY ( procedure_occurrence_id ) ; + +ALTER TABLE drug_exposure ADD CONSTRAINT xpk_drug_exposure PRIMARY KEY ( drug_exposure_id ) ; + +ALTER TABLE device_exposure ADD CONSTRAINT xpk_device_exposure PRIMARY KEY ( device_exposure_id ) ; + +ALTER TABLE condition_occurrence ADD CONSTRAINT xpk_condition_occurrence PRIMARY KEY ( condition_occurrence_id ) ; + +ALTER TABLE measurement ADD CONSTRAINT xpk_measurement PRIMARY KEY ( measurement_id ) ; + +ALTER TABLE note ADD CONSTRAINT xpk_note PRIMARY KEY ( note_id ) ; + +ALTER TABLE note_nlp ADD CONSTRAINT xpk_note_nlp PRIMARY KEY ( note_nlp_id ) ; + +ALTER TABLE observation ADD CONSTRAINT xpk_observation PRIMARY KEY ( observation_id ) ; + + + + +/************************ + +Standardized health system data + +************************/ + + +ALTER TABLE location ADD CONSTRAINT xpk_location PRIMARY KEY ( location_id ) ; + +ALTER TABLE care_site ADD CONSTRAINT xpk_care_site PRIMARY KEY ( care_site_id ) ; + +ALTER TABLE provider ADD CONSTRAINT xpk_provider PRIMARY KEY ( provider_id ) ; + + + +/************************ + +Standardized health economics + +************************/ + + +ALTER TABLE payer_plan_period ADD CONSTRAINT xpk_payer_plan_period PRIMARY KEY ( payer_plan_period_id ) ; + +ALTER TABLE cost ADD CONSTRAINT xpk_visit_cost PRIMARY KEY ( cost_id ) ; + + +/************************ + +Standardized derived elements + +************************/ + +ALTER TABLE cohort ADD CONSTRAINT xpk_cohort PRIMARY KEY ( cohort_definition_id, subject_id, cohort_start_date, cohort_end_date ) ; + +ALTER TABLE cohort_attribute ADD CONSTRAINT xpk_cohort_attribute PRIMARY KEY ( cohort_definition_id, subject_id, cohort_start_date, cohort_end_date, attribute_definition_id ) ; + +ALTER TABLE drug_era ADD CONSTRAINT xpk_drug_era PRIMARY KEY ( drug_era_id ) ; + +ALTER TABLE dose_era ADD CONSTRAINT xpk_dose_era PRIMARY KEY ( dose_era_id ) ; + +ALTER TABLE condition_era ADD CONSTRAINT xpk_condition_era PRIMARY KEY ( condition_era_id ) ; + + +/************************ +************************* +************************* +************************* + +Indices + +************************* +************************* +************************* +************************/ + /************************ Standardized vocabulary @@ -83,9 +232,9 @@ EXCEPTION END IF; END; -CREATE INDEX idx_concept_relationship_id_1 ON concept_relationship (concept_id_1 ASC); -CREATE INDEX idx_concept_relationship_id_2 ON concept_relationship (concept_id_2 ASC); -CREATE INDEX idx_concept_relationship_id_3 ON concept_relationship (relationship_id ASC); +CREATE INDEX idx_concept_relationship_id_1 ON concept_relationship (concept_id_1 ASC); +CREATE INDEX idx_concept_relationship_id_2 ON concept_relationship (concept_id_2 ASC); +CREATE INDEX idx_concept_relationship_id_3 ON concept_relationship (relationship_id ASC); BEGIN EXECUTE IMMEDIATE 'CREATE UNIQUE INDEX idx_relationship_rel_id ON relationship (relationship_id ASC)'; @@ -149,6 +298,9 @@ CREATE INDEX idx_death_person_id ON death (person_id ASC); CREATE INDEX idx_visit_person_id ON visit_occurrence (person_id ASC); CREATE INDEX idx_visit_concept_id ON visit_occurrence (visit_concept_id ASC); +CREATE INDEX idx_visit_detail_person_id ON visit_detail (person_id ASC); +CREATE INDEX idx_visit_detail_concept_id ON visit_detail (visit_detail_concept_id ASC); + CREATE INDEX idx_procedure_person_id ON procedure_occurrence (person_id ASC); CREATE INDEX idx_procedure_concept_id ON procedure_occurrence (procedure_concept_id ASC); CREATE INDEX idx_procedure_visit_id ON procedure_occurrence (visit_occurrence_id ASC); diff --git a/DDLGeneratr/output/pdw/OMOP CDM pdw constraints.txt b/DDLGeneratr/output/pdw/OMOP CDM pdw constraints.txt new file mode 100644 index 0000000..a96d34c --- /dev/null +++ b/DDLGeneratr/output/pdw/OMOP CDM pdw constraints.txt @@ -0,0 +1,421 @@ +/********************************************************************************* +# Copyright 2014 Observational Health Data Sciences and Informatics +# +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +********************************************************************************/ + +/************************ + + ####### # # ####### ###### ##### ###### # # ####### ##### ##### + # # ## ## # # # # # # # # ## ## # # # # # # # #### # # #### ##### ##### ## # # # ##### #### + # # # # # # # # # # # # # # # # # # # # # # # # ## # # # # # # # # ## # # # + # # # # # # # ###### # # # # # # # # ###### ##### # # # # # # #### # # # # # # # # # # #### + # # # # # # # # # # # # # # # ### # # # # # # # # # ##### ###### # # # # # # + # # # # # # # # # # # # # # # # # ### # # # # # # # ## # # # # # # # # # ## # # # + ####### # # ####### # ##### ###### # # ## ##### ### ##### ##### #### # # #### # # # # # # # # # #### + + +pdw script to create foreign key constraints within OMOP common data model, version 5.3.0 + +last revised: 15-November-2017 + +author: Patrick Ryan, Clair Blacketer + + +*************************/ + + +/************************ +************************* +************************* +************************* + +Foreign key constraints + +************************* +************************* +************************* +************************/ + + +/************************ + +Standardized vocabulary + +************************/ + + +ALTER TABLE concept ADD CONSTRAINT fpk_concept_domain FOREIGN KEY (domain_id) REFERENCES domain (domain_id); + +ALTER TABLE concept ADD CONSTRAINT fpk_concept_class FOREIGN KEY (concept_class_id) REFERENCES concept_class (concept_class_id); + +ALTER TABLE concept ADD CONSTRAINT fpk_concept_vocabulary FOREIGN KEY (vocabulary_id) REFERENCES vocabulary (vocabulary_id); + +ALTER TABLE vocabulary ADD CONSTRAINT fpk_vocabulary_concept FOREIGN KEY (vocabulary_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE domain ADD CONSTRAINT fpk_domain_concept FOREIGN KEY (domain_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE concept_class ADD CONSTRAINT fpk_concept_class_concept FOREIGN KEY (concept_class_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE concept_relationship ADD CONSTRAINT fpk_concept_relationship_c_1 FOREIGN KEY (concept_id_1) REFERENCES concept (concept_id); + +ALTER TABLE concept_relationship ADD CONSTRAINT fpk_concept_relationship_c_2 FOREIGN KEY (concept_id_2) REFERENCES concept (concept_id); + +ALTER TABLE concept_relationship ADD CONSTRAINT fpk_concept_relationship_id FOREIGN KEY (relationship_id) REFERENCES relationship (relationship_id); + +ALTER TABLE relationship ADD CONSTRAINT fpk_relationship_concept FOREIGN KEY (relationship_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE relationship ADD CONSTRAINT fpk_relationship_reverse FOREIGN KEY (reverse_relationship_id) REFERENCES relationship (relationship_id); + +ALTER TABLE concept_synonym ADD CONSTRAINT fpk_concept_synonym_concept FOREIGN KEY (concept_id) REFERENCES concept (concept_id); + +ALTER TABLE concept_ancestor ADD CONSTRAINT fpk_concept_ancestor_concept_1 FOREIGN KEY (ancestor_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE concept_ancestor ADD CONSTRAINT fpk_concept_ancestor_concept_2 FOREIGN KEY (descendant_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE source_to_concept_map ADD CONSTRAINT fpk_source_to_concept_map_v_1 FOREIGN KEY (source_vocabulary_id) REFERENCES vocabulary (vocabulary_id); + +ALTER TABLE source_to_concept_map ADD CONSTRAINT fpk_source_to_concept_map_v_2 FOREIGN KEY (target_vocabulary_id) REFERENCES vocabulary (vocabulary_id); + +ALTER TABLE source_to_concept_map ADD CONSTRAINT fpk_source_to_concept_map_c_1 FOREIGN KEY (target_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE drug_strength ADD CONSTRAINT fpk_drug_strength_concept_1 FOREIGN KEY (drug_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE drug_strength ADD CONSTRAINT fpk_drug_strength_concept_2 FOREIGN KEY (ingredient_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE drug_strength ADD CONSTRAINT fpk_drug_strength_unit_1 FOREIGN KEY (amount_unit_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE drug_strength ADD CONSTRAINT fpk_drug_strength_unit_2 FOREIGN KEY (numerator_unit_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE drug_strength ADD CONSTRAINT fpk_drug_strength_unit_3 FOREIGN KEY (denominator_unit_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE cohort_definition ADD CONSTRAINT fpk_cohort_definition_concept FOREIGN KEY (definition_type_concept_id) REFERENCES concept (concept_id); + + +/************************** + +Standardized meta-data + +***************************/ + + + + + +/************************ + +Standardized clinical data + +************************/ + +ALTER TABLE person ADD CONSTRAINT fpk_person_gender_concept FOREIGN KEY (gender_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE person ADD CONSTRAINT fpk_person_race_concept FOREIGN KEY (race_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE person ADD CONSTRAINT fpk_person_ethnicity_concept FOREIGN KEY (ethnicity_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE person ADD CONSTRAINT fpk_person_gender_concept_s FOREIGN KEY (gender_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE person ADD CONSTRAINT fpk_person_race_concept_s FOREIGN KEY (race_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE person ADD CONSTRAINT fpk_person_ethnicity_concept_s FOREIGN KEY (ethnicity_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE person ADD CONSTRAINT fpk_person_location FOREIGN KEY (location_id) REFERENCES location (location_id); + +ALTER TABLE person ADD CONSTRAINT fpk_person_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE person ADD CONSTRAINT fpk_person_care_site FOREIGN KEY (care_site_id) REFERENCES care_site (care_site_id); + + +ALTER TABLE observation_period ADD CONSTRAINT fpk_observation_period_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE observation_period ADD CONSTRAINT fpk_observation_period_concept FOREIGN KEY (period_type_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE specimen ADD CONSTRAINT fpk_specimen_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE specimen ADD CONSTRAINT fpk_specimen_concept FOREIGN KEY (specimen_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE specimen ADD CONSTRAINT fpk_specimen_type_concept FOREIGN KEY (specimen_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE specimen ADD CONSTRAINT fpk_specimen_unit_concept FOREIGN KEY (unit_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE specimen ADD CONSTRAINT fpk_specimen_site_concept FOREIGN KEY (anatomic_site_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE specimen ADD CONSTRAINT fpk_specimen_status_concept FOREIGN KEY (disease_status_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE death ADD CONSTRAINT fpk_death_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE death ADD CONSTRAINT fpk_death_type_concept FOREIGN KEY (death_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE death ADD CONSTRAINT fpk_death_cause_concept FOREIGN KEY (cause_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE death ADD CONSTRAINT fpk_death_cause_concept_s FOREIGN KEY (cause_source_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_concept FOREIGN KEY (visit_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_type_concept FOREIGN KEY (visit_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_care_site FOREIGN KEY (care_site_id) REFERENCES care_site (care_site_id); + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_concept_s FOREIGN KEY (visit_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_admitting_s FOREIGN KEY (admitting_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_discharge FOREIGN KEY (discharge_to_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_preceding FOREIGN KEY (preceding_visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_concept FOREIGN KEY (visit_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_type_concept FOREIGN KEY (visit_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_care_site FOREIGN KEY (care_site_id) REFERENCES care_site (care_site_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_concept_s FOREIGN KEY (visit_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_admitting_s FOREIGN KEY (admitting_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_discharge FOREIGN KEY (discharge_to_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_preceding FOREIGN KEY (preceding_visit_detail_id) REFERENCES visit_detail (visit_detail_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_parent FOREIGN KEY (visit_detail_parent_id) REFERENCES visit_detail (visit_detail_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpd_v_detail_visit FOREIGN KEY (visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + + +ALTER TABLE procedure_occurrence ADD CONSTRAINT fpk_procedure_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE procedure_occurrence ADD CONSTRAINT fpk_procedure_concept FOREIGN KEY (procedure_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE procedure_occurrence ADD CONSTRAINT fpk_procedure_type_concept FOREIGN KEY (procedure_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE procedure_occurrence ADD CONSTRAINT fpk_procedure_modifier FOREIGN KEY (modifier_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE procedure_occurrence ADD CONSTRAINT fpk_procedure_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE procedure_occurrence ADD CONSTRAINT fpk_procedure_visit FOREIGN KEY (visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + +ALTER TABLE procedure_occurrence ADD CONSTRAINT fpk_procedure_concept_s FOREIGN KEY (procedure_source_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE drug_exposure ADD CONSTRAINT fpk_drug_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE drug_exposure ADD CONSTRAINT fpk_drug_concept FOREIGN KEY (drug_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE drug_exposure ADD CONSTRAINT fpk_drug_type_concept FOREIGN KEY (drug_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE drug_exposure ADD CONSTRAINT fpk_drug_route_concept FOREIGN KEY (route_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE drug_exposure ADD CONSTRAINT fpk_drug_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE drug_exposure ADD CONSTRAINT fpk_drug_visit FOREIGN KEY (visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + +ALTER TABLE drug_exposure ADD CONSTRAINT fpk_drug_concept_s FOREIGN KEY (drug_source_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE device_exposure ADD CONSTRAINT fpk_device_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE device_exposure ADD CONSTRAINT fpk_device_concept FOREIGN KEY (device_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE device_exposure ADD CONSTRAINT fpk_device_type_concept FOREIGN KEY (device_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE device_exposure ADD CONSTRAINT fpk_device_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE device_exposure ADD CONSTRAINT fpk_device_visit FOREIGN KEY (visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + +ALTER TABLE device_exposure ADD CONSTRAINT fpk_device_concept_s FOREIGN KEY (device_source_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE condition_occurrence ADD CONSTRAINT fpk_condition_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE condition_occurrence ADD CONSTRAINT fpk_condition_concept FOREIGN KEY (condition_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE condition_occurrence ADD CONSTRAINT fpk_condition_type_concept FOREIGN KEY (condition_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE condition_occurrence ADD CONSTRAINT fpk_condition_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE condition_occurrence ADD CONSTRAINT fpk_condition_visit FOREIGN KEY (visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + +ALTER TABLE condition_occurrence ADD CONSTRAINT fpk_condition_concept_s FOREIGN KEY (condition_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE condition_occurrence ADD CONSTRAINT fpk_condition_status_concept FOREIGN KEY (condition_status_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_concept FOREIGN KEY (measurement_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_type_concept FOREIGN KEY (measurement_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_operator FOREIGN KEY (operator_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_value FOREIGN KEY (value_as_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_unit FOREIGN KEY (unit_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_visit FOREIGN KEY (visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_concept_s FOREIGN KEY (measurement_source_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE note ADD CONSTRAINT fpk_note_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE note ADD CONSTRAINT fpk_note_type_concept FOREIGN KEY (note_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE note ADD CONSTRAINT fpk_note_class_concept FOREIGN KEY (note_class_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE note ADD CONSTRAINT fpk_note_encoding_concept FOREIGN KEY (encoding_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE note ADD CONSTRAINT fpk_language_concept FOREIGN KEY (language_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE note ADD CONSTRAINT fpk_note_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE note ADD CONSTRAINT fpk_note_visit FOREIGN KEY (visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + + +ALTER TABLE note_nlp ADD CONSTRAINT fpk_note_nlp_note FOREIGN KEY (note_id) REFERENCES note (note_id); + +ALTER TABLE note_nlp ADD CONSTRAINT fpk_note_nlp_section_concept FOREIGN KEY (section_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE note_nlp ADD CONSTRAINT fpk_note_nlp_concept FOREIGN KEY (note_nlp_concept_id) REFERENCES concept (concept_id); + + + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_concept FOREIGN KEY (observation_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_type_concept FOREIGN KEY (observation_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_value FOREIGN KEY (value_as_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_qualifier FOREIGN KEY (qualifier_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_unit FOREIGN KEY (unit_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_visit FOREIGN KEY (visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_concept_s FOREIGN KEY (observation_source_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE fact_relationship ADD CONSTRAINT fpk_fact_domain_1 FOREIGN KEY (domain_concept_id_1) REFERENCES concept (concept_id); + +ALTER TABLE fact_relationship ADD CONSTRAINT fpk_fact_domain_2 FOREIGN KEY (domain_concept_id_2) REFERENCES concept (concept_id); + +ALTER TABLE fact_relationship ADD CONSTRAINT fpk_fact_relationship FOREIGN KEY (relationship_concept_id) REFERENCES concept (concept_id); + + + +/************************ + +Standardized health system data + +************************/ + +ALTER TABLE care_site ADD CONSTRAINT fpk_care_site_location FOREIGN KEY (location_id) REFERENCES location (location_id); + +ALTER TABLE care_site ADD CONSTRAINT fpk_care_site_place FOREIGN KEY (place_of_service_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE provider ADD CONSTRAINT fpk_provider_specialty FOREIGN KEY (specialty_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE provider ADD CONSTRAINT fpk_provider_care_site FOREIGN KEY (care_site_id) REFERENCES care_site (care_site_id); + +ALTER TABLE provider ADD CONSTRAINT fpk_provider_gender FOREIGN KEY (gender_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE provider ADD CONSTRAINT fpk_provider_specialty_s FOREIGN KEY (specialty_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE provider ADD CONSTRAINT fpk_provider_gender_s FOREIGN KEY (gender_source_concept_id) REFERENCES concept (concept_id); + + + + +/************************ + +Standardized health economics + +************************/ + +ALTER TABLE payer_plan_period ADD CONSTRAINT fpk_payer_plan_period FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE cost ADD CONSTRAINT fpk_visit_cost_currency FOREIGN KEY (currency_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE cost ADD CONSTRAINT fpk_visit_cost_period FOREIGN KEY (payer_plan_period_id) REFERENCES payer_plan_period (payer_plan_period_id); + +ALTER TABLE cost ADD CONSTRAINT fpk_drg_concept FOREIGN KEY (drg_concept_id) REFERENCES concept (concept_id); + +/************************ + +Standardized derived elements + +************************/ + + +ALTER TABLE cohort ADD CONSTRAINT fpk_cohort_definition FOREIGN KEY (cohort_definition_id) REFERENCES cohort_definition (cohort_definition_id); + + +ALTER TABLE cohort_attribute ADD CONSTRAINT fpk_ca_cohort_definition FOREIGN KEY (cohort_definition_id) REFERENCES cohort_definition (cohort_definition_id); + +ALTER TABLE cohort_attribute ADD CONSTRAINT fpk_ca_attribute_definition FOREIGN KEY (attribute_definition_id) REFERENCES attribute_definition (attribute_definition_id); + +ALTER TABLE cohort_attribute ADD CONSTRAINT fpk_ca_value FOREIGN KEY (value_as_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE drug_era ADD CONSTRAINT fpk_drug_era_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE drug_era ADD CONSTRAINT fpk_drug_era_concept FOREIGN KEY (drug_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE dose_era ADD CONSTRAINT fpk_dose_era_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE dose_era ADD CONSTRAINT fpk_dose_era_concept FOREIGN KEY (drug_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE dose_era ADD CONSTRAINT fpk_dose_era_unit_concept FOREIGN KEY (unit_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE condition_era ADD CONSTRAINT fpk_condition_era_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE condition_era ADD CONSTRAINT fpk_condition_era_concept FOREIGN KEY (condition_concept_id) REFERENCES concept (concept_id); + + +/************************ +************************* +************************* +************************* + +Unique constraints + +************************* +************************* +************************* +************************/ + +ALTER TABLE concept_synonym ADD CONSTRAINT uq_concept_synonym UNIQUE (concept_id, concept_synonym_name, language_concept_id); diff --git a/DDLGeneratr/output/pdw/OMOP CDM pdw indexes.txt b/DDLGeneratr/output/pdw/OMOP CDM pdw indexes.txt new file mode 100644 index 0000000..3eb3a92 --- /dev/null +++ b/DDLGeneratr/output/pdw/OMOP CDM pdw indexes.txt @@ -0,0 +1,342 @@ +/********************************************************************************* +# Copyright 2014 Observational Health Data Sciences and Informatics +# +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +********************************************************************************/ + +/************************ + + ####### # # ####### ###### ##### ###### # # ####### ##### ### + # # ## ## # # # # # # # # ## ## # # # # # # # # ##### ###### # # ###### #### + # # # # # # # # # # # # # # # # # # # # # # ## # # # # # # # # + # # # # # # # ###### # # # # # # # # ###### ##### # # # # # # ##### ## ##### #### + # # # # # # # # # # # # # # # ### # # # # # # # # ## # # + # # # # # # # # # # # # # # # # # ### # # # # ## # # # # # # # # + ####### # # ####### # ##### ###### # # ## ##### ### ##### ### # # ##### ###### # # ###### #### + + +pdw script to create the required indexes within OMOP common data model, version 5.3 + +last revised: 14-November-2017 + +author: Patrick Ryan, Clair Blacketer + +description: These primary keys and indices are considered a minimal requirement to ensure adequate performance of analyses. + +*************************/ + + +/************************ +************************* +************************* +************************* + +Primary key constraints + +************************* +************************* +************************* +************************/ + + + +/************************ + +Standardized vocabulary + +************************/ + + + +ALTER TABLE concept ADD CONSTRAINT xpk_concept PRIMARY KEY NONCLUSTERED (concept_id); + +ALTER TABLE vocabulary ADD CONSTRAINT xpk_vocabulary PRIMARY KEY NONCLUSTERED (vocabulary_id); + +ALTER TABLE domain ADD CONSTRAINT xpk_domain PRIMARY KEY NONCLUSTERED (domain_id); + +ALTER TABLE concept_class ADD CONSTRAINT xpk_concept_class PRIMARY KEY NONCLUSTERED (concept_class_id); + +ALTER TABLE concept_relationship ADD CONSTRAINT xpk_concept_relationship PRIMARY KEY NONCLUSTERED (concept_id_1,concept_id_2,relationship_id); + +ALTER TABLE relationship ADD CONSTRAINT xpk_relationship PRIMARY KEY NONCLUSTERED (relationship_id); + +ALTER TABLE concept_ancestor ADD CONSTRAINT xpk_concept_ancestor PRIMARY KEY NONCLUSTERED (ancestor_concept_id,descendant_concept_id); + +ALTER TABLE source_to_concept_map ADD CONSTRAINT xpk_source_to_concept_map PRIMARY KEY NONCLUSTERED (source_vocabulary_id,target_concept_id,source_code,valid_end_date); + +ALTER TABLE drug_strength ADD CONSTRAINT xpk_drug_strength PRIMARY KEY NONCLUSTERED (drug_concept_id, ingredient_concept_id); + +ALTER TABLE cohort_definition ADD CONSTRAINT xpk_cohort_definition PRIMARY KEY NONCLUSTERED (cohort_definition_id); + +ALTER TABLE attribute_definition ADD CONSTRAINT xpk_attribute_definition PRIMARY KEY NONCLUSTERED (attribute_definition_id); + + +/************************** + +Standardized meta-data + +***************************/ + + + +/************************ + +Standardized clinical data + +************************/ + + +/**PRIMARY KEY NONCLUSTERED constraints**/ + +ALTER TABLE person ADD CONSTRAINT xpk_person PRIMARY KEY NONCLUSTERED ( person_id ) ; + +ALTER TABLE observation_period ADD CONSTRAINT xpk_observation_period PRIMARY KEY NONCLUSTERED ( observation_period_id ) ; + +ALTER TABLE specimen ADD CONSTRAINT xpk_specimen PRIMARY KEY NONCLUSTERED ( specimen_id ) ; + +ALTER TABLE death ADD CONSTRAINT xpk_death PRIMARY KEY NONCLUSTERED ( person_id ) ; + +ALTER TABLE visit_occurrence ADD CONSTRAINT xpk_visit_occurrence PRIMARY KEY NONCLUSTERED ( visit_occurrence_id ) ; + +ALTER TABLE visit_detail ADD CONSTRAINT xpk_visit_detail PRIMARY KEY NONCLUSTERED ( visit_detail_id ) ; + +ALTER TABLE procedure_occurrence ADD CONSTRAINT xpk_procedure_occurrence PRIMARY KEY NONCLUSTERED ( procedure_occurrence_id ) ; + +ALTER TABLE drug_exposure ADD CONSTRAINT xpk_drug_exposure PRIMARY KEY NONCLUSTERED ( drug_exposure_id ) ; + +ALTER TABLE device_exposure ADD CONSTRAINT xpk_device_exposure PRIMARY KEY NONCLUSTERED ( device_exposure_id ) ; + +ALTER TABLE condition_occurrence ADD CONSTRAINT xpk_condition_occurrence PRIMARY KEY NONCLUSTERED ( condition_occurrence_id ) ; + +ALTER TABLE measurement ADD CONSTRAINT xpk_measurement PRIMARY KEY NONCLUSTERED ( measurement_id ) ; + +ALTER TABLE note ADD CONSTRAINT xpk_note PRIMARY KEY NONCLUSTERED ( note_id ) ; + +ALTER TABLE note_nlp ADD CONSTRAINT xpk_note_nlp PRIMARY KEY NONCLUSTERED ( note_nlp_id ) ; + +ALTER TABLE observation ADD CONSTRAINT xpk_observation PRIMARY KEY NONCLUSTERED ( observation_id ) ; + + + + +/************************ + +Standardized health system data + +************************/ + + +ALTER TABLE location ADD CONSTRAINT xpk_location PRIMARY KEY NONCLUSTERED ( location_id ) ; + +ALTER TABLE care_site ADD CONSTRAINT xpk_care_site PRIMARY KEY NONCLUSTERED ( care_site_id ) ; + +ALTER TABLE provider ADD CONSTRAINT xpk_provider PRIMARY KEY NONCLUSTERED ( provider_id ) ; + + + +/************************ + +Standardized health economics + +************************/ + + +ALTER TABLE payer_plan_period ADD CONSTRAINT xpk_payer_plan_period PRIMARY KEY NONCLUSTERED ( payer_plan_period_id ) ; + +ALTER TABLE cost ADD CONSTRAINT xpk_visit_cost PRIMARY KEY NONCLUSTERED ( cost_id ) ; + + +/************************ + +Standardized derived elements + +************************/ + +ALTER TABLE cohort ADD CONSTRAINT xpk_cohort PRIMARY KEY NONCLUSTERED ( cohort_definition_id, subject_id, cohort_start_date, cohort_end_date ) ; + +ALTER TABLE cohort_attribute ADD CONSTRAINT xpk_cohort_attribute PRIMARY KEY NONCLUSTERED ( cohort_definition_id, subject_id, cohort_start_date, cohort_end_date, attribute_definition_id ) ; + +ALTER TABLE drug_era ADD CONSTRAINT xpk_drug_era PRIMARY KEY NONCLUSTERED ( drug_era_id ) ; + +ALTER TABLE dose_era ADD CONSTRAINT xpk_dose_era PRIMARY KEY NONCLUSTERED ( dose_era_id ) ; + +ALTER TABLE condition_era ADD CONSTRAINT xpk_condition_era PRIMARY KEY NONCLUSTERED ( condition_era_id ) ; + + +/************************ +************************* +************************* +************************* + +Indices + +************************* +************************* +************************* +************************/ + +/************************ + +Standardized vocabulary + +************************/ + +CREATE UNIQUE CLUSTERED INDEX idx_concept_concept_id ON concept (concept_id ASC); +CREATE INDEX idx_concept_code ON concept (concept_code ASC); +CREATE INDEX idx_concept_vocabluary_id ON concept (vocabulary_id ASC); +CREATE INDEX idx_concept_domain_id ON concept (domain_id ASC); +CREATE INDEX idx_concept_class_id ON concept (concept_class_id ASC); + +CREATE UNIQUE CLUSTERED INDEX idx_vocabulary_vocabulary_id ON vocabulary (vocabulary_id ASC); + +CREATE UNIQUE CLUSTERED INDEX idx_domain_domain_id ON domain (domain_id ASC); + +CREATE UNIQUE CLUSTERED INDEX idx_concept_class_class_id ON concept_class (concept_class_id ASC); + +CREATE INDEX idx_concept_relationship_id_1 ON concept_relationship (concept_id_1 ASC); +CREATE INDEX idx_concept_relationship_id_2 ON concept_relationship (concept_id_2 ASC); +CREATE INDEX idx_concept_relationship_id_3 ON concept_relationship (relationship_id ASC); + +CREATE UNIQUE CLUSTERED INDEX idx_relationship_rel_id ON relationship (relationship_id ASC); + +CREATE CLUSTERED INDEX idx_concept_synonym_id ON concept_synonym (concept_id ASC); + +CREATE CLUSTERED INDEX idx_concept_ancestor_id_1 ON concept_ancestor (ancestor_concept_id ASC); +CREATE INDEX idx_concept_ancestor_id_2 ON concept_ancestor (descendant_concept_id ASC); + +CREATE CLUSTERED INDEX idx_source_to_concept_map_id_3 ON source_to_concept_map (target_concept_id ASC); +CREATE INDEX idx_source_to_concept_map_id_1 ON source_to_concept_map (source_vocabulary_id ASC); +CREATE INDEX idx_source_to_concept_map_id_2 ON source_to_concept_map (target_vocabulary_id ASC); +CREATE INDEX idx_source_to_concept_map_code ON source_to_concept_map (source_code ASC); + +CREATE CLUSTERED INDEX idx_drug_strength_id_1 ON drug_strength (drug_concept_id ASC); +CREATE INDEX idx_drug_strength_id_2 ON drug_strength (ingredient_concept_id ASC); + +CREATE CLUSTERED INDEX idx_cohort_definition_id ON cohort_definition (cohort_definition_id ASC); + +CREATE CLUSTERED INDEX idx_attribute_definition_id ON attribute_definition (attribute_definition_id ASC); + + +/************************** + +Standardized meta-data + +***************************/ + + + + + +/************************ + +Standardized clinical data + +************************/ + +CREATE UNIQUE CLUSTERED INDEX idx_person_id ON person (person_id ASC); + +CREATE CLUSTERED INDEX idx_observation_period_id ON observation_period (person_id ASC); + +CREATE CLUSTERED INDEX idx_specimen_person_id ON specimen (person_id ASC); +CREATE INDEX idx_specimen_concept_id ON specimen (specimen_concept_id ASC); + +CREATE CLUSTERED INDEX idx_death_person_id ON death (person_id ASC); + +CREATE CLUSTERED INDEX idx_visit_person_id ON visit_occurrence (person_id ASC); +CREATE INDEX idx_visit_concept_id ON visit_occurrence (visit_concept_id ASC); + +CREATE CLUSTERED INDEX idx_visit_detail_person_id ON visit_detail (person_id ASC); +CREATE INDEX idx_visit_detail_concept_id ON visit_detail (visit_detail_concept_id ASC); + +CREATE CLUSTERED INDEX idx_procedure_person_id ON procedure_occurrence (person_id ASC); +CREATE INDEX idx_procedure_concept_id ON procedure_occurrence (procedure_concept_id ASC); +CREATE INDEX idx_procedure_visit_id ON procedure_occurrence (visit_occurrence_id ASC); + +CREATE CLUSTERED INDEX idx_drug_person_id ON drug_exposure (person_id ASC); +CREATE INDEX idx_drug_concept_id ON drug_exposure (drug_concept_id ASC); +CREATE INDEX idx_drug_visit_id ON drug_exposure (visit_occurrence_id ASC); + +CREATE CLUSTERED INDEX idx_device_person_id ON device_exposure (person_id ASC); +CREATE INDEX idx_device_concept_id ON device_exposure (device_concept_id ASC); +CREATE INDEX idx_device_visit_id ON device_exposure (visit_occurrence_id ASC); + +CREATE CLUSTERED INDEX idx_condition_person_id ON condition_occurrence (person_id ASC); +CREATE INDEX idx_condition_concept_id ON condition_occurrence (condition_concept_id ASC); +CREATE INDEX idx_condition_visit_id ON condition_occurrence (visit_occurrence_id ASC); + +CREATE CLUSTERED INDEX idx_measurement_person_id ON measurement (person_id ASC); +CREATE INDEX idx_measurement_concept_id ON measurement (measurement_concept_id ASC); +CREATE INDEX idx_measurement_visit_id ON measurement (visit_occurrence_id ASC); + +CREATE CLUSTERED INDEX idx_note_person_id ON note (person_id ASC); +CREATE INDEX idx_note_concept_id ON note (note_type_concept_id ASC); +CREATE INDEX idx_note_visit_id ON note (visit_occurrence_id ASC); + +CREATE CLUSTERED INDEX idx_note_nlp_note_id ON note_nlp (note_id ASC); +CREATE INDEX idx_note_nlp_concept_id ON note_nlp (note_nlp_concept_id ASC); + +CREATE CLUSTERED INDEX idx_observation_person_id ON observation (person_id ASC); +CREATE INDEX idx_observation_concept_id ON observation (observation_concept_id ASC); +CREATE INDEX idx_observation_visit_id ON observation (visit_occurrence_id ASC); + +CREATE INDEX idx_fact_relationship_id_1 ON fact_relationship (domain_concept_id_1 ASC); +CREATE INDEX idx_fact_relationship_id_2 ON fact_relationship (domain_concept_id_2 ASC); +CREATE INDEX idx_fact_relationship_id_3 ON fact_relationship (relationship_concept_id ASC); + + + +/************************ + +Standardized health system data + +************************/ + + + + + +/************************ + +Standardized health economics + +************************/ + +CREATE CLUSTERED INDEX idx_period_person_id ON payer_plan_period (person_id ASC); + + + + + +/************************ + +Standardized derived elements + +************************/ + + +CREATE INDEX idx_cohort_subject_id ON cohort (subject_id ASC); +CREATE INDEX idx_cohort_c_definition_id ON cohort (cohort_definition_id ASC); + +CREATE INDEX idx_ca_subject_id ON cohort_attribute (subject_id ASC); +CREATE INDEX idx_ca_definition_id ON cohort_attribute (cohort_definition_id ASC); + +CREATE CLUSTERED INDEX idx_drug_era_person_id ON drug_era (person_id ASC); +CREATE INDEX idx_drug_era_concept_id ON drug_era (drug_concept_id ASC); + +CREATE CLUSTERED INDEX idx_dose_era_person_id ON dose_era (person_id ASC); +CREATE INDEX idx_dose_era_concept_id ON dose_era (drug_concept_id ASC); + +CREATE CLUSTERED INDEX idx_condition_era_person_id ON condition_era (person_id ASC); +CREATE INDEX idx_condition_era_concept_id ON condition_era (condition_concept_id ASC); + diff --git a/DDLGeneratr/output/postgresql/OMOP CDM postgresql constraints.txt b/DDLGeneratr/output/postgresql/OMOP CDM postgresql constraints.txt new file mode 100644 index 0000000..075df5e --- /dev/null +++ b/DDLGeneratr/output/postgresql/OMOP CDM postgresql constraints.txt @@ -0,0 +1,421 @@ +/********************************************************************************* +# Copyright 2014 Observational Health Data Sciences and Informatics +# +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +********************************************************************************/ + +/************************ + + ####### # # ####### ###### ##### ###### # # ####### ##### ##### + # # ## ## # # # # # # # # ## ## # # # # # # # #### # # #### ##### ##### ## # # # ##### #### + # # # # # # # # # # # # # # # # # # # # # # # # ## # # # # # # # # ## # # # + # # # # # # # ###### # # # # # # # # ###### ##### # # # # # # #### # # # # # # # # # # #### + # # # # # # # # # # # # # # # ### # # # # # # # # # ##### ###### # # # # # # + # # # # # # # # # # # # # # # # # ### # # # # # # # ## # # # # # # # # # ## # # # + ####### # # ####### # ##### ###### # # ## ##### ### ##### ##### #### # # #### # # # # # # # # # #### + + +postgresql script to create foreign key constraints within OMOP common data model, version 5.3.0 + +last revised: 15-November-2017 + +author: Patrick Ryan, Clair Blacketer + + +*************************/ + + +/************************ +************************* +************************* +************************* + +Foreign key constraints + +************************* +************************* +************************* +************************/ + + +/************************ + +Standardized vocabulary + +************************/ + + +ALTER TABLE concept ADD CONSTRAINT fpk_concept_domain FOREIGN KEY (domain_id) REFERENCES domain (domain_id); + +ALTER TABLE concept ADD CONSTRAINT fpk_concept_class FOREIGN KEY (concept_class_id) REFERENCES concept_class (concept_class_id); + +ALTER TABLE concept ADD CONSTRAINT fpk_concept_vocabulary FOREIGN KEY (vocabulary_id) REFERENCES vocabulary (vocabulary_id); + +ALTER TABLE vocabulary ADD CONSTRAINT fpk_vocabulary_concept FOREIGN KEY (vocabulary_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE domain ADD CONSTRAINT fpk_domain_concept FOREIGN KEY (domain_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE concept_class ADD CONSTRAINT fpk_concept_class_concept FOREIGN KEY (concept_class_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE concept_relationship ADD CONSTRAINT fpk_concept_relationship_c_1 FOREIGN KEY (concept_id_1) REFERENCES concept (concept_id); + +ALTER TABLE concept_relationship ADD CONSTRAINT fpk_concept_relationship_c_2 FOREIGN KEY (concept_id_2) REFERENCES concept (concept_id); + +ALTER TABLE concept_relationship ADD CONSTRAINT fpk_concept_relationship_id FOREIGN KEY (relationship_id) REFERENCES relationship (relationship_id); + +ALTER TABLE relationship ADD CONSTRAINT fpk_relationship_concept FOREIGN KEY (relationship_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE relationship ADD CONSTRAINT fpk_relationship_reverse FOREIGN KEY (reverse_relationship_id) REFERENCES relationship (relationship_id); + +ALTER TABLE concept_synonym ADD CONSTRAINT fpk_concept_synonym_concept FOREIGN KEY (concept_id) REFERENCES concept (concept_id); + +ALTER TABLE concept_ancestor ADD CONSTRAINT fpk_concept_ancestor_concept_1 FOREIGN KEY (ancestor_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE concept_ancestor ADD CONSTRAINT fpk_concept_ancestor_concept_2 FOREIGN KEY (descendant_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE source_to_concept_map ADD CONSTRAINT fpk_source_to_concept_map_v_1 FOREIGN KEY (source_vocabulary_id) REFERENCES vocabulary (vocabulary_id); + +ALTER TABLE source_to_concept_map ADD CONSTRAINT fpk_source_to_concept_map_v_2 FOREIGN KEY (target_vocabulary_id) REFERENCES vocabulary (vocabulary_id); + +ALTER TABLE source_to_concept_map ADD CONSTRAINT fpk_source_to_concept_map_c_1 FOREIGN KEY (target_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE drug_strength ADD CONSTRAINT fpk_drug_strength_concept_1 FOREIGN KEY (drug_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE drug_strength ADD CONSTRAINT fpk_drug_strength_concept_2 FOREIGN KEY (ingredient_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE drug_strength ADD CONSTRAINT fpk_drug_strength_unit_1 FOREIGN KEY (amount_unit_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE drug_strength ADD CONSTRAINT fpk_drug_strength_unit_2 FOREIGN KEY (numerator_unit_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE drug_strength ADD CONSTRAINT fpk_drug_strength_unit_3 FOREIGN KEY (denominator_unit_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE cohort_definition ADD CONSTRAINT fpk_cohort_definition_concept FOREIGN KEY (definition_type_concept_id) REFERENCES concept (concept_id); + + +/************************** + +Standardized meta-data + +***************************/ + + + + + +/************************ + +Standardized clinical data + +************************/ + +ALTER TABLE person ADD CONSTRAINT fpk_person_gender_concept FOREIGN KEY (gender_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE person ADD CONSTRAINT fpk_person_race_concept FOREIGN KEY (race_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE person ADD CONSTRAINT fpk_person_ethnicity_concept FOREIGN KEY (ethnicity_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE person ADD CONSTRAINT fpk_person_gender_concept_s FOREIGN KEY (gender_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE person ADD CONSTRAINT fpk_person_race_concept_s FOREIGN KEY (race_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE person ADD CONSTRAINT fpk_person_ethnicity_concept_s FOREIGN KEY (ethnicity_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE person ADD CONSTRAINT fpk_person_location FOREIGN KEY (location_id) REFERENCES location (location_id); + +ALTER TABLE person ADD CONSTRAINT fpk_person_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE person ADD CONSTRAINT fpk_person_care_site FOREIGN KEY (care_site_id) REFERENCES care_site (care_site_id); + + +ALTER TABLE observation_period ADD CONSTRAINT fpk_observation_period_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE observation_period ADD CONSTRAINT fpk_observation_period_concept FOREIGN KEY (period_type_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE specimen ADD CONSTRAINT fpk_specimen_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE specimen ADD CONSTRAINT fpk_specimen_concept FOREIGN KEY (specimen_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE specimen ADD CONSTRAINT fpk_specimen_type_concept FOREIGN KEY (specimen_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE specimen ADD CONSTRAINT fpk_specimen_unit_concept FOREIGN KEY (unit_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE specimen ADD CONSTRAINT fpk_specimen_site_concept FOREIGN KEY (anatomic_site_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE specimen ADD CONSTRAINT fpk_specimen_status_concept FOREIGN KEY (disease_status_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE death ADD CONSTRAINT fpk_death_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE death ADD CONSTRAINT fpk_death_type_concept FOREIGN KEY (death_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE death ADD CONSTRAINT fpk_death_cause_concept FOREIGN KEY (cause_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE death ADD CONSTRAINT fpk_death_cause_concept_s FOREIGN KEY (cause_source_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_concept FOREIGN KEY (visit_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_type_concept FOREIGN KEY (visit_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_care_site FOREIGN KEY (care_site_id) REFERENCES care_site (care_site_id); + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_concept_s FOREIGN KEY (visit_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_admitting_s FOREIGN KEY (admitting_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_discharge FOREIGN KEY (discharge_to_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_preceding FOREIGN KEY (preceding_visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_concept FOREIGN KEY (visit_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_type_concept FOREIGN KEY (visit_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_care_site FOREIGN KEY (care_site_id) REFERENCES care_site (care_site_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_concept_s FOREIGN KEY (visit_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_admitting_s FOREIGN KEY (admitting_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_discharge FOREIGN KEY (discharge_to_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_preceding FOREIGN KEY (preceding_visit_detail_id) REFERENCES visit_detail (visit_detail_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_parent FOREIGN KEY (visit_detail_parent_id) REFERENCES visit_detail (visit_detail_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpd_v_detail_visit FOREIGN KEY (visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + + +ALTER TABLE procedure_occurrence ADD CONSTRAINT fpk_procedure_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE procedure_occurrence ADD CONSTRAINT fpk_procedure_concept FOREIGN KEY (procedure_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE procedure_occurrence ADD CONSTRAINT fpk_procedure_type_concept FOREIGN KEY (procedure_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE procedure_occurrence ADD CONSTRAINT fpk_procedure_modifier FOREIGN KEY (modifier_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE procedure_occurrence ADD CONSTRAINT fpk_procedure_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE procedure_occurrence ADD CONSTRAINT fpk_procedure_visit FOREIGN KEY (visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + +ALTER TABLE procedure_occurrence ADD CONSTRAINT fpk_procedure_concept_s FOREIGN KEY (procedure_source_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE drug_exposure ADD CONSTRAINT fpk_drug_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE drug_exposure ADD CONSTRAINT fpk_drug_concept FOREIGN KEY (drug_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE drug_exposure ADD CONSTRAINT fpk_drug_type_concept FOREIGN KEY (drug_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE drug_exposure ADD CONSTRAINT fpk_drug_route_concept FOREIGN KEY (route_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE drug_exposure ADD CONSTRAINT fpk_drug_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE drug_exposure ADD CONSTRAINT fpk_drug_visit FOREIGN KEY (visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + +ALTER TABLE drug_exposure ADD CONSTRAINT fpk_drug_concept_s FOREIGN KEY (drug_source_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE device_exposure ADD CONSTRAINT fpk_device_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE device_exposure ADD CONSTRAINT fpk_device_concept FOREIGN KEY (device_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE device_exposure ADD CONSTRAINT fpk_device_type_concept FOREIGN KEY (device_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE device_exposure ADD CONSTRAINT fpk_device_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE device_exposure ADD CONSTRAINT fpk_device_visit FOREIGN KEY (visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + +ALTER TABLE device_exposure ADD CONSTRAINT fpk_device_concept_s FOREIGN KEY (device_source_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE condition_occurrence ADD CONSTRAINT fpk_condition_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE condition_occurrence ADD CONSTRAINT fpk_condition_concept FOREIGN KEY (condition_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE condition_occurrence ADD CONSTRAINT fpk_condition_type_concept FOREIGN KEY (condition_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE condition_occurrence ADD CONSTRAINT fpk_condition_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE condition_occurrence ADD CONSTRAINT fpk_condition_visit FOREIGN KEY (visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + +ALTER TABLE condition_occurrence ADD CONSTRAINT fpk_condition_concept_s FOREIGN KEY (condition_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE condition_occurrence ADD CONSTRAINT fpk_condition_status_concept FOREIGN KEY (condition_status_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_concept FOREIGN KEY (measurement_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_type_concept FOREIGN KEY (measurement_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_operator FOREIGN KEY (operator_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_value FOREIGN KEY (value_as_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_unit FOREIGN KEY (unit_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_visit FOREIGN KEY (visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_concept_s FOREIGN KEY (measurement_source_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE note ADD CONSTRAINT fpk_note_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE note ADD CONSTRAINT fpk_note_type_concept FOREIGN KEY (note_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE note ADD CONSTRAINT fpk_note_class_concept FOREIGN KEY (note_class_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE note ADD CONSTRAINT fpk_note_encoding_concept FOREIGN KEY (encoding_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE note ADD CONSTRAINT fpk_language_concept FOREIGN KEY (language_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE note ADD CONSTRAINT fpk_note_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE note ADD CONSTRAINT fpk_note_visit FOREIGN KEY (visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + + +ALTER TABLE note_nlp ADD CONSTRAINT fpk_note_nlp_note FOREIGN KEY (note_id) REFERENCES note (note_id); + +ALTER TABLE note_nlp ADD CONSTRAINT fpk_note_nlp_section_concept FOREIGN KEY (section_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE note_nlp ADD CONSTRAINT fpk_note_nlp_concept FOREIGN KEY (note_nlp_concept_id) REFERENCES concept (concept_id); + + + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_concept FOREIGN KEY (observation_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_type_concept FOREIGN KEY (observation_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_value FOREIGN KEY (value_as_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_qualifier FOREIGN KEY (qualifier_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_unit FOREIGN KEY (unit_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_visit FOREIGN KEY (visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_concept_s FOREIGN KEY (observation_source_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE fact_relationship ADD CONSTRAINT fpk_fact_domain_1 FOREIGN KEY (domain_concept_id_1) REFERENCES concept (concept_id); + +ALTER TABLE fact_relationship ADD CONSTRAINT fpk_fact_domain_2 FOREIGN KEY (domain_concept_id_2) REFERENCES concept (concept_id); + +ALTER TABLE fact_relationship ADD CONSTRAINT fpk_fact_relationship FOREIGN KEY (relationship_concept_id) REFERENCES concept (concept_id); + + + +/************************ + +Standardized health system data + +************************/ + +ALTER TABLE care_site ADD CONSTRAINT fpk_care_site_location FOREIGN KEY (location_id) REFERENCES location (location_id); + +ALTER TABLE care_site ADD CONSTRAINT fpk_care_site_place FOREIGN KEY (place_of_service_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE provider ADD CONSTRAINT fpk_provider_specialty FOREIGN KEY (specialty_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE provider ADD CONSTRAINT fpk_provider_care_site FOREIGN KEY (care_site_id) REFERENCES care_site (care_site_id); + +ALTER TABLE provider ADD CONSTRAINT fpk_provider_gender FOREIGN KEY (gender_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE provider ADD CONSTRAINT fpk_provider_specialty_s FOREIGN KEY (specialty_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE provider ADD CONSTRAINT fpk_provider_gender_s FOREIGN KEY (gender_source_concept_id) REFERENCES concept (concept_id); + + + + +/************************ + +Standardized health economics + +************************/ + +ALTER TABLE payer_plan_period ADD CONSTRAINT fpk_payer_plan_period FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE cost ADD CONSTRAINT fpk_visit_cost_currency FOREIGN KEY (currency_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE cost ADD CONSTRAINT fpk_visit_cost_period FOREIGN KEY (payer_plan_period_id) REFERENCES payer_plan_period (payer_plan_period_id); + +ALTER TABLE cost ADD CONSTRAINT fpk_drg_concept FOREIGN KEY (drg_concept_id) REFERENCES concept (concept_id); + +/************************ + +Standardized derived elements + +************************/ + + +ALTER TABLE cohort ADD CONSTRAINT fpk_cohort_definition FOREIGN KEY (cohort_definition_id) REFERENCES cohort_definition (cohort_definition_id); + + +ALTER TABLE cohort_attribute ADD CONSTRAINT fpk_ca_cohort_definition FOREIGN KEY (cohort_definition_id) REFERENCES cohort_definition (cohort_definition_id); + +ALTER TABLE cohort_attribute ADD CONSTRAINT fpk_ca_attribute_definition FOREIGN KEY (attribute_definition_id) REFERENCES attribute_definition (attribute_definition_id); + +ALTER TABLE cohort_attribute ADD CONSTRAINT fpk_ca_value FOREIGN KEY (value_as_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE drug_era ADD CONSTRAINT fpk_drug_era_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE drug_era ADD CONSTRAINT fpk_drug_era_concept FOREIGN KEY (drug_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE dose_era ADD CONSTRAINT fpk_dose_era_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE dose_era ADD CONSTRAINT fpk_dose_era_concept FOREIGN KEY (drug_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE dose_era ADD CONSTRAINT fpk_dose_era_unit_concept FOREIGN KEY (unit_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE condition_era ADD CONSTRAINT fpk_condition_era_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE condition_era ADD CONSTRAINT fpk_condition_era_concept FOREIGN KEY (condition_concept_id) REFERENCES concept (concept_id); + + +/************************ +************************* +************************* +************************* + +Unique constraints + +************************* +************************* +************************* +************************/ + +ALTER TABLE concept_synonym ADD CONSTRAINT uq_concept_synonym UNIQUE (concept_id, concept_synonym_name, language_concept_id); diff --git a/DDLGeneratr/output/postgresql/OMOP CDM postgresql indexes.txt b/DDLGeneratr/output/postgresql/OMOP CDM postgresql indexes.txt new file mode 100644 index 0000000..9d27e1a --- /dev/null +++ b/DDLGeneratr/output/postgresql/OMOP CDM postgresql indexes.txt @@ -0,0 +1,371 @@ +/********************************************************************************* +# Copyright 2014 Observational Health Data Sciences and Informatics +# +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +********************************************************************************/ + +/************************ + + ####### # # ####### ###### ##### ###### # # ####### ##### ### + # # ## ## # # # # # # # # ## ## # # # # # # # # ##### ###### # # ###### #### + # # # # # # # # # # # # # # # # # # # # # # ## # # # # # # # # + # # # # # # # ###### # # # # # # # # ###### ##### # # # # # # ##### ## ##### #### + # # # # # # # # # # # # # # # ### # # # # # # # # ## # # + # # # # # # # # # # # # # # # # # ### # # # # ## # # # # # # # # + ####### # # ####### # ##### ###### # # ## ##### ### ##### ### # # ##### ###### # # ###### #### + + +postgresql script to create the required indexes within OMOP common data model, version 5.3 + +last revised: 14-November-2017 + +author: Patrick Ryan, Clair Blacketer + +description: These primary keys and indices are considered a minimal requirement to ensure adequate performance of analyses. + +*************************/ + + +/************************ +************************* +************************* +************************* + +Primary key constraints + +************************* +************************* +************************* +************************/ + + + +/************************ + +Standardized vocabulary + +************************/ + + + +ALTER TABLE concept ADD CONSTRAINT xpk_concept PRIMARY KEY (concept_id); + +ALTER TABLE vocabulary ADD CONSTRAINT xpk_vocabulary PRIMARY KEY (vocabulary_id); + +ALTER TABLE domain ADD CONSTRAINT xpk_domain PRIMARY KEY (domain_id); + +ALTER TABLE concept_class ADD CONSTRAINT xpk_concept_class PRIMARY KEY (concept_class_id); + +ALTER TABLE concept_relationship ADD CONSTRAINT xpk_concept_relationship PRIMARY KEY (concept_id_1,concept_id_2,relationship_id); + +ALTER TABLE relationship ADD CONSTRAINT xpk_relationship PRIMARY KEY (relationship_id); + +ALTER TABLE concept_ancestor ADD CONSTRAINT xpk_concept_ancestor PRIMARY KEY (ancestor_concept_id,descendant_concept_id); + +ALTER TABLE source_to_concept_map ADD CONSTRAINT xpk_source_to_concept_map PRIMARY KEY (source_vocabulary_id,target_concept_id,source_code,valid_end_date); + +ALTER TABLE drug_strength ADD CONSTRAINT xpk_drug_strength PRIMARY KEY (drug_concept_id, ingredient_concept_id); + +ALTER TABLE cohort_definition ADD CONSTRAINT xpk_cohort_definition PRIMARY KEY (cohort_definition_id); + +ALTER TABLE attribute_definition ADD CONSTRAINT xpk_attribute_definition PRIMARY KEY (attribute_definition_id); + + +/************************** + +Standardized meta-data + +***************************/ + + + +/************************ + +Standardized clinical data + +************************/ + + +/**PRIMARY KEY NONCLUSTERED constraints**/ + +ALTER TABLE person ADD CONSTRAINT xpk_person PRIMARY KEY ( person_id ) ; + +ALTER TABLE observation_period ADD CONSTRAINT xpk_observation_period PRIMARY KEY ( observation_period_id ) ; + +ALTER TABLE specimen ADD CONSTRAINT xpk_specimen PRIMARY KEY ( specimen_id ) ; + +ALTER TABLE death ADD CONSTRAINT xpk_death PRIMARY KEY ( person_id ) ; + +ALTER TABLE visit_occurrence ADD CONSTRAINT xpk_visit_occurrence PRIMARY KEY ( visit_occurrence_id ) ; + +ALTER TABLE visit_detail ADD CONSTRAINT xpk_visit_detail PRIMARY KEY ( visit_detail_id ) ; + +ALTER TABLE procedure_occurrence ADD CONSTRAINT xpk_procedure_occurrence PRIMARY KEY ( procedure_occurrence_id ) ; + +ALTER TABLE drug_exposure ADD CONSTRAINT xpk_drug_exposure PRIMARY KEY ( drug_exposure_id ) ; + +ALTER TABLE device_exposure ADD CONSTRAINT xpk_device_exposure PRIMARY KEY ( device_exposure_id ) ; + +ALTER TABLE condition_occurrence ADD CONSTRAINT xpk_condition_occurrence PRIMARY KEY ( condition_occurrence_id ) ; + +ALTER TABLE measurement ADD CONSTRAINT xpk_measurement PRIMARY KEY ( measurement_id ) ; + +ALTER TABLE note ADD CONSTRAINT xpk_note PRIMARY KEY ( note_id ) ; + +ALTER TABLE note_nlp ADD CONSTRAINT xpk_note_nlp PRIMARY KEY ( note_nlp_id ) ; + +ALTER TABLE observation ADD CONSTRAINT xpk_observation PRIMARY KEY ( observation_id ) ; + + + + +/************************ + +Standardized health system data + +************************/ + + +ALTER TABLE location ADD CONSTRAINT xpk_location PRIMARY KEY ( location_id ) ; + +ALTER TABLE care_site ADD CONSTRAINT xpk_care_site PRIMARY KEY ( care_site_id ) ; + +ALTER TABLE provider ADD CONSTRAINT xpk_provider PRIMARY KEY ( provider_id ) ; + + + +/************************ + +Standardized health economics + +************************/ + + +ALTER TABLE payer_plan_period ADD CONSTRAINT xpk_payer_plan_period PRIMARY KEY ( payer_plan_period_id ) ; + +ALTER TABLE cost ADD CONSTRAINT xpk_visit_cost PRIMARY KEY ( cost_id ) ; + + +/************************ + +Standardized derived elements + +************************/ + +ALTER TABLE cohort ADD CONSTRAINT xpk_cohort PRIMARY KEY ( cohort_definition_id, subject_id, cohort_start_date, cohort_end_date ) ; + +ALTER TABLE cohort_attribute ADD CONSTRAINT xpk_cohort_attribute PRIMARY KEY ( cohort_definition_id, subject_id, cohort_start_date, cohort_end_date, attribute_definition_id ) ; + +ALTER TABLE drug_era ADD CONSTRAINT xpk_drug_era PRIMARY KEY ( drug_era_id ) ; + +ALTER TABLE dose_era ADD CONSTRAINT xpk_dose_era PRIMARY KEY ( dose_era_id ) ; + +ALTER TABLE condition_era ADD CONSTRAINT xpk_condition_era PRIMARY KEY ( condition_era_id ) ; + + +/************************ +************************* +************************* +************************* + +Indices + +************************* +************************* +************************* +************************/ + +/************************ + +Standardized vocabulary + +************************/ + +CREATE UNIQUE INDEX idx_concept_concept_id ON concept (concept_id ASC); +CLUSTER concept USING idx_concept_concept_id ; +CREATE INDEX idx_concept_code ON concept (concept_code ASC); +CREATE INDEX idx_concept_vocabluary_id ON concept (vocabulary_id ASC); +CREATE INDEX idx_concept_domain_id ON concept (domain_id ASC); +CREATE INDEX idx_concept_class_id ON concept (concept_class_id ASC); + +CREATE UNIQUE INDEX idx_vocabulary_vocabulary_id ON vocabulary (vocabulary_id ASC); +CLUSTER vocabulary USING idx_vocabulary_vocabulary_id ; + +CREATE UNIQUE INDEX idx_domain_domain_id ON domain (domain_id ASC); +CLUSTER domain USING idx_domain_domain_id ; + +CREATE UNIQUE INDEX idx_concept_class_class_id ON concept_class (concept_class_id ASC); +CLUSTER concept_class USING idx_concept_class_class_id ; + +CREATE INDEX idx_concept_relationship_id_1 ON concept_relationship (concept_id_1 ASC); +CREATE INDEX idx_concept_relationship_id_2 ON concept_relationship (concept_id_2 ASC); +CREATE INDEX idx_concept_relationship_id_3 ON concept_relationship (relationship_id ASC); + +CREATE UNIQUE INDEX idx_relationship_rel_id ON relationship (relationship_id ASC); +CLUSTER relationship USING idx_relationship_rel_id ; + +CREATE INDEX idx_concept_synonym_id ON concept_synonym (concept_id ASC); +CLUSTER concept_synonym USING idx_concept_synonym_id ; + +CREATE INDEX idx_concept_ancestor_id_1 ON concept_ancestor (ancestor_concept_id ASC); +CLUSTER concept_ancestor USING idx_concept_ancestor_id_1 ; +CREATE INDEX idx_concept_ancestor_id_2 ON concept_ancestor (descendant_concept_id ASC); + +CREATE INDEX idx_source_to_concept_map_id_3 ON source_to_concept_map (target_concept_id ASC); +CLUSTER source_to_concept_map USING idx_source_to_concept_map_id_3 ; +CREATE INDEX idx_source_to_concept_map_id_1 ON source_to_concept_map (source_vocabulary_id ASC); +CREATE INDEX idx_source_to_concept_map_id_2 ON source_to_concept_map (target_vocabulary_id ASC); +CREATE INDEX idx_source_to_concept_map_code ON source_to_concept_map (source_code ASC); + +CREATE INDEX idx_drug_strength_id_1 ON drug_strength (drug_concept_id ASC); +CLUSTER drug_strength USING idx_drug_strength_id_1 ; +CREATE INDEX idx_drug_strength_id_2 ON drug_strength (ingredient_concept_id ASC); + +CREATE INDEX idx_cohort_definition_id ON cohort_definition (cohort_definition_id ASC); +CLUSTER cohort_definition USING idx_cohort_definition_id ; + +CREATE INDEX idx_attribute_definition_id ON attribute_definition (attribute_definition_id ASC); +CLUSTER attribute_definition USING idx_attribute_definition_id ; + + +/************************** + +Standardized meta-data + +***************************/ + + + + + +/************************ + +Standardized clinical data + +************************/ + +CREATE UNIQUE INDEX idx_person_id ON person (person_id ASC); +CLUSTER person USING idx_person_id ; + +CREATE INDEX idx_observation_period_id ON observation_period (person_id ASC); +CLUSTER observation_period USING idx_observation_period_id ; + +CREATE INDEX idx_specimen_person_id ON specimen (person_id ASC); +CLUSTER specimen USING idx_specimen_person_id ; +CREATE INDEX idx_specimen_concept_id ON specimen (specimen_concept_id ASC); + +CREATE INDEX idx_death_person_id ON death (person_id ASC); +CLUSTER death USING idx_death_person_id ; + +CREATE INDEX idx_visit_person_id ON visit_occurrence (person_id ASC); +CLUSTER visit_occurrence USING idx_visit_person_id ; +CREATE INDEX idx_visit_concept_id ON visit_occurrence (visit_concept_id ASC); + +CREATE INDEX idx_visit_detail_person_id ON visit_detail (person_id ASC); +CLUSTER visit_detail USING idx_visit_detail_person_id ; +CREATE INDEX idx_visit_detail_concept_id ON visit_detail (visit_detail_concept_id ASC); + +CREATE INDEX idx_procedure_person_id ON procedure_occurrence (person_id ASC); +CLUSTER procedure_occurrence USING idx_procedure_person_id ; +CREATE INDEX idx_procedure_concept_id ON procedure_occurrence (procedure_concept_id ASC); +CREATE INDEX idx_procedure_visit_id ON procedure_occurrence (visit_occurrence_id ASC); + +CREATE INDEX idx_drug_person_id ON drug_exposure (person_id ASC); +CLUSTER drug_exposure USING idx_drug_person_id ; +CREATE INDEX idx_drug_concept_id ON drug_exposure (drug_concept_id ASC); +CREATE INDEX idx_drug_visit_id ON drug_exposure (visit_occurrence_id ASC); + +CREATE INDEX idx_device_person_id ON device_exposure (person_id ASC); +CLUSTER device_exposure USING idx_device_person_id ; +CREATE INDEX idx_device_concept_id ON device_exposure (device_concept_id ASC); +CREATE INDEX idx_device_visit_id ON device_exposure (visit_occurrence_id ASC); + +CREATE INDEX idx_condition_person_id ON condition_occurrence (person_id ASC); +CLUSTER condition_occurrence USING idx_condition_person_id ; +CREATE INDEX idx_condition_concept_id ON condition_occurrence (condition_concept_id ASC); +CREATE INDEX idx_condition_visit_id ON condition_occurrence (visit_occurrence_id ASC); + +CREATE INDEX idx_measurement_person_id ON measurement (person_id ASC); +CLUSTER measurement USING idx_measurement_person_id ; +CREATE INDEX idx_measurement_concept_id ON measurement (measurement_concept_id ASC); +CREATE INDEX idx_measurement_visit_id ON measurement (visit_occurrence_id ASC); + +CREATE INDEX idx_note_person_id ON note (person_id ASC); +CLUSTER note USING idx_note_person_id ; +CREATE INDEX idx_note_concept_id ON note (note_type_concept_id ASC); +CREATE INDEX idx_note_visit_id ON note (visit_occurrence_id ASC); + +CREATE INDEX idx_note_nlp_note_id ON note_nlp (note_id ASC); +CLUSTER note_nlp USING idx_note_nlp_note_id ; +CREATE INDEX idx_note_nlp_concept_id ON note_nlp (note_nlp_concept_id ASC); + +CREATE INDEX idx_observation_person_id ON observation (person_id ASC); +CLUSTER observation USING idx_observation_person_id ; +CREATE INDEX idx_observation_concept_id ON observation (observation_concept_id ASC); +CREATE INDEX idx_observation_visit_id ON observation (visit_occurrence_id ASC); + +CREATE INDEX idx_fact_relationship_id_1 ON fact_relationship (domain_concept_id_1 ASC); +CREATE INDEX idx_fact_relationship_id_2 ON fact_relationship (domain_concept_id_2 ASC); +CREATE INDEX idx_fact_relationship_id_3 ON fact_relationship (relationship_concept_id ASC); + + + +/************************ + +Standardized health system data + +************************/ + + + + + +/************************ + +Standardized health economics + +************************/ + +CREATE INDEX idx_period_person_id ON payer_plan_period (person_id ASC); +CLUSTER payer_plan_period USING idx_period_person_id ; + + + + + +/************************ + +Standardized derived elements + +************************/ + + +CREATE INDEX idx_cohort_subject_id ON cohort (subject_id ASC); +CREATE INDEX idx_cohort_c_definition_id ON cohort (cohort_definition_id ASC); + +CREATE INDEX idx_ca_subject_id ON cohort_attribute (subject_id ASC); +CREATE INDEX idx_ca_definition_id ON cohort_attribute (cohort_definition_id ASC); + +CREATE INDEX idx_drug_era_person_id ON drug_era (person_id ASC); +CLUSTER drug_era USING idx_drug_era_person_id ; +CREATE INDEX idx_drug_era_concept_id ON drug_era (drug_concept_id ASC); + +CREATE INDEX idx_dose_era_person_id ON dose_era (person_id ASC); +CLUSTER dose_era USING idx_dose_era_person_id ; +CREATE INDEX idx_dose_era_concept_id ON dose_era (drug_concept_id ASC); + +CREATE INDEX idx_condition_era_person_id ON condition_era (person_id ASC); +CLUSTER condition_era USING idx_condition_era_person_id ; +CREATE INDEX idx_condition_era_concept_id ON condition_era (condition_concept_id ASC); + diff --git a/DDLGeneratr/output/sql server/OMOP CDM sql server constraints.txt b/DDLGeneratr/output/sql server/OMOP CDM sql server constraints.txt new file mode 100644 index 0000000..470bd94 --- /dev/null +++ b/DDLGeneratr/output/sql server/OMOP CDM sql server constraints.txt @@ -0,0 +1,421 @@ +/********************************************************************************* +# Copyright 2014 Observational Health Data Sciences and Informatics +# +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +********************************************************************************/ + +/************************ + + ####### # # ####### ###### ##### ###### # # ####### ##### ##### + # # ## ## # # # # # # # # ## ## # # # # # # # #### # # #### ##### ##### ## # # # ##### #### + # # # # # # # # # # # # # # # # # # # # # # # # ## # # # # # # # # ## # # # + # # # # # # # ###### # # # # # # # # ###### ##### # # # # # # #### # # # # # # # # # # #### + # # # # # # # # # # # # # # # ### # # # # # # # # # ##### ###### # # # # # # + # # # # # # # # # # # # # # # # # ### # # # # # # # ## # # # # # # # # # ## # # # + ####### # # ####### # ##### ###### # # ## ##### ### ##### ##### #### # # #### # # # # # # # # # #### + + +sql server script to create foreign key constraints within OMOP common data model, version 5.3.0 + +last revised: 15-November-2017 + +author: Patrick Ryan, Clair Blacketer + + +*************************/ + + +/************************ +************************* +************************* +************************* + +Foreign key constraints + +************************* +************************* +************************* +************************/ + + +/************************ + +Standardized vocabulary + +************************/ + + +ALTER TABLE concept ADD CONSTRAINT fpk_concept_domain FOREIGN KEY (domain_id) REFERENCES domain (domain_id); + +ALTER TABLE concept ADD CONSTRAINT fpk_concept_class FOREIGN KEY (concept_class_id) REFERENCES concept_class (concept_class_id); + +ALTER TABLE concept ADD CONSTRAINT fpk_concept_vocabulary FOREIGN KEY (vocabulary_id) REFERENCES vocabulary (vocabulary_id); + +ALTER TABLE vocabulary ADD CONSTRAINT fpk_vocabulary_concept FOREIGN KEY (vocabulary_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE domain ADD CONSTRAINT fpk_domain_concept FOREIGN KEY (domain_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE concept_class ADD CONSTRAINT fpk_concept_class_concept FOREIGN KEY (concept_class_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE concept_relationship ADD CONSTRAINT fpk_concept_relationship_c_1 FOREIGN KEY (concept_id_1) REFERENCES concept (concept_id); + +ALTER TABLE concept_relationship ADD CONSTRAINT fpk_concept_relationship_c_2 FOREIGN KEY (concept_id_2) REFERENCES concept (concept_id); + +ALTER TABLE concept_relationship ADD CONSTRAINT fpk_concept_relationship_id FOREIGN KEY (relationship_id) REFERENCES relationship (relationship_id); + +ALTER TABLE relationship ADD CONSTRAINT fpk_relationship_concept FOREIGN KEY (relationship_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE relationship ADD CONSTRAINT fpk_relationship_reverse FOREIGN KEY (reverse_relationship_id) REFERENCES relationship (relationship_id); + +ALTER TABLE concept_synonym ADD CONSTRAINT fpk_concept_synonym_concept FOREIGN KEY (concept_id) REFERENCES concept (concept_id); + +ALTER TABLE concept_ancestor ADD CONSTRAINT fpk_concept_ancestor_concept_1 FOREIGN KEY (ancestor_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE concept_ancestor ADD CONSTRAINT fpk_concept_ancestor_concept_2 FOREIGN KEY (descendant_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE source_to_concept_map ADD CONSTRAINT fpk_source_to_concept_map_v_1 FOREIGN KEY (source_vocabulary_id) REFERENCES vocabulary (vocabulary_id); + +ALTER TABLE source_to_concept_map ADD CONSTRAINT fpk_source_to_concept_map_v_2 FOREIGN KEY (target_vocabulary_id) REFERENCES vocabulary (vocabulary_id); + +ALTER TABLE source_to_concept_map ADD CONSTRAINT fpk_source_to_concept_map_c_1 FOREIGN KEY (target_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE drug_strength ADD CONSTRAINT fpk_drug_strength_concept_1 FOREIGN KEY (drug_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE drug_strength ADD CONSTRAINT fpk_drug_strength_concept_2 FOREIGN KEY (ingredient_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE drug_strength ADD CONSTRAINT fpk_drug_strength_unit_1 FOREIGN KEY (amount_unit_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE drug_strength ADD CONSTRAINT fpk_drug_strength_unit_2 FOREIGN KEY (numerator_unit_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE drug_strength ADD CONSTRAINT fpk_drug_strength_unit_3 FOREIGN KEY (denominator_unit_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE cohort_definition ADD CONSTRAINT fpk_cohort_definition_concept FOREIGN KEY (definition_type_concept_id) REFERENCES concept (concept_id); + + +/************************** + +Standardized meta-data + +***************************/ + + + + + +/************************ + +Standardized clinical data + +************************/ + +ALTER TABLE person ADD CONSTRAINT fpk_person_gender_concept FOREIGN KEY (gender_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE person ADD CONSTRAINT fpk_person_race_concept FOREIGN KEY (race_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE person ADD CONSTRAINT fpk_person_ethnicity_concept FOREIGN KEY (ethnicity_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE person ADD CONSTRAINT fpk_person_gender_concept_s FOREIGN KEY (gender_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE person ADD CONSTRAINT fpk_person_race_concept_s FOREIGN KEY (race_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE person ADD CONSTRAINT fpk_person_ethnicity_concept_s FOREIGN KEY (ethnicity_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE person ADD CONSTRAINT fpk_person_location FOREIGN KEY (location_id) REFERENCES location (location_id); + +ALTER TABLE person ADD CONSTRAINT fpk_person_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE person ADD CONSTRAINT fpk_person_care_site FOREIGN KEY (care_site_id) REFERENCES care_site (care_site_id); + + +ALTER TABLE observation_period ADD CONSTRAINT fpk_observation_period_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE observation_period ADD CONSTRAINT fpk_observation_period_concept FOREIGN KEY (period_type_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE specimen ADD CONSTRAINT fpk_specimen_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE specimen ADD CONSTRAINT fpk_specimen_concept FOREIGN KEY (specimen_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE specimen ADD CONSTRAINT fpk_specimen_type_concept FOREIGN KEY (specimen_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE specimen ADD CONSTRAINT fpk_specimen_unit_concept FOREIGN KEY (unit_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE specimen ADD CONSTRAINT fpk_specimen_site_concept FOREIGN KEY (anatomic_site_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE specimen ADD CONSTRAINT fpk_specimen_status_concept FOREIGN KEY (disease_status_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE death ADD CONSTRAINT fpk_death_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE death ADD CONSTRAINT fpk_death_type_concept FOREIGN KEY (death_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE death ADD CONSTRAINT fpk_death_cause_concept FOREIGN KEY (cause_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE death ADD CONSTRAINT fpk_death_cause_concept_s FOREIGN KEY (cause_source_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_concept FOREIGN KEY (visit_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_type_concept FOREIGN KEY (visit_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_care_site FOREIGN KEY (care_site_id) REFERENCES care_site (care_site_id); + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_concept_s FOREIGN KEY (visit_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_admitting_s FOREIGN KEY (admitting_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_discharge FOREIGN KEY (discharge_to_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_occurrence ADD CONSTRAINT fpk_visit_preceding FOREIGN KEY (preceding_visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_concept FOREIGN KEY (visit_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_type_concept FOREIGN KEY (visit_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_care_site FOREIGN KEY (care_site_id) REFERENCES care_site (care_site_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_concept_s FOREIGN KEY (visit_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_admitting_s FOREIGN KEY (admitting_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_discharge FOREIGN KEY (discharge_to_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_preceding FOREIGN KEY (preceding_visit_detail_id) REFERENCES visit_detail (visit_detail_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpk_v_detail_parent FOREIGN KEY (visit_detail_parent_id) REFERENCES visit_detail (visit_detail_id); + +ALTER TABLE visit_detail ADD CONSTRAINT fpd_v_detail_visit FOREIGN KEY (visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + + +ALTER TABLE procedure_occurrence ADD CONSTRAINT fpk_procedure_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE procedure_occurrence ADD CONSTRAINT fpk_procedure_concept FOREIGN KEY (procedure_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE procedure_occurrence ADD CONSTRAINT fpk_procedure_type_concept FOREIGN KEY (procedure_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE procedure_occurrence ADD CONSTRAINT fpk_procedure_modifier FOREIGN KEY (modifier_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE procedure_occurrence ADD CONSTRAINT fpk_procedure_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE procedure_occurrence ADD CONSTRAINT fpk_procedure_visit FOREIGN KEY (visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + +ALTER TABLE procedure_occurrence ADD CONSTRAINT fpk_procedure_concept_s FOREIGN KEY (procedure_source_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE drug_exposure ADD CONSTRAINT fpk_drug_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE drug_exposure ADD CONSTRAINT fpk_drug_concept FOREIGN KEY (drug_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE drug_exposure ADD CONSTRAINT fpk_drug_type_concept FOREIGN KEY (drug_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE drug_exposure ADD CONSTRAINT fpk_drug_route_concept FOREIGN KEY (route_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE drug_exposure ADD CONSTRAINT fpk_drug_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE drug_exposure ADD CONSTRAINT fpk_drug_visit FOREIGN KEY (visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + +ALTER TABLE drug_exposure ADD CONSTRAINT fpk_drug_concept_s FOREIGN KEY (drug_source_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE device_exposure ADD CONSTRAINT fpk_device_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE device_exposure ADD CONSTRAINT fpk_device_concept FOREIGN KEY (device_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE device_exposure ADD CONSTRAINT fpk_device_type_concept FOREIGN KEY (device_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE device_exposure ADD CONSTRAINT fpk_device_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE device_exposure ADD CONSTRAINT fpk_device_visit FOREIGN KEY (visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + +ALTER TABLE device_exposure ADD CONSTRAINT fpk_device_concept_s FOREIGN KEY (device_source_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE condition_occurrence ADD CONSTRAINT fpk_condition_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE condition_occurrence ADD CONSTRAINT fpk_condition_concept FOREIGN KEY (condition_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE condition_occurrence ADD CONSTRAINT fpk_condition_type_concept FOREIGN KEY (condition_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE condition_occurrence ADD CONSTRAINT fpk_condition_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE condition_occurrence ADD CONSTRAINT fpk_condition_visit FOREIGN KEY (visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + +ALTER TABLE condition_occurrence ADD CONSTRAINT fpk_condition_concept_s FOREIGN KEY (condition_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE condition_occurrence ADD CONSTRAINT fpk_condition_status_concept FOREIGN KEY (condition_status_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_concept FOREIGN KEY (measurement_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_type_concept FOREIGN KEY (measurement_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_operator FOREIGN KEY (operator_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_value FOREIGN KEY (value_as_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_unit FOREIGN KEY (unit_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_visit FOREIGN KEY (visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + +ALTER TABLE measurement ADD CONSTRAINT fpk_measurement_concept_s FOREIGN KEY (measurement_source_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE note ADD CONSTRAINT fpk_note_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE note ADD CONSTRAINT fpk_note_type_concept FOREIGN KEY (note_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE note ADD CONSTRAINT fpk_note_class_concept FOREIGN KEY (note_class_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE note ADD CONSTRAINT fpk_note_encoding_concept FOREIGN KEY (encoding_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE note ADD CONSTRAINT fpk_language_concept FOREIGN KEY (language_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE note ADD CONSTRAINT fpk_note_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE note ADD CONSTRAINT fpk_note_visit FOREIGN KEY (visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + + +ALTER TABLE note_nlp ADD CONSTRAINT fpk_note_nlp_note FOREIGN KEY (note_id) REFERENCES note (note_id); + +ALTER TABLE note_nlp ADD CONSTRAINT fpk_note_nlp_section_concept FOREIGN KEY (section_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE note_nlp ADD CONSTRAINT fpk_note_nlp_concept FOREIGN KEY (note_nlp_concept_id) REFERENCES concept (concept_id); + + + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_concept FOREIGN KEY (observation_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_type_concept FOREIGN KEY (observation_type_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_value FOREIGN KEY (value_as_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_qualifier FOREIGN KEY (qualifier_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_unit FOREIGN KEY (unit_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_provider FOREIGN KEY (provider_id) REFERENCES provider (provider_id); + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_visit FOREIGN KEY (visit_occurrence_id) REFERENCES visit_occurrence (visit_occurrence_id); + +ALTER TABLE observation ADD CONSTRAINT fpk_observation_concept_s FOREIGN KEY (observation_source_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE fact_relationship ADD CONSTRAINT fpk_fact_domain_1 FOREIGN KEY (domain_concept_id_1) REFERENCES concept (concept_id); + +ALTER TABLE fact_relationship ADD CONSTRAINT fpk_fact_domain_2 FOREIGN KEY (domain_concept_id_2) REFERENCES concept (concept_id); + +ALTER TABLE fact_relationship ADD CONSTRAINT fpk_fact_relationship FOREIGN KEY (relationship_concept_id) REFERENCES concept (concept_id); + + + +/************************ + +Standardized health system data + +************************/ + +ALTER TABLE care_site ADD CONSTRAINT fpk_care_site_location FOREIGN KEY (location_id) REFERENCES location (location_id); + +ALTER TABLE care_site ADD CONSTRAINT fpk_care_site_place FOREIGN KEY (place_of_service_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE provider ADD CONSTRAINT fpk_provider_specialty FOREIGN KEY (specialty_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE provider ADD CONSTRAINT fpk_provider_care_site FOREIGN KEY (care_site_id) REFERENCES care_site (care_site_id); + +ALTER TABLE provider ADD CONSTRAINT fpk_provider_gender FOREIGN KEY (gender_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE provider ADD CONSTRAINT fpk_provider_specialty_s FOREIGN KEY (specialty_source_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE provider ADD CONSTRAINT fpk_provider_gender_s FOREIGN KEY (gender_source_concept_id) REFERENCES concept (concept_id); + + + + +/************************ + +Standardized health economics + +************************/ + +ALTER TABLE payer_plan_period ADD CONSTRAINT fpk_payer_plan_period FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE cost ADD CONSTRAINT fpk_visit_cost_currency FOREIGN KEY (currency_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE cost ADD CONSTRAINT fpk_visit_cost_period FOREIGN KEY (payer_plan_period_id) REFERENCES payer_plan_period (payer_plan_period_id); + +ALTER TABLE cost ADD CONSTRAINT fpk_drg_concept FOREIGN KEY (drg_concept_id) REFERENCES concept (concept_id); + +/************************ + +Standardized derived elements + +************************/ + + +ALTER TABLE cohort ADD CONSTRAINT fpk_cohort_definition FOREIGN KEY (cohort_definition_id) REFERENCES cohort_definition (cohort_definition_id); + + +ALTER TABLE cohort_attribute ADD CONSTRAINT fpk_ca_cohort_definition FOREIGN KEY (cohort_definition_id) REFERENCES cohort_definition (cohort_definition_id); + +ALTER TABLE cohort_attribute ADD CONSTRAINT fpk_ca_attribute_definition FOREIGN KEY (attribute_definition_id) REFERENCES attribute_definition (attribute_definition_id); + +ALTER TABLE cohort_attribute ADD CONSTRAINT fpk_ca_value FOREIGN KEY (value_as_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE drug_era ADD CONSTRAINT fpk_drug_era_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE drug_era ADD CONSTRAINT fpk_drug_era_concept FOREIGN KEY (drug_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE dose_era ADD CONSTRAINT fpk_dose_era_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE dose_era ADD CONSTRAINT fpk_dose_era_concept FOREIGN KEY (drug_concept_id) REFERENCES concept (concept_id); + +ALTER TABLE dose_era ADD CONSTRAINT fpk_dose_era_unit_concept FOREIGN KEY (unit_concept_id) REFERENCES concept (concept_id); + + +ALTER TABLE condition_era ADD CONSTRAINT fpk_condition_era_person FOREIGN KEY (person_id) REFERENCES person (person_id); + +ALTER TABLE condition_era ADD CONSTRAINT fpk_condition_era_concept FOREIGN KEY (condition_concept_id) REFERENCES concept (concept_id); + + +/************************ +************************* +************************* +************************* + +Unique constraints + +************************* +************************* +************************* +************************/ + +ALTER TABLE concept_synonym ADD CONSTRAINT uq_concept_synonym UNIQUE (concept_id, concept_synonym_name, language_concept_id); diff --git a/DDLGeneratr/output/sql server/OMOP CDM sql server indexes.txt b/DDLGeneratr/output/sql server/OMOP CDM sql server indexes.txt new file mode 100644 index 0000000..8c4a798 --- /dev/null +++ b/DDLGeneratr/output/sql server/OMOP CDM sql server indexes.txt @@ -0,0 +1,342 @@ +/********************************************************************************* +# Copyright 2014 Observational Health Data Sciences and Informatics +# +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +********************************************************************************/ + +/************************ + + ####### # # ####### ###### ##### ###### # # ####### ##### ### + # # ## ## # # # # # # # # ## ## # # # # # # # # ##### ###### # # ###### #### + # # # # # # # # # # # # # # # # # # # # # # ## # # # # # # # # + # # # # # # # ###### # # # # # # # # ###### ##### # # # # # # ##### ## ##### #### + # # # # # # # # # # # # # # # ### # # # # # # # # ## # # + # # # # # # # # # # # # # # # # # ### # # # # ## # # # # # # # # + ####### # # ####### # ##### ###### # # ## ##### ### ##### ### # # ##### ###### # # ###### #### + + +sql server script to create the required indexes within OMOP common data model, version 5.3 + +last revised: 14-November-2017 + +author: Patrick Ryan, Clair Blacketer + +description: These primary keys and indices are considered a minimal requirement to ensure adequate performance of analyses. + +*************************/ + + +/************************ +************************* +************************* +************************* + +Primary key constraints + +************************* +************************* +************************* +************************/ + + + +/************************ + +Standardized vocabulary + +************************/ + + + +ALTER TABLE concept ADD CONSTRAINT xpk_concept PRIMARY KEY NONCLUSTERED (concept_id); + +ALTER TABLE vocabulary ADD CONSTRAINT xpk_vocabulary PRIMARY KEY NONCLUSTERED (vocabulary_id); + +ALTER TABLE domain ADD CONSTRAINT xpk_domain PRIMARY KEY NONCLUSTERED (domain_id); + +ALTER TABLE concept_class ADD CONSTRAINT xpk_concept_class PRIMARY KEY NONCLUSTERED (concept_class_id); + +ALTER TABLE concept_relationship ADD CONSTRAINT xpk_concept_relationship PRIMARY KEY NONCLUSTERED (concept_id_1,concept_id_2,relationship_id); + +ALTER TABLE relationship ADD CONSTRAINT xpk_relationship PRIMARY KEY NONCLUSTERED (relationship_id); + +ALTER TABLE concept_ancestor ADD CONSTRAINT xpk_concept_ancestor PRIMARY KEY NONCLUSTERED (ancestor_concept_id,descendant_concept_id); + +ALTER TABLE source_to_concept_map ADD CONSTRAINT xpk_source_to_concept_map PRIMARY KEY NONCLUSTERED (source_vocabulary_id,target_concept_id,source_code,valid_end_date); + +ALTER TABLE drug_strength ADD CONSTRAINT xpk_drug_strength PRIMARY KEY NONCLUSTERED (drug_concept_id, ingredient_concept_id); + +ALTER TABLE cohort_definition ADD CONSTRAINT xpk_cohort_definition PRIMARY KEY NONCLUSTERED (cohort_definition_id); + +ALTER TABLE attribute_definition ADD CONSTRAINT xpk_attribute_definition PRIMARY KEY NONCLUSTERED (attribute_definition_id); + + +/************************** + +Standardized meta-data + +***************************/ + + + +/************************ + +Standardized clinical data + +************************/ + + +/**PRIMARY KEY NONCLUSTERED constraints**/ + +ALTER TABLE person ADD CONSTRAINT xpk_person PRIMARY KEY NONCLUSTERED ( person_id ) ; + +ALTER TABLE observation_period ADD CONSTRAINT xpk_observation_period PRIMARY KEY NONCLUSTERED ( observation_period_id ) ; + +ALTER TABLE specimen ADD CONSTRAINT xpk_specimen PRIMARY KEY NONCLUSTERED ( specimen_id ) ; + +ALTER TABLE death ADD CONSTRAINT xpk_death PRIMARY KEY NONCLUSTERED ( person_id ) ; + +ALTER TABLE visit_occurrence ADD CONSTRAINT xpk_visit_occurrence PRIMARY KEY NONCLUSTERED ( visit_occurrence_id ) ; + +ALTER TABLE visit_detail ADD CONSTRAINT xpk_visit_detail PRIMARY KEY NONCLUSTERED ( visit_detail_id ) ; + +ALTER TABLE procedure_occurrence ADD CONSTRAINT xpk_procedure_occurrence PRIMARY KEY NONCLUSTERED ( procedure_occurrence_id ) ; + +ALTER TABLE drug_exposure ADD CONSTRAINT xpk_drug_exposure PRIMARY KEY NONCLUSTERED ( drug_exposure_id ) ; + +ALTER TABLE device_exposure ADD CONSTRAINT xpk_device_exposure PRIMARY KEY NONCLUSTERED ( device_exposure_id ) ; + +ALTER TABLE condition_occurrence ADD CONSTRAINT xpk_condition_occurrence PRIMARY KEY NONCLUSTERED ( condition_occurrence_id ) ; + +ALTER TABLE measurement ADD CONSTRAINT xpk_measurement PRIMARY KEY NONCLUSTERED ( measurement_id ) ; + +ALTER TABLE note ADD CONSTRAINT xpk_note PRIMARY KEY NONCLUSTERED ( note_id ) ; + +ALTER TABLE note_nlp ADD CONSTRAINT xpk_note_nlp PRIMARY KEY NONCLUSTERED ( note_nlp_id ) ; + +ALTER TABLE observation ADD CONSTRAINT xpk_observation PRIMARY KEY NONCLUSTERED ( observation_id ) ; + + + + +/************************ + +Standardized health system data + +************************/ + + +ALTER TABLE location ADD CONSTRAINT xpk_location PRIMARY KEY NONCLUSTERED ( location_id ) ; + +ALTER TABLE care_site ADD CONSTRAINT xpk_care_site PRIMARY KEY NONCLUSTERED ( care_site_id ) ; + +ALTER TABLE provider ADD CONSTRAINT xpk_provider PRIMARY KEY NONCLUSTERED ( provider_id ) ; + + + +/************************ + +Standardized health economics + +************************/ + + +ALTER TABLE payer_plan_period ADD CONSTRAINT xpk_payer_plan_period PRIMARY KEY NONCLUSTERED ( payer_plan_period_id ) ; + +ALTER TABLE cost ADD CONSTRAINT xpk_visit_cost PRIMARY KEY NONCLUSTERED ( cost_id ) ; + + +/************************ + +Standardized derived elements + +************************/ + +ALTER TABLE cohort ADD CONSTRAINT xpk_cohort PRIMARY KEY NONCLUSTERED ( cohort_definition_id, subject_id, cohort_start_date, cohort_end_date ) ; + +ALTER TABLE cohort_attribute ADD CONSTRAINT xpk_cohort_attribute PRIMARY KEY NONCLUSTERED ( cohort_definition_id, subject_id, cohort_start_date, cohort_end_date, attribute_definition_id ) ; + +ALTER TABLE drug_era ADD CONSTRAINT xpk_drug_era PRIMARY KEY NONCLUSTERED ( drug_era_id ) ; + +ALTER TABLE dose_era ADD CONSTRAINT xpk_dose_era PRIMARY KEY NONCLUSTERED ( dose_era_id ) ; + +ALTER TABLE condition_era ADD CONSTRAINT xpk_condition_era PRIMARY KEY NONCLUSTERED ( condition_era_id ) ; + + +/************************ +************************* +************************* +************************* + +Indices + +************************* +************************* +************************* +************************/ + +/************************ + +Standardized vocabulary + +************************/ + +CREATE UNIQUE CLUSTERED INDEX idx_concept_concept_id ON concept (concept_id ASC); +CREATE INDEX idx_concept_code ON concept (concept_code ASC); +CREATE INDEX idx_concept_vocabluary_id ON concept (vocabulary_id ASC); +CREATE INDEX idx_concept_domain_id ON concept (domain_id ASC); +CREATE INDEX idx_concept_class_id ON concept (concept_class_id ASC); + +CREATE UNIQUE CLUSTERED INDEX idx_vocabulary_vocabulary_id ON vocabulary (vocabulary_id ASC); + +CREATE UNIQUE CLUSTERED INDEX idx_domain_domain_id ON domain (domain_id ASC); + +CREATE UNIQUE CLUSTERED INDEX idx_concept_class_class_id ON concept_class (concept_class_id ASC); + +CREATE INDEX idx_concept_relationship_id_1 ON concept_relationship (concept_id_1 ASC); +CREATE INDEX idx_concept_relationship_id_2 ON concept_relationship (concept_id_2 ASC); +CREATE INDEX idx_concept_relationship_id_3 ON concept_relationship (relationship_id ASC); + +CREATE UNIQUE CLUSTERED INDEX idx_relationship_rel_id ON relationship (relationship_id ASC); + +CREATE CLUSTERED INDEX idx_concept_synonym_id ON concept_synonym (concept_id ASC); + +CREATE CLUSTERED INDEX idx_concept_ancestor_id_1 ON concept_ancestor (ancestor_concept_id ASC); +CREATE INDEX idx_concept_ancestor_id_2 ON concept_ancestor (descendant_concept_id ASC); + +CREATE CLUSTERED INDEX idx_source_to_concept_map_id_3 ON source_to_concept_map (target_concept_id ASC); +CREATE INDEX idx_source_to_concept_map_id_1 ON source_to_concept_map (source_vocabulary_id ASC); +CREATE INDEX idx_source_to_concept_map_id_2 ON source_to_concept_map (target_vocabulary_id ASC); +CREATE INDEX idx_source_to_concept_map_code ON source_to_concept_map (source_code ASC); + +CREATE CLUSTERED INDEX idx_drug_strength_id_1 ON drug_strength (drug_concept_id ASC); +CREATE INDEX idx_drug_strength_id_2 ON drug_strength (ingredient_concept_id ASC); + +CREATE CLUSTERED INDEX idx_cohort_definition_id ON cohort_definition (cohort_definition_id ASC); + +CREATE CLUSTERED INDEX idx_attribute_definition_id ON attribute_definition (attribute_definition_id ASC); + + +/************************** + +Standardized meta-data + +***************************/ + + + + + +/************************ + +Standardized clinical data + +************************/ + +CREATE UNIQUE CLUSTERED INDEX idx_person_id ON person (person_id ASC); + +CREATE CLUSTERED INDEX idx_observation_period_id ON observation_period (person_id ASC); + +CREATE CLUSTERED INDEX idx_specimen_person_id ON specimen (person_id ASC); +CREATE INDEX idx_specimen_concept_id ON specimen (specimen_concept_id ASC); + +CREATE CLUSTERED INDEX idx_death_person_id ON death (person_id ASC); + +CREATE CLUSTERED INDEX idx_visit_person_id ON visit_occurrence (person_id ASC); +CREATE INDEX idx_visit_concept_id ON visit_occurrence (visit_concept_id ASC); + +CREATE CLUSTERED INDEX idx_visit_detail_person_id ON visit_detail (person_id ASC); +CREATE INDEX idx_visit_detail_concept_id ON visit_detail (visit_detail_concept_id ASC); + +CREATE CLUSTERED INDEX idx_procedure_person_id ON procedure_occurrence (person_id ASC); +CREATE INDEX idx_procedure_concept_id ON procedure_occurrence (procedure_concept_id ASC); +CREATE INDEX idx_procedure_visit_id ON procedure_occurrence (visit_occurrence_id ASC); + +CREATE CLUSTERED INDEX idx_drug_person_id ON drug_exposure (person_id ASC); +CREATE INDEX idx_drug_concept_id ON drug_exposure (drug_concept_id ASC); +CREATE INDEX idx_drug_visit_id ON drug_exposure (visit_occurrence_id ASC); + +CREATE CLUSTERED INDEX idx_device_person_id ON device_exposure (person_id ASC); +CREATE INDEX idx_device_concept_id ON device_exposure (device_concept_id ASC); +CREATE INDEX idx_device_visit_id ON device_exposure (visit_occurrence_id ASC); + +CREATE CLUSTERED INDEX idx_condition_person_id ON condition_occurrence (person_id ASC); +CREATE INDEX idx_condition_concept_id ON condition_occurrence (condition_concept_id ASC); +CREATE INDEX idx_condition_visit_id ON condition_occurrence (visit_occurrence_id ASC); + +CREATE CLUSTERED INDEX idx_measurement_person_id ON measurement (person_id ASC); +CREATE INDEX idx_measurement_concept_id ON measurement (measurement_concept_id ASC); +CREATE INDEX idx_measurement_visit_id ON measurement (visit_occurrence_id ASC); + +CREATE CLUSTERED INDEX idx_note_person_id ON note (person_id ASC); +CREATE INDEX idx_note_concept_id ON note (note_type_concept_id ASC); +CREATE INDEX idx_note_visit_id ON note (visit_occurrence_id ASC); + +CREATE CLUSTERED INDEX idx_note_nlp_note_id ON note_nlp (note_id ASC); +CREATE INDEX idx_note_nlp_concept_id ON note_nlp (note_nlp_concept_id ASC); + +CREATE CLUSTERED INDEX idx_observation_person_id ON observation (person_id ASC); +CREATE INDEX idx_observation_concept_id ON observation (observation_concept_id ASC); +CREATE INDEX idx_observation_visit_id ON observation (visit_occurrence_id ASC); + +CREATE INDEX idx_fact_relationship_id_1 ON fact_relationship (domain_concept_id_1 ASC); +CREATE INDEX idx_fact_relationship_id_2 ON fact_relationship (domain_concept_id_2 ASC); +CREATE INDEX idx_fact_relationship_id_3 ON fact_relationship (relationship_concept_id ASC); + + + +/************************ + +Standardized health system data + +************************/ + + + + + +/************************ + +Standardized health economics + +************************/ + +CREATE CLUSTERED INDEX idx_period_person_id ON payer_plan_period (person_id ASC); + + + + + +/************************ + +Standardized derived elements + +************************/ + + +CREATE INDEX idx_cohort_subject_id ON cohort (subject_id ASC); +CREATE INDEX idx_cohort_c_definition_id ON cohort (cohort_definition_id ASC); + +CREATE INDEX idx_ca_subject_id ON cohort_attribute (subject_id ASC); +CREATE INDEX idx_ca_definition_id ON cohort_attribute (cohort_definition_id ASC); + +CREATE CLUSTERED INDEX idx_drug_era_person_id ON drug_era (person_id ASC); +CREATE INDEX idx_drug_era_concept_id ON drug_era (drug_concept_id ASC); + +CREATE CLUSTERED INDEX idx_dose_era_person_id ON dose_era (person_id ASC); +CREATE INDEX idx_dose_era_concept_id ON dose_era (drug_concept_id ASC); + +CREATE CLUSTERED INDEX idx_condition_era_person_id ON condition_era (person_id ASC); +CREATE INDEX idx_condition_era_concept_id ON condition_era (condition_concept_id ASC); + diff --git a/DDLGeneratr/reports/OMOP_CDM_PDF.Rmd b/DDLGeneratr/reports/OMOP_CDM_PDF.Rmd index 0061d2d..f4ae247 100644 --- a/DDLGeneratr/reports/OMOP_CDM_PDF.Rmd +++ b/DDLGeneratr/reports/OMOP_CDM_PDF.Rmd @@ -2,6 +2,8 @@ title: "OMOP Common Data Model Specifications" author: "Christian Reich, Patrick Ryan, Rimma Belenkaya, Karthik Natarajan and Clair Blacketer" date: "`r Sys.Date()`" +params: + mdFilesLocation:"../../Documentation/CommonDataModel_Wiki_Files" output: pdf_document: number_sections: yes @@ -10,198 +12,197 @@ linkcolor: blue --- # License - -```{r child = '../CommonDataModel_Wiki_Files/License.md'} +```{r child = paste0(params$mdFilesLocation,'/License.md')} ``` # Background -```{r child = '../CommonDataModel_Wiki_Files/Background/Background.md'} +```{r child = '@mdFilesLocation/Background/Background.md'} ``` ## The Role of the Common Data Model -```{r child = '../CommonDataModel_Wiki_Files/Background/The-Role-of-the-Common-Data-Model.md'} +```{r child = '@mdFilesLocation/Background/The-Role-of-the-Common-Data-Model.md'} ``` ## Design Principles -```{r child = '../CommonDataModel_Wiki_Files/Background/Design-Principles.md'} +```{r child = '@mdFilesLocation/Background/Design-Principles.md'} ``` ## Data Model Conventions -```{r child = '../CommonDataModel_Wiki_Files/Background/Data-Model-Conventions.md'} +```{r child = '@mdFilesLocation/Background/Data-Model-Conventions.md'} ``` # Glossary of Terms -```{r child = '../CommonDataModel_Wiki_Files/Glossary-of-Terms.md'} +```{r child = '@mdFilesLocation/Glossary-of-Terms.md'} ``` # Standardized Vocabularies -```{r child = '../CommonDataModel_Wiki_Files/StandardizedVocabularies/Standardized-Vocabularies.md'} +```{r child = '@mdFilesLocation/StandardizedVocabularies/Standardized-Vocabularies.md'} ``` ## CONCEPT -```{r child = '../CommonDataModel_Wiki_Files/StandardizedVocabularies/CONCEPT.md'} +```{r child = '@mdFilesLocation/StandardizedVocabularies/CONCEPT.md'} ``` ## VOCABULARY -```{r child = '../CommonDataModel_Wiki_Files/StandardizedVocabularies/VOCABULARY.md'} +```{r child = '@mdFilesLocation/StandardizedVocabularies/VOCABULARY.md'} ``` ## DOMAIN -```{r child = '../CommonDataModel_Wiki_Files/StandardizedVocabularies/DOMAIN.md'} +```{r child = '@mdFilesLocation/StandardizedVocabularies/DOMAIN.md'} ``` ## CONCEPT_CLASS -```{r child = '../CommonDataModel_Wiki_Files/StandardizedVocabularies/CONCEPT_CLASS.md'} +```{r child = '@mdFilesLocation/StandardizedVocabularies/CONCEPT_CLASS.md'} ``` ## CONCEPT_RELATIONSHIP -```{r child = '../CommonDataModel_Wiki_Files/StandardizedVocabularies/CONCEPT_RELATIONSHIP.md'} +```{r child = '@mdFilesLocation/StandardizedVocabularies/CONCEPT_RELATIONSHIP.md'} ``` ## RELATIONSHIP -```{r child = '../CommonDataModel_Wiki_Files/StandardizedVocabularies/RELATIONSHIP.md'} +```{r child = '@mdFilesLocation/StandardizedVocabularies/RELATIONSHIP.md'} ``` ## CONCEPT_SYNONYM -```{r child = '../CommonDataModel_Wiki_Files/StandardizedVocabularies/CONCEPT_SYNONYM.md'} +```{r child = '@mdFilesLocation/StandardizedVocabularies/CONCEPT_SYNONYM.md'} ``` ## CONCEPT_ANCESTOR -```{r child = '../CommonDataModel_Wiki_Files/StandardizedVocabularies/CONCEPT_ANCESTOR.md'} +```{r child = '@mdFilesLocation/StandardizedVocabularies/CONCEPT_ANCESTOR.md'} ``` ## SOURCE_TO_CONCEPT_MAP -```{r child = '../CommonDataModel_Wiki_Files/StandardizedVocabularies/SOURCE_TO_CONCEPT_MAP.md'} +```{r child = '@mdFilesLocation/StandardizedVocabularies/SOURCE_TO_CONCEPT_MAP.md'} ``` ## DRUG_STRENGTH -```{r child = '../CommonDataModel_Wiki_Files/StandardizedVocabularies/DRUG_STRENGTH.md'} +```{r child = '@mdFilesLocation/StandardizedVocabularies/DRUG_STRENGTH.md'} ``` ## COHORT_DEFINITION -```{r child = '../CommonDataModel_Wiki_Files/StandardizedVocabularies/COHORT_DEFINITION.md'} +```{r child = '@mdFilesLocation/StandardizedVocabularies/COHORT_DEFINITION.md'} ``` ## ATTRIBUTE_DEFINITION -```{r child = '../CommonDataModel_Wiki_Files/StandardizedVocabularies/ATTRIBUTE_DEFINITION.md'} +```{r child = '@mdFilesLocation/StandardizedVocabularies/ATTRIBUTE_DEFINITION.md'} ``` # Standardized Metadata -```{r child = '../CommonDataModel_Wiki_Files/StandardizedMetadata/Standardized-Metadata.md'} +```{r child = '@mdFilesLocation/StandardizedMetadata/Standardized-Metadata.md'} ``` ## CDM_SOURCE -```{r child = '../CommonDataModel_Wiki_Files/StandardizedMetadata/CDM_SOURCE.md'} +```{r child = '@mdFilesLocation/StandardizedMetadata/CDM_SOURCE.md'} ``` # Standardized Clinical Data Tables -```{r child = '../CommonDataModel_Wiki_Files/StandardizedclinicalDataTables/Standardized-clinical-Data-Tables.md'} +```{r child = '@mdFilesLocation/StandardizedclinicalDataTables/Standardized-clinical-Data-Tables.md'} ``` ## PERSON -```{r child = '../CommonDataModel_Wiki_Files/StandardizedclinicalDataTables/PERSON.md'} +```{r child = '@mdFilesLocation/StandardizedclinicalDataTables/PERSON.md'} ``` ## OBSERVATION_PERIOD -```{r child = '../CommonDataModel_Wiki_Files/StandardizedclinicalDataTables/OBSERVATION_PERIOD.md'} +```{r child = '@mdFilesLocation/StandardizedclinicalDataTables/OBSERVATION_PERIOD.md'} ``` ## SPECIMEN -```{r child = '../CommonDataModel_Wiki_Files/StandardizedclinicalDataTables/SPECIMEN.md'} +```{r child = '@mdFilesLocation/StandardizedclinicalDataTables/SPECIMEN.md'} ``` ## DEATH -```{r child = '../CommonDataModel_Wiki_Files/StandardizedclinicalDataTables/DEATH.md'} +```{r child = '@mdFilesLocation/StandardizedclinicalDataTables/DEATH.md'} ``` ## VISIT_OCCURRENCE -```{r child = '../CommonDataModel_Wiki_Files/StandardizedclinicalDataTables/VISIT_OCCURRENCE.md'} +```{r child = '@mdFilesLocation/StandardizedclinicalDataTables/VISIT_OCCURRENCE.md'} ``` ## PROCEDURE_OCCURRENCE -```{r child = '../CommonDataModel_Wiki_Files/StandardizedclinicalDataTables/PROCEDURE_OCCURRENCE.md'} +```{r child = '@mdFilesLocation/StandardizedclinicalDataTables/PROCEDURE_OCCURRENCE.md'} ``` ## DRUG_EXPOSURE -```{r child = '../CommonDataModel_Wiki_Files/StandardizedclinicalDataTables/DRUG_EXPOSURE.md'} +```{r child = '@mdFilesLocation/StandardizedclinicalDataTables/DRUG_EXPOSURE.md'} ``` ## DEVICE_EXPOSURE -```{r child = '../CommonDataModel_Wiki_Files/StandardizedclinicalDataTables/DEVICE_EXPOSURE.md'} +```{r child = '@mdFilesLocation/StandardizedclinicalDataTables/DEVICE_EXPOSURE.md'} ``` ## CONDITION_OCCURRENCE -```{r child = '../CommonDataModel_Wiki_Files/StandardizedclinicalDataTables/CONDITION_OCCURRENCE.md'} +```{r child = '@mdFilesLocation/StandardizedclinicalDataTables/CONDITION_OCCURRENCE.md'} ``` ## MEASUREMENT -```{r child = '../CommonDataModel_Wiki_Files/StandardizedclinicalDataTables/MEASUREMENT.md'} +```{r child = '@mdFilesLocation/StandardizedclinicalDataTables/MEASUREMENT.md'} ``` ## NOTE -```{r child = '../CommonDataModel_Wiki_Files/StandardizedclinicalDataTables/NOTE.md'} +```{r child = '@mdFilesLocation/StandardizedclinicalDataTables/NOTE.md'} ``` ## NOTE_NLP -```{r child = '../CommonDataModel_Wiki_Files/StandardizedclinicalDataTables/NOTE_NLP.md'} +```{r child = '@mdFilesLocation/StandardizedclinicalDataTables/NOTE_NLP.md'} ``` ## OBSERVATION -```{r child = '../CommonDataModel_Wiki_Files/StandardizedclinicalDataTables/OBSERVATION.md'} +```{r child = '@mdFilesLocation/StandardizedclinicalDataTables/OBSERVATION.md'} ``` ## FACT_RELATIONSHIP -```{r child = '../CommonDataModel_Wiki_Files/StandardizedclinicalDataTables/FACT_RELATIONSHIP.md'} +```{r child = '@mdFilesLocation/StandardizedclinicalDataTables/FACT_RELATIONSHIP.md'} ``` # Standardized Health System Data Tables -```{r child = '../CommonDataModel_Wiki_Files/StandardizedHealthSystemDataTables/Standardized-Health-System-Data-Tables.md'} +```{r child = '@mdFilesLocation/StandardizedHealthSystemDataTables/Standardized-Health-System-Data-Tables.md'} ``` ## LOCATION -```{r child = '../CommonDataModel_Wiki_Files/StandardizedHealthSystemDataTables/LOCATION.md'} +```{r child = '@mdFilesLocation/StandardizedHealthSystemDataTables/LOCATION.md'} ``` ## CARE_SITE -```{r child = '../CommonDataModel_Wiki_Files/StandardizedHealthSystemDataTables/CARE_SITE.md'} +```{r child = '@mdFilesLocation/StandardizedHealthSystemDataTables/CARE_SITE.md'} ``` ## PROVIDER -```{r child = '../CommonDataModel_Wiki_Files/StandardizedHealthSystemDataTables/PROVIDER.md'} +```{r child = '@mdFilesLocation/StandardizedHealthSystemDataTables/PROVIDER.md'} ``` # Standardized Health Economics Data Tables -```{r child = '../CommonDataModel_Wiki_Files/StandardizedHealthEconomicsDataTables/Standardized-Health-Economics-Data-Tables.md'} +```{r child = '@mdFilesLocation/StandardizedHealthEconomicsDataTables/Standardized-Health-Economics-Data-Tables.md'} ``` ## PAYER_PLAN_PERIOD -```{r child = '../CommonDataModel_Wiki_Files/StandardizedHealthEconomicsDataTables/PAYER_PLAN_PERIOD.md'} +```{r child = '@mdFilesLocation/StandardizedHealthEconomicsDataTables/PAYER_PLAN_PERIOD.md'} ``` ## COST -```{r child = '../CommonDataModel_Wiki_Files/StandardizedHealthEconomicsDataTables/COST.md'} +```{r child = '@mdFilesLocation/StandardizedHealthEconomicsDataTables/COST.md'} ``` # Standardized Derived Elements -```{r child = '../CommonDataModel_Wiki_Files/StandardizedDerivedElements/Standardized-Derived-Elements.md'} +```{r child = '@mdFilesLocation/StandardizedDerivedElements/Standardized-Derived-Elements.md'} ``` ## COHORT -```{r child = '../CommonDataModel_Wiki_Files/StandardizedDerivedElements/COHORT.md'} +```{r child = '@mdFilesLocation/StandardizedDerivedElements/COHORT.md'} ``` ## COHORT_ATTRIBUTE -```{r child = '../CommonDataModel_Wiki_Files/StandardizedDerivedElements/COHORT_ATTRIBUTE.md'} +```{r child = '@mdFilesLocation/StandardizedDerivedElements/COHORT_ATTRIBUTE.md'} ``` ## DRUG_ERA -```{r child = '../CommonDataModel_Wiki_Files/StandardizedDerivedElements/DRUG_ERA.md'} +```{r child = '@mdFilesLocation/StandardizedDerivedElements/DRUG_ERA.md'} ``` ## DOSE_ERA -```{r child = '../CommonDataModel_Wiki_Files/StandardizedDerivedElements/DOSE_ERA.md'} +```{r child = '@mdFilesLocation/StandardizedDerivedElements/DOSE_ERA.md'} ``` ## CONDITION_ERA -```{r child = '../CommonDataModel_Wiki_Files/StandardizedDerivedElements/CONDITION_ERA.md'} +```{r child = '@mdFilesLocation/StandardizedDerivedElements/CONDITION_ERA.md'} ``` diff --git a/DDLGeneratr/reports/OMOP_CDM_v5_3.pdf b/DDLGeneratr/reports/OMOP_CDM_v5_3.pdf index 9161315..6e9bfdc 100644 --- a/DDLGeneratr/reports/OMOP_CDM_v5_3.pdf +++ b/DDLGeneratr/reports/OMOP_CDM_v5_3.pdf @@ -304,12 +304,12 @@ endobj >> stream x[]SH}_cj`x]R@fRLDeT*oCHb@ǹ{PԠv ǃӗCdkcEDm@nkѹ} gby֟wty2{N&ߐIJe/h6c8LaaKӑmؘќE\q6 舟$\}aZm<\f e &6.nu/VWi@L_*gi> stream -xZKs8WPE{nIL^GsؚL(CKP:~ gD Џζ3w;}t_ܼ~"x?섁'z2uO˫Q}5zR/*?ك?r_kBߺ)a7)%'FLS7҃\̮"QqN4-@lS;LB䄾2q"oY8]a3ry~7;JOOۮ[+4 ܛ77+iwŁŒPVk5 ȉOwcMTIJWlΠKVgo@\CnES5{gS;i -)@cvaivݵxipNC[àM]1gC,4TYΫ"=犏ӯ/!0k9%ssJR!{YQiZ5?LhmTJ(xlm*nʬM:0qrڅ8GP1PK:5he͎k7EkʎS -q7Iߐ؇^uEH[4h -rEȨ5Npr, -~Uty8gmYoNZ"|5:+R"F#)PNK`V1CCDGk^xjb -~P,EEVwLdpl !7mZkt#qNZsieje4ǻ/Df LX : $Oq4gGYh=ûEf̮uG Ќ |^;o` 8f/]dFH`\! i,dec-Q+S8kC!g$xq R] 懦,R-ݳlk\ + ^s=`2RVS# -,c 5GZJ՘)z~A>d{ymg` [2X8nG4uu6D Ѭ7y jqNXxb%:N2lv2'셃ȍ.ғ긂&E1ηifG5H5:/b!QW4Q4(LF(D:23Kx0r\ B -~~X169P\,@;F[`K5tA0R<΄=XWBZTʩ9HE -0\#<5tk(mg[D4 -Mc+Z'w|`;HE5]IHT¯(a -/Jݝ~AҖ^92>mS JNjA ]Kt7c$\Œ#j_ g +xYKs8WTE{nIL^GsؚL CKP:~ g)D Џv~<3?˻?-ƻlj]oՅOVWw ᅰbqD5uͻ)$Q7X>1bž^^/oN&#WJG]Ƙ 'ŅT,u*q +%I)$}O !nkd(&6E.}߹Y4CGuES=wYY "|zӴPUEw=/ɍ1 EƠ߲q)MJiSk.LipR5EF/eM9xj:o{/n¯Vs,p:o4ZYn"ҸdCnڦ'=p^~V oqf;?\\4Uw7usv{?t #i=7MҁI& lƂ0B~B rz0vԦG-qИ4 } +Wþ`v(s쏋d{4OaG{(6*jPXtk7ȘxX^򦷀؏/:_iȓyXA@$XD" +9L$UȩT! +I!EJ{ßroNRYf2eIg߳PAdjW:犏oCa"zs(KfER!{YQiZ5?h(qTx݂!Y4rS/I` q Uyc4e=thkʚo^;)/2=fo[!9!mأ +B;2Q?9k(8jYD)Z6(Y)pڲކصEfy5:+# \c(RX뢆> z BLCw/e(NjOF* '~ӪZIsК;ժ Wa,405c%6$H4L?ѐzw}83r-@3F3yu~̾‘"tte"Iq 35 VpRkC!g=f懦,ՊPRY5D.Ouy>0)~J~ TXUǚ#A%j”B_t X=o <30wBՅ-,q#:P"phԛ5M8 [yXc,<d'6;AWFjW=QQ{j,FPR,?(j< "O<3 +"T <9h.n.hftM0( 0h/w ]GBgB B+O-LS*Ĝy ͑Y 0 +[c>Y*LE$vX+BRGMW/+J{‹nw_rㅗvNF{`HjP~Ce:> \9  fW;M/b ?lkJ %vEV-_iÚŒjG|7n zgX:&JlI [ITGÜKl G襳buzo<W endstream endobj 268 0 obj @@ -3619,24 +3613,17 @@ endobj endobj 546 0 obj << -/Length 2517 +/Length 2527 /Filter /FlateDecode >> stream -xڽYm۶~B::qR[L'\y$*$uw(iE$^>}v -z+ (AVtkEt,/kkŵ*Jw淣 T˅χ5< _fUB_?\.g䍔E:W˛RD$yW1wMuWnpeuBoŵNuBeak`ƣa4:~qqP> h+~n ߃liJmLݜ~LDE21 Pʁ=A5ٽ %!i PSnkvݶ"Iòݗ3SL\h u_'[$Z*7лml ˖[v[Y=Wu43ɩlI"be[ޗ!۲5YJڍT>4K2*dB %Qx+@~{E7qukpJ, q^Qh%usOv ܶso,-j_aҲa,s1<~Ln?v2O(4EƎqO#@}cc;n :25;ulSڹ6 XGOĞ_NƠ!0h!S9Q=D?f IMЉR VrB8U cvi - -rFx(o+h׏fLͺrQxY; -goDنbaVhh -:H#>ÐZ\˥%yQ T7~ 2D)z9ft;|B /<"22T4-)gD: /:\Yky T@]+/= H$2[f:'y,X d*5GiCD1Å#B)bW1UPjoG6L΋Ih1jf7LՎ* eudix\y3 s"Cgha|@(C!(LἫ0*4@{޸DO%r9I,A+\[ͮzr\m4JH%xqHs -4vXY0_rriA 1n1a"< -Yã7p|/U^LHf]x Skvq[4sCpۻ˧$pi@Qͦ+m&{2m͝jϪdO eLGZ}2UOi۶A N/ٯ=iO8QNxQzaLr76#JTz=bO8n' +vA{b%b34_o +J|Qv -MLeloT.TA7h8'ջkCYzLY1 fػ?s2M"攽rY\Oj-1|C2Np vig Iŗyycg:t1j꒑ 3gZY~~L1܂EǷ䧳8\wG6? M| jF{=lax>d\̡5!\10ˁ9?Eܕ-xI$M"3G2Ny[hb%,RvZ ,dݰP5VgI dP eL';Ӕծe_Nӈ~x?7KrlEiv?"=mlO>>Gs&ͺtg..E*\כּ -akQ@:o޶: Y(("N&|woߗ:JV:ȵ[Wa[X:cN!Od1vvrsW -[}w\k! YD տP> +xڽYmo_o'HQoͶ{8m7!Ul&&ֶ|\;ʒ,{@/"r33t<Q׫_IxF B2Y4RbsoQHdE@'Jąupw̯~x+ӠE`ح"Y0_oY/gR( ?6.Rg*_wkxUq1͢ [[mgO)t,.o7- +I.}cj_/${AWk,ۙ'Sh"u:𱪍}R 3h+~ UҔ<9 0)e* +)h'cޠVy{Kz[JB$NA|OC +mCYemˇ5/-7'dǢ$hAX6϶lIUNCmwŮA55@"dBz/t/i&ēcْD(Ű-˶|(Ce iILu!|o*He&T$SDJ%V>n|= Y\+-┽!*Jd1flA([ mCޠYT5[ԶbEie?(ð-BY:'玁cgyx✢,5 %$LSto@I"-ŊͦtF+x6^ƻlWxhLhG#n'm|]GC;f&tJ"cYʗyMʾ7Tp\A:)}\yz͓'Xb/M[]'cPzCNd"RWFBDD)S+F^ްh!HsQnB1Wj.M Lu0Bc]mF[a$ɡWmxr+t?lݬ@:_= :Zr=QY2oj /XrifRA , ShՇoEM q)T~zwn~?>~}s{>fRZ:UP1A9w +GKޖc&DTG#W[^,/esقBRcx6D)?1\8*.f|%S%Pl輸fvj~1\h+\XRV{.}1q7Ø0'2t\h9rH.Ea\]=<Wljw%*T@Q"Tϒ)ļ%slܭ fHTR 7 +4'`II(iyr8B;=} K^q 9wVGw]=Kzx݁*݋ <ɬ oCZ2e6܎|دښf +ܴnӖu{tt"d. 4>aJQŞLGSzgU2‹GeR uL4UU>[mzs58q?gf(i<F9)PƋrT wm3DHZ,cYv$HbzGVB\ #rk@PZ~5X(UE~*0 72͖q;؋M\<=zA>ލp^ze"5̊~0l21}2}e4TlY|]+*acp^AE%$_{S`8◕.%R{ؚsFTUdhF^fQq:ާF $ޒp844f K!zraiኁ.qW';5;8uma7b̥(YȺa& .kΒ d!/.Nw(x)w;]˺cG*6?/ʡe0Vķ?zp;eB߬sw=p X"ƺ6&Th P$>mȲ8>E+<8`Ƃ1}a]..r-rP8wIw*~= S=PXuzl]X\cw\k! JD endstream endobj 545 0 obj @@ -3676,24 +3663,28 @@ endobj endobj 552 0 obj << -/Length 3202 +/Length 3172 /Filter /FlateDecode >> stream -xڽZ[s~ׯطVI0@#GVt0;kE{WħT%`_wo^Eo"~$*f,4\_~V[x* -,YݹID)WwG9WYeafY]\ {Eidu]*m]HekYg:X4]]+/zGd3*C)Gf}KWMk~í== _o,H#@ ^,y[}dI -ed.V;~, K?S4NEa_=hH-sO<"T -&4]-MN% B1#T(ٷ p8x4AxL3 jh2jg} b.\p+3Pݨ,J,Aњwl:gm~昷~rx<|3'YP,uJRւ]lA+Cd8̶vHϯ߽<;=|t)fsvhPDheOOnd罭#(l- /S`_M|FIPsg-QWOD'K -*b\2Lfl/vX)X!;z|kڭuzeK3lNdGl3s76"ouEY\JǨ=τOF<tK:hqCpDy@7|$*ads2dp}Uѽ3vWa)=:^U_L-e<8ܕA>zW/n T -1Ik=wz;ŭ=hp{=o;4@yiż~r{lN>D -|PO9y}9zDphSTsGR -:m\/D|~qީ5 s Hì JV3R4 Hl\'겂MG^Yk)ā(V?骩*rU]ޜyIŀ:irK7CڕdC=~V]x6kIO(xKoN@u<$xe͇nқ}$.cii}sdD+`D|[/#m[TUOhlf RPhm2ckBMxwʰ-?t „d媄=V%ӪkՅVy7b=M=D l&c!BJWq^& `1Hjo8y8B&=s!e*\FE],xp -Cb.-Y/ȱJCgrt>^<2 <\eyE4LyddPyz&5aKy{9ݼ|Kjڽ~ACQbONj6]Xvc' g"KCe/Y܁`= zk58h`UOUOX`- tC}MKZ-\T:4MҾ5o5,\e4pkSo_ƵdRjFM=,HDhsc^Iќazϻu"ѡEp{Akx<@nGrzt֦n?d"Nɥv'ajo9l8 xDpFfs?ܘD@d,R20+`O7ru79W껣 +J/tEG\ۣ_~ V*4^ڝەֱ WG=7oEJ4j$~E{[X@Fwn~ߗgjb-n>_RY rחM?GiWR |b[}Y__v;uyY7@ %R ^HM~ +B_q#PFHF<Y(d 0J)vt7?^5-n@>٬k#N4Tau"!d"Z^|`_ 2b_$LfQvWo.ͮ,8X?(\`ԡBb8*})(FR)kz A;z/Ro +n>JרTOz.őUG(0 ኯxѴ_J'Ο׉H;z"JɝL7Ղ " MWZYF/%'t%|%©Qdx'azd2[~/# kĢx"גAM +꒕$߷#,l +!w2m  (=..NO:?߼?sE&䜃ERTn@v֛?:0+?q$c8BdX'{䇾h(;Q~EE,B.nD6Z8~"XSBrY5W-U'\a2 SFd1YY+ +bF}&kcVłlGͪlj-4g=BΡfeS14 ^Aˀ>E UZzvX'xn +]֗lz똎{>r^x^wr<Д4 1{:!:)'^'6RM -b^"OCiEk`bU$_(c4ey,p lbWQ *g>;:L&a%-{Vbhы{^ED$\ +6eOj Ơ= ȓDq9 dBsHYۖMֺ( D;CR)ryc1Tد5E1"xq3-ׇO'EAŒ3׃2fK +lHF_rnO>l5f@Pآ 40FFTe/|/w- vq{)T9bG;֑a +cdיbn!]}HO+c?J +]iԙ +IWmdLG~LV~(m\{"iVQpWa"q=+;3AnL v5PWbGحЁψ;*T~(w1-bמ+* 1ڛ>_` |)o-Drdse.v1>Ud33B@E(E8͊R8ƀ3${ |e'1mAg]pq֢ Yp>ᣡ# uGSyVeTY:[yw{FgA7-Ow*Pl`,gS;g01/b/DJm64 XD`7zy<{R?X i;2he-4hZyyS0m=YHL5$ql]P'`_:5:5-7_,~ԚOlT4/JL: *Rl +j˂MjG^Yką/(Y?tT{*,g?n}>Emψ2 tmRؒ GZCw[ן>KoK&qѢm!kuAA'aKqp +:+kiln;+PUi\\!)=W8NI' `7HÂ3 & 9?6 BȤg!E  5RcevY e{L9$vX. r_.{0tOp\ǻ'OH&A,pj0>Ss{hٸth߀k2Y-6pNi8/n@{cG2 \V&=GSdP$ۣlkc>IҞa{*Z vC7Z!9!4]Nޟn>ڴHUr-fOЍ#8 xwFf:t?> endobj 110 0 obj << -/D [551 0 R /XYZ 72 158.025 null] +/D [551 0 R /XYZ 72 134.114 null] >> endobj 550 0 obj @@ -3728,24 +3719,18 @@ endobj endobj 557 0 obj << -/Length 1747 +/Length 1834 /Filter /FlateDecode >> stream -xڭXrF}WV pyެSZWv\c˓ d鹀|I^l1̥3 g 4g9~x8 -#ʜowُ/qY=8r^ ,g"elN0u93n*(4eAXD6ƽXHRw= ݋^`WǬAfYZHU_%OKU Lٶ6[{qә62^NNb #A褛o?_EI<ȋZ;W'<[ʭς@}D$]\F)R)(IS) L%IvSIj@z$0(7,O?gqj>)Gj抵Aໟ sU| .N5+Î[*f,Q@z+EpI>8K -Kehi7h-vXeUڱ8 kXJ@X?жlkٺ5ǛO66²j6/HÝ{yoB7Z}wqB!ۤpUFvR6&bhW;n: fZBp[@Pō7r7yXU$Ӆ֍]fP"c2v c4uѴLUm.gRm0fyHB2мǚ73Y2VS4$҂@'5UGi8orz)NܯQyI iP8%Ɖiuں2@hHV uHxqH% t_tYk$@X]Y6zt޶,M -aS„g\Hp# ^ 4DZܲe̲qPfZeEͩt. -EUQյjV0fШ`L#̢[C,alq;fm55'j:\%O'm]+ӕ50kdFD|Q4;ky@`0TS)MpԸ:B>?=QV*b̏}T}2IYh6Rs ^R&s>~Ǡ|;JZӄ`z_bYGR - - R@-G -ԓ2ic -bv@Xy2 i =p zZЗ|@p SG  JuON8% A4(cכ8+TiH73J]KJ/@Hc,"R Ptu;[j0d/AlkU -轢k>}gaC5OTc`6e1d6Րjlqp)2'I)E6~gRE ?479 eҡ_?|8'vkbbj۞Ȝi!PX<QlƈeޖZtԷIѬ[MCyUw& -Pe -ŷ~S± -T -ԩlʩ8B[~&>[8>Pxpy~z$~+/ +xڵYr6}W𑚉o}KeqM\[L'xRRNݯ..I/1{v;+w~:'Id^sIa, 磻Yl+6(vծ/ +0TW;Z!*6˿澷ج?^-;sN65x9=[I=ے0|z&I$v$0n +?XӃx~C,2?q #gBH.J&fEGVVy9/vRQ7C7 {'fԻ/k40fFO@'Bc9>\^xY@PW6;й6rڽTH[!^xǢ3$!ˢk|=y#ȵUo|J&5h`ζ܋l>J^-OXRHȉpN>w +x$Kojڡ4ɯ#ui"ֹ%$!_wBbB@hĂy*ȏ׹[,ISJRzAYhYdwA9`y@΂ق8fmSupT!n#IP R +w"?g90q1ZM?p;} 6ʱ4:r2 {4d:medovZlNQfb<ܹWqƱ޸j%]&Js&q +[{솆#uw6&M%M< /H$f^Ap[HF=8dް~;v$#C4uF-7@/<_#001_D*ozLeEb_SpJ u\V +p^J#z#+I2>ͬ!p6fnu+>k@> $r%A94=*K,t_tYk4qM u+kƀD^m:m !0؜uAK8V[L6 Je*055V튀[Z`;x4i*;Yu^T@_J%ˆ@-̻Ehg. lK˱d_S"e aTǻhT*#̦}&j*#O~soE_D , Y e^U_wت k6oi:\MNقoVUX@b-6Dxϯp/8 +H ku`tS)Mpԉ+<ssqzve*bÞ6׺(M-ڹVj;gsv;֪D-VbFq}Az{}O bya⬣ U$B`+r鶍!; |4Z*d\V%_5--p!\axӳ%v7?O8%4a2`MO AI7ۇYKY7_yL"#F"yv0aTilkT +轢k>uga5Ocu{b!Sllq&O$ѦlwJذrWFSw>S7u:EGӡ_PBDZ/lo]\.<]\.۶/02,LjfS7Z,cԞ{[r+؊Yo=ѧ箞۠#ʄo}S1JF:LJiIKL|#$"<O2.4}}P endstream endobj 556 0 obj @@ -3764,12 +3749,12 @@ endobj endobj 559 0 obj << -/D [556 0 R /XYZ 72 684.19 null] +/D [556 0 R /XYZ 72 666.257 null] >> endobj 555 0 obj << -/Font << /F47 271 0 R /F16 249 0 R >> +/Font << /F16 249 0 R /F47 271 0 R >> /ProcSet [ /PDF /Text ] >> endobj @@ -4151,17 +4136,15 @@ endobj endobj 606 0 obj << -/Length 2183 +/Length 2240 /Filter /FlateDecode >> stream -xYMoFW64߇6{׋ĞimԐ8_U]IS8`Dguׯ(D˓w~d^Y;Ye"q_x"HeyWmnnt7EK=* Nu~wa2/$(=>I_L&^Bp|kbHZժ*蝌ӺOd"|}Po߿BW ] 5u5/-ۖ="MwoeFuusηeA_Q^{a$ܛsgLcϗ 3gSw~1> ԛ^lcփcw5o.O GްQg! -wQ@l04ЍύzK3G/4"lP@64'̯gitx9)bfjj+*?KkUSh;ʾ_0pĊLgG>b(ዲ##?\W謏Ϯas 'w ipxi$ e^^-fάɉy"|xJ Ԙ]ock9290]-57HOȒƄX2Z,@okb~.AVE0`zxU]8Ζ'_N3/t,oO~U8My0#NAQq1&-+*ں2Dq"K+&gm#~\voNQ,pgG <c{-{ g*}kIp{_ۃfN.Mlơ=kH?GA)^)1 le+JDf )a},be$$Q/ӏ؃[ VM;@q.%% Azn(#Юxny@0 88pd䫊Ζwm@$d@A1T@t.G|CDΊCyQ:~D)c)QjVGKѱ3cVEq7afXZ ͚:n3ArghI\Lz֨n== @zv+̳ rf=bћQ6+"lq3+`b&"X엠R*;qʨvլߛ' :v[޼OEoiw|4Ely"Yg l_= +6JֺGQ(8nRvD 4G>~+Uytk:vۖa%&oy(#\xp<\oU8,0oU1ˆ Աs:Fym ʉ OYu/~H~GݽAA)I񻕪Rt%Z[E[7x\*?G$=Ut=@GzHB`VGNwBb5pg'* KceT` ^py޲FiGiu\uP4~Rn"14s>UFc>ibq/7K8op#JWf΅DZ˭io ˾;Zy mInhܛ|uku!?{ppPA`+t/PwRom[ߣ@n6†5{X KvQpfq! -Ȇu=aZY]㜇b I\ j%Ύi円z_M[Y= 2]q 2_'֝}Ƚ5.ổ.p˛V& $vخ:ۗn4bTg4xiNI-{lr'",c;y2mOx*0ΧI?nϛP!w!l 4NdB\ӅYDarrCf2OARv[;vf[ڑ +G+ⰱiG Ðmpm7^ ꚌizJ$bS(_ףԃ|ȁNG_Ë0v" Vn~*E(έ̒,Oy=AȚYG%^iZ䖑dNY[aֵ5ARʮL_iW Y=a΃8c6Ԁa#3JL5cxJ)Nnprfy2:qۏ?j݂Y(wzmRqFP漒gq=M)kiꁄRo@K]OoA}dRe˘3if0ZZ nBe/o m:')(>4u;NeI>I_>p~zv8^pLkEͮfY)-z<,}V\K_p29.BB(N;[v> * ;ilS-id>D;l ~Ҵ5:KJ`H%;""F1y|w;/|iĐFI~ D~E8P @[p8#h'fK$@º4T# ,\Čzg3؛ Na]O05 +[J Ŋ;ݭ`"A<ɯ +OCVd/rژE!Yq0x;&?: endstream endobj 605 0 obj @@ -4328,22 +4311,22 @@ endobj endobj 631 0 obj << -/Length 2390 +/Length 2376 /Filter /FlateDecode >> stream -xZs6_GB܃8;:jo:qÈ9TH.DFV_"E/"tvHeHMEy"Y 9,L90f21O]L~} ,cTzS!4 -4s5۲q\.=GLwD\yK/З -7˼ߡρ>C{{=y􎱸`\' f$֕h OvD,K? -x%,t* f+X~"acVm]Zr5kGregG@" j]V+i>nyOou[nDz xւ:y]XGr /o̴Ag佊E'vi4Ü5rD"!N <5ItM ^p'F@v,]H^n~X)c]^:|t98aB:ho덥#334 -ђla*P]w\lq tK+Me)heK>%Z}%c}%tB -'4Jk(-hm|p t?cM{[Y;{~ô4SZiLH/xA-2܁RK_e25pS!8+U\\u^DW{}y0D?8Kj O^7u)ꀨa+m+3Iɽ~R`Wwz5LwIU-G)LFRƆ(xDb"+×`T>tkYn*-| 8-@BҍnJQƺ9C%Y$%Nfi`{׿Sd ƿ"xh#WΎ>yEQ0 d:~%Oe,1C?Ʊ_d~Ѡ,=~e_d=:3oO_XG%vp6c1!ח;[:v?6v.L.H"A?p]W D{`69@;L'cFg2噄3{G9I9q4AoygıRpn$.. cd *d#q?V$։_J5K)ɡh/./~|ɀ}!("z9{vq?ɡ{XJ6]S=}P# -`c=QL3Ƹ>124B*l<'?0Wu66_ֱeb܂;]ݐ0lƭnKcN\^RiUn֌QVJnT`зY_'cKW'fmx9%J%O,dI`|߀/]ExHd 7zӭ7-G i!^/˲*[e4vM>J$WlT9z U:1g)d @~ƾ=Lwv*P ea+OKEL^eq؆`x%46esPx[#\Źٗ* N+`IQՒ@A*ҾJ>-d3YJ@ot.أ[w TRt:{g5 Ih`W0 -0 #k+ s8qϭ);k싄sw^ȣyVR }vnj5,2l -jW\o$RQW2h~|&#pH6Y=ZɜV2/mB(} i -ךݒONM˫"o7Z'ݫwiUhG//T{S&TRw:mrIPBK2N`Ox+ov?]ܕU2 2Mj7MqGsX'֪^_f多r:QD mu"CkޘgYt:HE41^; ܿMi)4 -#3t$!&˯a]Jy,zCʱ1uAXfῌFi-F -`^ +xZs6_GB!ĝJN0",sN"$ڗ:y~a`Dˣ~7=zBAƲD$:"{Ԙ4yGU=y3yK_V+DjX/n> Y w:4ˤ$.kx&bY +Q,aY$WY0] moʕR8dY;RKS8H8ih<T#ZN)u;j~uЬe>mW|jfV:>Hxyc$e"_5,ܩ̀@@,߹Tg]nvK>_sƖMkft{fU*tSmmm3-:]r`<6h쯁,Ao %TU*`&˸[+ +,W߀.8= \,\@0}yYEaBa5kPhFj{/^\z|Y8 +" wI;H!3/PGuZw5xžd,ʪn ^Y"4m o5^]% ;P[VsϤ5 /+({kK +_!,qןR#y84^V@Ĝ-q5 + +3ڙ@2&EE=<-1 (zia +:|\A^o _7W+p:d\2cI[PL UCRr.7eU`v :L5dSPx%n|9dkUc,/3WrRLDx q_oKm]"RV[c0ϲia>a:rR$iF?fHB4_л.̓R5ۈ:|*[Y4,HnѹUHz sY} endstream endobj 630 0 obj @@ -4388,21 +4371,22 @@ endobj endobj 641 0 obj << -/Length 2016 +/Length 2002 /Filter /FlateDecode >> stream xYm6BÚ)K/w(mE,2m%G3RoܥDq83oz^pA% ?WR5niA5"wE'DGfAEna35*۝n"[A Bh*zuV[Y᪥}tY1}>ֽSf#*,󪭏M ȃȰ+Qcm& 0Due#r@1B$Xb Zb~ݴM |ꟼ69WPt -4i'Z;[&A\~Om敥82񧗖is(XD۩M" -ŸzcA/8 7"AktUyCiYj0 Pͱ-8~N7MZꕂXaW%Eaf nY}cE -i'7 Wԛ62_Kvn c~$bA-d|XESe,*`49 -EQ@v$XJ蹈+G -k#X$qq qhzVA!?17uYRǼmW4 -;A#5r7y!EK DlZMoli@ϣvҊo ٴyGV{끭҈"oχ0B ti:d?Rn汯~/˒c?qٵw*-u78ʍ"m4Cl;);`"RMݴ)A_XdS^oC͓ЀF\#m{:f 0R}~8v͹ G O{~!sߘ`%I8|0 ]MSh:=;h&b!2T=Fămh'6L4n}cf" Y>oi1"[̾.ُ,L,~=7Mvg?1J7ah}vK% !pKAv61rrjPh|6X~[ (D/?B5g< /EšU?&/@'.0 +6KAA?/ae ?WR5niA5"wE'DGfAEna35*۝n"[A Bh*zuV[Y᪥}tY1}>ֽSf#*,󪭏M ȃȰ+Qcm",% + +-S6bEos.XsڄHÀf'Z;U&;\%~Om敥82QisDz +"&-Q&GvyD'XK@01>B+HCHVI%Vo%=؀w(b[u%ijԚTp]Fp pZup8-RHH;Y޴̕EĴ2XµsK 3?Gη-|XlESe,`49 +EQ@v$XJ \D@#CrpQH: hhQfF{m LdؽT9e2 ⋛Z4 bt{v +f2x -n, R On غU=",lT e"=ՉAY&3=MQ7'إc>BXݨΰ556-߸e:7UN(OO1pP}Xt_پ؊YXGzM j;524 3%mO5PZ9ͣq0/O.Ngiz:SD3׷0ԛg. z 23r0ZFnNE\6eD: A--*V(2<)`fÎj&֡STn ?s +JowU}L-F1 $2M2`Zon\pBۭtchԛ}i +I8KO/qxfa2-] *.dalG"QE +S3"uCh%@Oh00yce+8-іnmؙm RwGGD|LBȫg gUsS%~;+vhҠ2w*JG}k>n|B&c :/(+|H +#@C3x,}}fgR,96[}RŰNGQdfm0uL\jcC4}z|" l ayRp输3n5CHuhÙkm8:G>_x ɘ3.)O\TTMmpn\@ءG3$}5" mC?鵰aʠqohˌ}7i8tyNQ_fo`mMap?Ovf{R!f\lz<)=QPݣML?51\4TD,_??>ֽ`J0Ѽ{sPvęf*OKdqhՏK0 ,sĕ endstream endobj 640 0 obj @@ -4891,17 +4875,25 @@ endobj endobj 678 0 obj << -/Length 2377 +/Length 2386 /Filter /FlateDecode >> stream -xڽY[s~-jK_GdqlVv 4(>t#@ȲrY@ӗs΅(xog8p$ -MX3 - "*UDOb_g8/T)I%+JH$T0__ -ZiFAoĈH^&WD)EzMOs2e@S~RJ_Թabߣ94/a <,4{ąqr7-%m8$b"8qMnr)Ef?]ͤ -FO0^dlVzzhtRVLI*vT%^R3W.zB\@HILDD1I8 [C '#5x-Zqfqt|ϖpaȄA?}LHafI%X'K %0j4KG@qQ+X~ߓV2w'\:Dh4Z3-#l(4( ecYXcQf? j\+4վ}(n9غafк[ ;/]vtXKRyplzqmWn:XW"Z s?)-/-cY(/Z+<82Ԧ C<CK3]gC#!ܺg=k`scKEj@wD`SIRpQBch[Vtj&`6«Y1*?*$J7c.>rjWi(t̳DOS5;*P#Q#e8z"˗w7k㽙FLt60ilt'߭#"H.RX`B"̐k~NWn-%O|v=gff;;?KU O:84Ąjߋ †eVq]|֥S,2.BDj0|){㟭9R'}btZMڧ8GSpd`47B>*raF2MQZΚeqCVzt>m\vgX+7}% o'[oV'0CWXℙh iBE06Nțng& ˜#S)*ڍ҇ug.aj6Elܙۯw;7~㈔>דxD15۷泓.[ޞְѳ9B<_fx9 o_DӚ{5@,qXo h he3bֺo}ʍPx!riŒg7W:v7#_fA]Y>1I"nmX }3E7W&^M#.E4qL8N=)3}3?leG}DF2hw+oTv80',pRCtY;<-p }{n&Si[.*j\O -0K?͹O@(v汱)"+Tp[7k B1dm~g)zN٩E6èTqFSia -a6)U> 3d']F]όmH2,h8MY%TS0mn{Ȁ2DAE )l)>obJQO')I)74~tO:y,LI l_H$+ײ2_Jq%2%b(:3'Uu@rm\a#b a] PJFmJsžGX{ui= !os:qD!`0"^ TOVul{!b} .?8߉G΄Au]>n) 5LqB7=jKDĹ*N*/5{:}zppyytϽ;Cc4 mqP5at]oeCtA'SStA~x6(& ,~KE| p|bm|Q}Ϙ$3w!1Tm wcW/,KOwm< c1e0] x5"S6|HOt9&i)M.QQ/)6jqī&鑞?|o)$9j>M8%P (uJg;qM`Iǝ$-#\tƩMB}gc>DbPA5ƍVPR(ޡpXj[vn!I:b +xڽY[s~-jK_GdqlVv 48>t#@ȲrY@ӗs΅(x +og8p$ +MXo3 + "*U DOb_wg8/T)I%+JH$TX_ +^4N#bƒu OIg8Mexg4lضEU\zv7bDrLH+SJ"yVhչ2; PũV@)I/0Q Kgs +X9.ͤqk}MDxG$攒4;W"8'K4\ߴҵP!\~>IvPFEn+b')AU%/>#yeb'T4DD@ +NȾ1d z2Yעu[gYLGGqJ8~l FL@?WΤOHʉva]q$ R#&J( ?/=9j%pw¥CF5C2aζN;@qW?vl=efEF^b6*cfpQ?P8z6+>jGe= {Va&n2x%®P~wnq><%|,sBkGF֕~0vg`hevthd7!p lq`l֭,'XsT=fX"x] 1آjhn6FO0G؃4\Uڽ,e2ek,ѓ6N +DHY?(%,xoyef hEwnĈHRHa3Zϩ~-BC$(`O;ٻDOhpd]l`dr;N*M$1a)"­aO7JMdD_f C6۵.P&e`u8a&$C&@n̹,{)6ۍƙ H0HT +ʮv#{@bݙ+mf#w&΍8"%97`IjF(C<޶DaƓՈjy;כ/3SLQ,Pׂ$W76,ongKrnD +8&>Q}b +#^L4;[ڕ7*80',qJCrY;<-p }{n&Si[.*j\O +0+?'z {c;)"+TpW7lK B1dm~g)zN٩E6èTqFSia +a6)U> 3d']F]όmH2,h8LY%TS0mnzȀ2DAE )l)XcǘeOS@*NRn i[9}X.ïپjHV/fex=!aiKܯ7׾ Q>& h dJ R.ufOResHre\$aCr)a] TJF}JsGui=!os:qD}ހ)E$ߪ 67^w-lV|'V.:go_׵%}: +rn.nՅnzA(w-usM UTD_*t ({ٷXzLji:ڮcQ-k:u=cB|(ve>( trLQEIdg-t#^1>U '!bcʮUAAc߅rE& -6]C_>/=Ej·7- ƔQwE!L4N@]"=4(b4DcF>יGzu"sG6㔖@5) +fIf4!`]'w8os6 +qVqV:1~AY֬7ZCKcbdx{>R(aQv~Ct0Ҭ endstream endobj 677 0 obj @@ -5019,19 +5011,22 @@ endobj endobj 693 0 obj << -/Length 2843 +/Length 2187 /Filter /FlateDecode >> stream -xڕYn8}Wmeш֓g3dwcӃ@GXYrKrg_Unq.DT]O|go'>~"'NďX^K'ߝli<;'K_'O~("'HFO4C7+ a\"]z8!k!%,QJ]Qw÷uh(kiNm5-ɑ~4 Is1wug֞]/jd 5@҃ #12F,ƪ?P}NѡSB8Qz@;T*0rxe#l4AVx:`ș\ɘDvEtĺAX W'ґ'ҩ'RԪ'0{7,:]g<{Y^%H̭ވUQ'* iV7E-](0hjC5&㇮(- ~ xpr_ w-P%CCB^X(6Mկ z+&p[ػ/ ϧϱLz'iɀ뚕"7k& -`vgbdxȕ{4:%x5mTo:̬_1b}I8!܂I w1}\c *!W=g1c yu"QD;C)98f;^EWoȓˇ PH6uY[*5;%KHLs$ٶ52P_dG'Cs3JPT%QdDZ&Cf: |, Q@JYvL!Zt㛼&֔AG0 f[Bv׋W$;US@ȥb;83%K#DV{dYf^A{j5>h4ʨl5GC`x"Ԩhӭm&5 0#w'8jШfujMKttٙVՐq8uk*ՇD| oy>+^aBk%tQzd#&|%Ւ^t$bO"o=T}󆅪9Ljck !SjEӑl3\eohxBi" -Ͱ$S`TvqշP r|E, s7xuh]` 68;K Qǫp8:*3}}2-b8pk Wt}YlF ӕ]k8^5ھOzO]g~x@LL{2I0f NmWcs`I2HQ1jR??3n.{ܑsT#hxww:h[-'I{,|"Gơq+GvHy1pjI`t~ `7!f`O m b0cict.&/z˭4IS: rfv43lSQᥓ| - I(cSY13>&&HHL-S/7ЖEpDZwM7? pl`/oע-ej*]4RԸ1]#^!I!{?>t6gDC{-$>M¸'"架c4+OTF:N[8f1U ,p^e;O{C%P}#=;Y56P2 -Ͱ=о3kgZ3tCt0L {@ ^5CYx빣1zݲ׈,$i /^L]i ѳb]Bw5/~lF}UVoG>L8uAO')2٨0xdgs$<ȑY{,w7F<G$C贫OͻK}85ݛ82sr@:ļ(~2v:-VE.{C*SFxY]jhK4r4s!dҁV* %P6 1eEzSZSsilYqkAm)TurMq<84L&v +BEd )ekKNf_a2jE[,5ܒ ߰l OPun[ tQ w*}nnًأ +? ?/dF o٘Jp[+lȯ ԔV'c37-t& 4;3f:SC| +>-4-DQM1ْgptnC`Z~&c\{{`~J $44@)0e(vh>Maԋ:D 8+BYSÚvdM s=zA +81w.IQIñxo6׈E"o\ +؏dBJxgD,P\BD+Uhs\DK#*U:]t?ouV\"gO+fE[QUA a&)D`BOF"HAi@Qh;^g{Iz`Xz9!z2ɚuW{6{rC^SCcS.^p#ap_s|?-- SB~ Cz#j8&꒧#suҊa|M36BiEJE/anDґ](M D6-^y> >vzN-_J/#".u+m +kVwԬ*Mv!Yz + Ds9՘ +Jmӕsqۤ0t#EAՌPդHgJ@}aqV<]-}]БI͗OsLh%7g#F^+>踿[M HﲾH w&1&gJR^`lJҞ\ܵ;!.!v 8xk[1 x5QxJ~ysw/o>^]Lu`uzAZ+OtWKKflf kdzMju(ȤVڍ)'FF$r[̳**6K d!W*(G,w +Zh9CYlCs59A`Z ;W9F( u;<ϾidEb V-NzM FO 1dy$#z!u,7 uqgGʦdrHjt/>&fuEǐr :w +<7jDL`e8&Cá}_go;.Cgo?v5cShoӼe'`,loG#?Ծl=H(\}F͍J0!/{D6o]{5I/| LA-|7,\'s АC K ߮n?\74]t~ 4]~xq͔ik,LC՜0#5 uUY endstream endobj 692 0 obj @@ -5050,17 +5045,12 @@ endobj endobj 695 0 obj << -/D [692 0 R /XYZ 72 611.276 null] +/D [692 0 R /XYZ 72 276.531 null] >> endobj 170 0 obj << -/D [692 0 R /XYZ 72 445.502 null] ->> -endobj -696 0 obj -<< -/D [692 0 R /XYZ 72 287.636 null] +/D [692 0 R /XYZ 72 134.668 null] >> endobj 691 0 obj @@ -5069,229 +5059,170 @@ endobj /ProcSet [ /PDF /Text ] >> endobj -699 0 obj +698 0 obj << -/Length 1987 +/Length 2458 /Filter /FlateDecode >> stream -xڭY]s6}L":$i]L'ȠUꋯzcX!{^ 9˕o_\}9I!;^Nvwr{$%Σyp0&p>\qՏoQ^sĹ˝[Ί|d雷1!@C>;{ 65=}VA>ի5\j"5k2W ~S0Xby~4QVfO*3VnxZQURݲ$LCJ}EbOGܖCп~3^;FI(f -V 0m/wuږ3͙=62K%-Skլ2*0Vj8k^1zj~OV -O{mbנb0QE[B΢^36vƸ͕2@OƝ`fE%>rpv؍^ܺ03fG>vWM\hW4$|g Q[ggy1g3WBuѥh%S# -=,K'K-n0^d^oȇ@Za}ۀKIl9٥,L+P6mh:LIp&LlFRB 1* Z 7'!tGی[)3DF'gh I鹩k*',c@x{-oxҺvʁIYg%21MemJjMM (} _;ypUmm뒤ca2p2tL2Rk2 Fd7mp#2=B@ժj% ӧu\xYآU>PLDc3K([Gs iGdGQix\UXp -\\?PE~4 z>7Qwelt rw=cź7ڠўUGuժqB H?K>be {>)qg\s:!ۚF{ycVnNg몜PSL˭.4C-:+vm̈́J"b13 :2U"ٵpȍH޲:hfb6(IhmIn5Fh.qo9?|@!o7esRk3$JT(Y1YS 3}ieKNr $e4=@~X lcڝo}SoJND/FC w -vLvXFA B3r;>]GwzIc) ?`n#D7DsOg]hV",n#_~zrf?6z ߲\ I IVզ P{R]PiKM̜w -3!t>/EYĆ1 zsw/o +xڭY[S8~Wm*Z|۷3ekJ [8va~Ԓoqb˺[<;Ӊo~XG9F4rVO| +|81"~|bgu~q.ϗrq+c)Zoq&{)an#v <-ȍng4v*/gv#?ϯV8|yq4~[PhBRGi R]Y@Snb?&yA W%hU! ^o_U"'VW=\}/CbAV*/Q49Ց:Qy赑Q>tu%/!vVW~)8FmӬ:Ay4H:oÛgT-tO"Z\dQF#ER>-J]*\3^sEARTQFVƵj1uRuEK/32y41١XMk2YnES_ߛbUɵ򸚥$JZ%>vXO8PT+9wM^!6 Z˗}ɛB|4m\qPhEo`zdYc'Gchxʹ̇(#xZZ>J~LGGn_ԟZ,o//)܊o;.1pn5Y`hi[3@$^S0  y@{G~^$e 5_ijIo{HY)f 0zX: Á`b(f+1+&bsbx_~EɍێU(sGh9)u5W?J@j Si >-섋fEwM6-Nx2 >;nLVD M7b09xqx){('yYB L2VȠ6}yDx$`+蠡Q/cѸsSSoJ:̕]7_n7(t*FLW(zmdW0`a:>{՝aނp̀-6^Ò!ICm|TprJ@!pxadDD AgU"W }P 22HZTh0w6\^rs:^jGuә-}2jUA- HuԬ##uI\\er6jhJ:N{+>F%65z<xܛRDWa"u@te9`=Ex%l&{a9!`PjCyvhfV`+ 428+u"kvlk)k-E]i ~n⌡B#NNF^>ʗZ+ +^wwLzQ%Hݘ#sx=(eTB4wQ0Z%kgAs4v]PJ 1Qz7Α {[+TWJWL0FF4fmY .Fy^{h]3L`^+0eaťi(vbFC8.=D(MiyIvkm37߬yL.nFҘ|DУu<[--61:nW7넂_3K_VO>G8^%p*8$wh7?#0Aٜ=rzAdRFq}gYcI> endobj -700 0 obj +699 0 obj << -/D [698 0 R /XYZ 71 757.862 null] +/D [697 0 R /XYZ 71 757.862 null] >> endobj -697 0 obj +700 0 obj +<< +/D [697 0 R /XYZ 72 618.436 null] +>> +endobj +696 0 obj << /Font << /F16 249 0 R >> /ProcSet [ /PDF /Text ] >> endobj -706 0 obj +703 0 obj << -/Length 3507 +/Length 2820 /Filter /FlateDecode >> stream -xڽRFAVԒ ٲ![(1jmf1﹵./yaZ}9}&ZQ$)jš2ªoOlpe[mD1K`f@03lWw˦^mW'Iޭ\{|LXBd_huժg^}t6ciSh9zd#[(Ib()=wi4^}xf. #v!$gzz@TDe@xͲlz-Gh@/$|y -^HI(MۭOfhE35@>z:㧪˟n`|oQoCdXϲma\yBt"c-M<RڲiKrϭ\ &;~K4G;u'` Om CAl࢞mrGƱuyx$T6c!aΛ{Ԧ#鈧Zq~?(4|DohA0Ks&&4LݟSuvXbP yA -3܀D\+=< T֥#QBrB~ \'PJڮeRD”?&3PRQ~'0zZVK8lddU㯫>":HJQ 'TsM8T -?I%ͱlj$о%,MMF|?ThjE1[%IXe$ttHv]T-Ҙ*:x~iN$$s$fRP5enzk B? >Iakf <OAc`S`@) ,1Sܐlށ"ZOeB)s M_0 r59Ct޲AsT z -YRMs%}"~qT:̄X=L4jE>hmx jr.XW,& - -Xѐh8M؄2>#X -HFNHW.aӲ2KcΣ$]W5KJn";%hX5t#}miVsrqȨ"$"4C -q/-Dk3x&!l6Enii՗=Wd3KA煦@P`$(Kl 1:*ЄZ0` .n.n.OO__;=j T`22YpE]EHGnBCEq| -pWnLs5y{й{gf'7P}}!7⽖~b1t E&)h T"ƪ9!neZp0x~Uzv|U4@};JC v'$HKdKՔc8q?."G/*\jA 3tWV-&ڷɓPv]h囃Z 3K"Fڝlgk0b[ ]-9 |Dˈ1{&?sB{}OLrpϛܒYOA\9 WgfnXo0X@Ɲ -5f=I?FLi?L~OΞ+jjC( cߦ\OpXҢҭK<.qُCZoo;6<6ݶ𗔢ĭf㪖Jڊ 6wRpϰk<雓Q8E5J - HLPYj߬T|3b6!Z=M\ѿіw73n휴裡ZԜ g?l@7s;(6Xj EY ^T}ªgb>0(__;J3!O9I=BR|kY^ףLA)n,B1TFxWIs&q72|0m/vh=&o{A!7f PU6zl'=w]ѓ<ȈSXҪ0>1Ra~ Rnu6L2OMr/MXOOZ1Z=4ˇ z$ӶXBbqsVdjU@ --c3&gl$HJ^`hWCC<@4na=*GE/o+\(%B+UiE561o];d$7O 6g{rB~{xNv2^{թ콇mzkkʻ]њco]}X1@04-2 ܔ;Sa/Fר]+^Bޏ @K'Mb͉kaѓGS4]xx3'hn Ks3ZcW\$!v&9ߋ ՍuJӱjؽhqޔ+r&78ᰖ #[Ks͓3fJZt29 /Jk*5?{1ݲ>mIvUYGjI(zh]_Ѭ_ pSlbc,-| R9AڊeS 6e9akzzb)VHxCMrD'lraQm١k@QDݱ5@Ж8 4dlqx$wBjVtAW +&Z*woPa!( ̗g%0TiI])g4v cw^ߦ]v(9KiE]q'F;m!13lnnSDgο4pj9u6uלB *f/]&3Ƀk@Bu$X³+ө2yM&6QlxŜ-k}ai-ȕ!o#'I}Δ2s/` +@R~$XV.XgŞ +1hhTY?rJ0_A22~F;TXfws-j' -] f2p7O38 (& m;b(X8EƌTFZui;gWLᬰ/!I9g ~gsYHgXFE_E M[I`0 0?nLbOۭ'X9R~sxp͇fJkhbF6hhj!]j+ڑ0%+N-#b%ɭAj7~bO`(~F'pP&q,N"v`~T"doq vutd%H|vnXhbOeI[{rpO1xҹ?PAIXtb 6AĿJwDӭ]uzL6`"+NB7ttתMEԚj~jj ]f:\rk{tZU+"aOq#b5 ),:бW4׏y)X(X?#|6gӇsiJRJKdXd 6*,ݥԍNR\lC6nzHC`O9xfvs/`SsMnL(5s,l8Sp֓Hok f"@u^`<Yxp"9a]Z潯gSMh@A=tUGDPZz@PZM[Ԭ1i㴅[d=D˼'1\#p5(EW`k B [O -[^:A((€2lղ*kBa2!)h/E[4&@|Mal絍sCyNDV?Clg]z^ U]S[yO9Wj k#-Ch !JJMFfL#7O,G܆2!F ym32<6;WXxN֕@NlށV)vDX{zs&% (] Mvk@z3Z'a>M'1k~sb3nWC+F.\CǛ]@6 =E H9hF d@g[jtGZ.LH5Ɨn +"hN|h$1٪I}4R{GyiN+֑/3GkS)yK,u.^ϫ +סd۽wo2%2@@J!lhs endstream endobj -705 0 obj -<< -/Type /Page -/Contents 706 0 R -/Resources 704 0 R -/MediaBox [0 0 612 792] -/Parent 682 0 R -/Annots [ 701 0 R 702 0 R 703 0 R ] ->> -endobj -701 0 obj -<< -/Type /Annot -/Border[0 0 0]/H/I/C[0 1 1] -/Rect [246.493 182.398 264.758 193.191] -/Subtype/Link/A<> ->> -endobj 702 0 obj << -/Type /Annot -/Border[0 0 0]/H/I/C[0 1 1] -/Rect [362.509 182.398 392.842 193.191] -/Subtype/Link/A<> ->> -endobj -703 0 obj -<< -/Type /Annot -/Border[0 0 0]/H/I/C[0 1 1] -/Rect [206.495 170.443 226.781 181.236] -/Subtype/Link/A<> ->> -endobj -707 0 obj -<< -/D [705 0 R /XYZ 71 757.862 null] ->> -endobj -708 0 obj -<< -/D [705 0 R /XYZ 72 635.186 null] ->> -endobj -709 0 obj -<< -/D [705 0 R /XYZ 72 399.667 null] +/Type /Page +/Contents 703 0 R +/Resources 701 0 R +/MediaBox [0 0 612 792] +/Parent 682 0 R >> endobj 704 0 obj << -/Font << /F16 249 0 R /F28 248 0 R /F47 271 0 R >> +/D [702 0 R /XYZ 71 757.862 null] +>> +endobj +705 0 obj +<< +/D [702 0 R /XYZ 72 348.262 null] +>> +endobj +706 0 obj +<< +/D [702 0 R /XYZ 72 112.743 null] +>> +endobj +701 0 obj +<< +/Font << /F16 249 0 R /F28 248 0 R >> /ProcSet [ /PDF /Text ] >> endobj -719 0 obj -<< -/Length 2980 -/Filter /FlateDecode ->> -stream -xZKs6W-ŖxlRQCJrF7-j݃jƻ_? _՛g_^?{񓲫Ld6뻕2.R̊LTI!uޯr}3u좇uFeKàl?UE -ib}a~npg'\l/0p8MjS -ZmCv}#|9,̭Gk\o lt1q{{h >Uް#bWCr/k`,j}4xc<۲pfJ3pV^E+usyrXW;4w/uVhnV>&I ;16z1ےz! -vNS_A)έms.;cAW[nzEA92A, &F46mtoz4sY<;9<'Ps[qʉn \e͇O7}%߃uvÉvy}S4mD PxI:p6b}-Vr1+h2~ȫ֛ې\M psifD'B˚Ǯ Ø՞BohD2D ἆӂÚ9&l -i"Elp~bʩ+/oU;᰺x$0.eDpqI!ɂe˟wm$Q :fLNH4!f &ϦYȲ h2Z})jR-@ä`:heAEm"dG*!Frp"6Y!\PBA-;/BJQg銡 -B'C8 -A='k0^-Ƥf^nQBE IԚ1q8);tp8)9F'BZG7e8'EI:'`jcTFu=p]u)v]rA:]6zfyRnή):F3A01Pa'ud -!f ;ˁ4RlZ ZOsH`*q9?z 7PB;A y>RPťChaKap(i N[!3rTO,h xsse(=>rE-!>Un :5-4ELBRCa2aLH}KElz%) Ɨθn/aAi6<.q²lβ&@&"XÛ_WZؖd5W*hc 8vA\>[CcIa0Ҡ4{_[Bkm^¯@;^!xJHZ!ץ({#"~MX(|>.,7ݡW!9#% ^ ~.c릣O.޴^$H -/U3 C.`_ޕxEq1O7G } =t -^wݾA̢DJj;yw+ -Jdp{Ԫ7A>)pqy33_L2x o`wkA*D$Ṏ@ u -hxL`Աď>+ͯj;G -:>J |bMښAy$տbi]z/aQ U3*~î)۫ޯgrn!:5q͏k|I~߼㛛W^DW>|HtZHæ}/gr'k -oV@*qêg/Čy 4Yp#Z^DO2==<_ C@pE q`N?BmKJFul  hAH;uNPe9\/3_ hm @ˢ^1Ʉ - ~?Z CY̧\]B'gO]2Yط D񥈃CɺW~֫f.1y D+ ^j4Vq9d`JLCdlg6- -endstream -endobj -718 0 obj -<< -/Type /Page -/Contents 719 0 R -/Resources 717 0 R -/MediaBox [0 0 612 792] -/Parent 682 0 R -/Annots [ 710 0 R 711 0 R 712 0 R 713 0 R 714 0 R ] ->> -endobj -710 0 obj -<< -/Type /Annot -/Border[0 0 0]/H/I/C[0 1 1] -/Rect [71.004 247.799 116.859 256.654] -/Subtype/Link/A<> ->> -endobj -711 0 obj -<< -/Type /Annot -/Border[0 0 0]/H/I/C[0 1 1] -/Rect [71.004 234.469 184.798 244.699] -/Subtype/Link/A<> ->> -endobj 712 0 obj << +/Length 3672 +/Filter /FlateDecode +>> +stream +xZms_߂N)T.ZDy6}a`W.s%_va^{~huV?_' +Z\qR6ҫ_U /XEaOvuɏ']|7eWy[mWwXQF&]]u7e-.Oϔ"캪ߝ4hnO8_Ƃ vSzF:4]ٗ+Z퇺3&pyuy}/ޜ_r`3k$Ypy~qswowնjpXF/`o7׳~ibbuR*~=Lp}ͱvnպLlLp|NB/-SwjIөe&T]xch٥⤣0c^Snd Ih[BGzIvv-qTVJ/danauYu8G=pAHGx6𯨦3UTj80uNqh nx/YB;"pFۃ}S$uE\=vm3W ~o? ?Un6~m,amNss\~#oeAQR-)OPlLg0n&Lc5Gpta +IUahbsy({TȠ`0hEj94&ibP'qqN%\C?tRjЈqeX흼ܜ5V5`N +6[ tT:#3Lv?C{C9DLAw5HH0*JP65 dr)& fD t6ԸC- xlbU(_pM'R Ԭ@]F` qMy@8B Ljڦ~[I']7W3tչ!^ 'm<1?; '@DxŦoDLijqzMȋYpW:'50yv6kG 09[Oq$fv.9 3!'tԡz} )o%-KwlfYZ? aR- +*GW9C!Rr8NG{Y>8 + +֬ޖ 2xJb",O*VWiegfUQ;I|*iOeR8yo)Gי3{貰X#\qzZ98=2gzṛM:s^'a$wҡkRԡkBhFI4qCǥq˙5u tPx7b$Ű^#a8F>BM;gz3PrMt&ԝ/<2IWjƕI* HcdJʩaڍ@H\?A]gtS[4e7ypM5{T=`)s3Ei|?JY&7|6fƞ+)&,S8nL4r_H:]V|7I9cPQv~_r\{Ib\b1y>Dm@ι']MZ+ oXEQքJ4 ʭ5>7;$ +endstream +endobj +711 0 obj +<< +/Type /Page +/Contents 712 0 R +/Resources 710 0 R +/MediaBox [0 0 612 792] +/Parent 682 0 R +/Annots [ 707 0 R 708 0 R 709 0 R ] +>> +endobj +707 0 obj +<< /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] -/Rect [71.004 222.514 132.011 232.744] -/Subtype/Link/A<> +/Rect [246.493 526.642 264.758 537.434] +/Subtype/Link/A<> +>> +endobj +708 0 obj +<< +/Type /Annot +/Border[0 0 0]/H/I/C[0 1 1] +/Rect [362.509 526.642 392.842 537.434] +/Subtype/Link/A<> +>> +endobj +709 0 obj +<< +/Type /Annot +/Border[0 0 0]/H/I/C[0 1 1] +/Rect [206.495 514.687 226.781 525.479] +/Subtype/Link/A<> >> endobj 713 0 obj << -/Type /Annot -/Border[0 0 0]/H/I/C[0 1 1] -/Rect [71.004 210.559 129.728 220.789] -/Subtype/Link/A<> +/D [711 0 R /XYZ 71 757.862 null] >> endobj -714 0 obj +710 0 obj << -/Type /Annot -/Border[0 0 0]/H/I/C[0 1 1] -/Rect [71.004 198.603 161.691 208.834] -/Subtype/Link/A<> ->> -endobj -720 0 obj -<< -/D [718 0 R /XYZ 71 757.862 null] ->> -endobj -174 0 obj -<< -/D [718 0 R /XYZ 72 298.567 null] ->> -endobj -717 0 obj -<< -/Font << /F16 249 0 R /F47 271 0 R /F27 247 0 R >> +/Font << /F16 249 0 R /F47 271 0 R >> /ProcSet [ /PDF /Text ] >> endobj 723 0 obj << -/Length 446 +/Length 1004 /Filter /FlateDecode >> stream -xmSKo Wpy\d!VeMTŀ4y3@S,($P.`\ثm#!i0_Zm \kx:'UZ0m Pظ2nK qUcLbyTe H(asR,c("):UݠD$ھʡގc)yawIN&|Խ!|vLx03s瀽3^;w֝U -.̛UM)۽K<&"Sjh2j#j>I7 O ȐR{3$KZo7j93mS^ vQ/Swއ~oxJN4N&C-M9Cʽqv?!+"f2~s"!T@yV?KR?Ԙ +xڝUMo8WP$["VNE@[ET N9Tb;bpffĂ]˫,(h4(ASAeQU7"8 )x{'12vHi=c(2Rwɱ~pκM}0NTu͝k$yp-{Dz_ƻhhs5D[ is-3mػ9]e_>9e@RF2DQDTij;= 9YQ\4z8(#[SŃ4f"I/KiR.j\95A &"YE{^, +]IkfIaV Yt{`n5.渁\c[} R/,a{{老S>>F쟀͞Z9$A{^xdN{0IX{>sVGFr)(NSݵ&QN Z+2pAWK%dZ18 CG5g^@ eG<_%e1cRrDۃ큏!4yf/?`0k(i â3u:0-@ (!}4`}t:qʆ?GmGߪ>5v#t鵽+8ĸö_KDŽpTk3Nzi >QI#T0͝fcP3:7;'G>GU?2vxg?Qf{_Bd 6j״ak 7xX~Sqۭ碾-{,]tGi/~t£Kq<,ލYixL,=+μfO=nS endstream endobj 722 0 obj @@ -5300,19 +5231,97 @@ endobj /Contents 723 0 R /Resources 721 0 R /MediaBox [0 0 612 792] -/Parent 726 0 R -/Group 716 0 R +/Parent 725 0 R +/Annots [ 714 0 R 715 0 R 716 0 R 717 0 R 718 0 R ] +>> +endobj +714 0 obj +<< +/Type /Annot +/Border[0 0 0]/H/I/C[0 1 1] +/Rect [71.004 594.499 116.859 603.354] +/Subtype/Link/A<> >> endobj 715 0 obj << +/Type /Annot +/Border[0 0 0]/H/I/C[0 1 1] +/Rect [71.004 581.169 184.798 591.399] +/Subtype/Link/A<> +>> +endobj +716 0 obj +<< +/Type /Annot +/Border[0 0 0]/H/I/C[0 1 1] +/Rect [71.004 569.214 132.011 579.444] +/Subtype/Link/A<> +>> +endobj +717 0 obj +<< +/Type /Annot +/Border[0 0 0]/H/I/C[0 1 1] +/Rect [71.004 557.258 129.728 567.489] +/Subtype/Link/A<> +>> +endobj +718 0 obj +<< +/Type /Annot +/Border[0 0 0]/H/I/C[0 1 1] +/Rect [71.004 545.303 161.691 555.534] +/Subtype/Link/A<> +>> +endobj +724 0 obj +<< +/D [722 0 R /XYZ 71 757.862 null] +>> +endobj +174 0 obj +<< +/D [722 0 R /XYZ 72 645.267 null] +>> +endobj +721 0 obj +<< +/Font << /F47 271 0 R /F16 249 0 R /F27 247 0 R >> +/ProcSet [ /PDF /Text ] +>> +endobj +728 0 obj +<< +/Length 446 +/Filter /FlateDecode +>> +stream +xmSMo0+|xmc}mmlZY$UEuxSwMFH7@"SF&!*9fA!a)bZԕ¬͢Bh9t9f_YPK-Op?lf fHBJb.=EI)B\?՚ +Le+N09&J!}7EYDl?P7S=t1Edh:B~lvF`g\3;gq6eFwV ;2o%,l.%䚄ay7wM } +n܏G{VMdHLCMm".j:|cU~Z,mBL1L;cUSw_&<#5M &so8m +NOx &TKL&~B%]ԙ +endstream +endobj +727 0 obj +<< +/Type /Page +/Contents 728 0 R +/Resources 726 0 R +/MediaBox [0 0 612 792] +/Parent 725 0 R +/Group 720 0 R +>> +endobj +719 0 obj +<< /Type /XObject /Subtype /Image /Width 719 /Height 823 /BitsPerComponent 8 /ColorSpace /DeviceRGB -/SMask 727 0 R +/SMask 731 0 R /Length 161128 /Filter /FlateDecode >> @@ -5841,7 +5850,7 @@ I } RzFG`sFe4gLy%r ߕ؜5Ht:///꺻6614U$1Zv6HJgT:`0n áx;99!kf4tf˼ꧯr;t5^MJ)ŕgggGGGR\y =` d2a:P9ӿtszzzpp fy{{+7IWR4|B쑂-ICg۫ZMn4}R>4tΎ1\5\m\__:i}k-<`O6Ml͓lkr[}`E|KX.Jb3Ti# endstream endobj -727 0 obj +731 0 obj << /Type /XObject /Subtype /Image @@ -5856,32 +5865,32 @@ stream x1 g 2kj endstream endobj -716 0 obj +720 0 obj <> endobj -724 0 obj +729 0 obj << -/D [722 0 R /XYZ 71 757.862 null] +/D [727 0 R /XYZ 71 757.862 null] >> endobj 178 0 obj << -/D [722 0 R /XYZ 72 158.391 null] +/D [727 0 R /XYZ 72 158.391 null] >> endobj -725 0 obj +730 0 obj << -/D [722 0 R /XYZ 72 87.698 null] +/D [727 0 R /XYZ 72 87.698 null] >> endobj -721 0 obj +726 0 obj << /Font << /F27 247 0 R /F16 249 0 R >> -/XObject << /Im6 715 0 R >> +/XObject << /Im6 719 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -732 0 obj +736 0 obj << /Length 2090 /Filter /FlateDecode @@ -5891,20 +5900,20 @@ x 7uKK/qQ" 8]w+jk-z)4U+$Qrh !X'ĥ#"%"՟t%O~ҷ:\6'݁ufUn`Nm)5Uyp31M*Asp0Y,4\ aE0@q\1{Ll6b8~5F0R4(H=` IM0와0#Ɗ%UI%5:ܘmOj3UdcL۬@a2&d{"1-l_keW+H0/I#]>}me̜ҜZo, Wߠ0ǔd6TJ΀zgӀ 0CTYi> 4(G͌,zpPJ ;R~O3k{Mި5&IgVe@v 09HB&5S#ԡ?msS{i;DԻjtJ@ںgDFsͮґ[IXdkjΪhNF,4w]!+o[4>bhBJh#OەFb eXs' u޽Y# 6ژW9Ɗ,o+ޝWyumAO(Vߏ}mlek-bځ(tjխƸ*zGp&T@>[M@_ -iߤ*8> endobj -728 0 obj +732 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] @@ -5912,58 +5921,60 @@ endobj /Subtype/Link/A<> >> endobj -733 0 obj +737 0 obj << -/D [731 0 R /XYZ 71 757.862 null] +/D [735 0 R /XYZ 71 757.862 null] >> endobj -734 0 obj +738 0 obj << -/D [731 0 R /XYZ 72 503.679 null] +/D [735 0 R /XYZ 72 503.679 null] >> endobj 182 0 obj << -/D [731 0 R /XYZ 72 325.95 null] +/D [735 0 R /XYZ 72 325.95 null] >> endobj -735 0 obj +739 0 obj << -/D [731 0 R /XYZ 72 258.31 null] +/D [735 0 R /XYZ 72 258.31 null] >> endobj -730 0 obj +734 0 obj << /Font << /F16 249 0 R /F28 248 0 R /F47 271 0 R /F27 247 0 R >> /ProcSet [ /PDF /Text ] >> endobj -738 0 obj +742 0 obj << -/Length 2166 +/Length 2165 /Filter /FlateDecode >> stream -xڽX[s۶~#5Aysl4q3aH$*_v Je;i" wA| Q  @\dQwGA~"s|v'7AB'/'߽Y<`y;Ҋ,]jq*e8ԭ8QI\&'idYxaw}l/8\6Egsaua\($l7mjU=fƄ- -m8ML&Czyy+ҪIx}d[Q"$4e1ںm]7M;xzml_ЛOue,|O#RjgB>NMїH~uFȬmw_X7]tD&vSoAu aȈ\ma:Pު'Rh['-2魻K?Т68~kXݭ-u}`KtF'Տ'΄iJ8CY.o^\]\z}zڑQ#Ň}LeC7*m"E3fe)@-`m8jxeaV&:tN 2^"S)ulҦ2}uOz08DŦcdci| r_՞nKeoq;ȍ<2%TK&2|<A"Se4rOӯ|\AMǼh6r=S\8:{5fF`\D^]iozI 3DE+1~Pʬ"pJCe_(mo]8b8qSJv|^'Sp"4)aqFd`>\rX#攪+@0J>J#Bb1b[3ξ˟l6;W']I,h?HJg}ls~_k {e,1R)C¶öʐ% -Y#XF-[==~h8@rt*=$UZd9+mG4F9eLGh=G,6C*K̡w\F\U.zD[ޓ—<::EW!P-/Rn̏c. \CH;,;HddX9 ۚ< %95"28g}6Gy3-3b@: }?\r\7 %__]ޜ=] g  +xڽX[s۶~#5Aysl4q3aH$*_v Je;i" wA| Q  @\dQwGA~"s|v_n$2)ۓO^.O{% ygv%:XVUmT8Jq[ qpMuO&,ɲve[.~_pr<"l$&fQ.Iزo~eժ*z)͌ [nqL"3 VJ){UO/ >Rɶ bD(Hibuoۺ3M;xzml_ЛOue[8O#RjgB'Kw?:z#dpn2k; nɰ[P]%Hة22"W}[zT5Z'։zLzDgh;N_ZVwk˦h]Q~3ag˛,/W^_-޼vd|zamfЍz[o(kiaAh̭YYDnJj||?P X6,,փ]ʱڙXN DkPd*M VuђݰI]x-`%I@mvm}a1T*ewH\3pַ_D!;+y(E?|1fz=CNŻǑ䳊WZ,gŷֶ( 1XfyHe)9XA.>ˆkT9Eh+|{VV=Nѕpt@h_g,(p u=`,1$A/KK*9ykG)ن9Vozt=6ö.9HIN~< >3 3b@: }?\r\7 %__]ޜ=] g  A*ɋve[g_nV .>gN:ȬsB89YrYcyhyO{0g\Ƣu {g;WZtƦ#` ->S Ii^{Ĺ]C2n ۺqM9ThAwhFj&/3v۔N۬amb׺P,{ΠХ#ID7K]M&|/EPOtg?o{5 'cѓb)ObP,XkCHczSLfZ(41V|ry +x@ p=l Ou5H5%R!h]1 sӁ*@Ἁ5e\7C[#WtX+Fc|Ҽ4s T7zd usC +sBў~u5k +̰g qlS;}n3]VCɳ?mh>AKuG yBAe{Hzbi)%s~~lDl'~,̄Vm 5ә߼5Ur>\ ޢ7K]M&|/EPOtg?o{5 'cѓb)ObP,XkCHczSLfZ(41VC?,y endstream endobj -737 0 obj +741 0 obj << /Type /Page -/Contents 738 0 R -/Resources 736 0 R +/Contents 742 0 R +/Resources 740 0 R /MediaBox [0 0 612 792] -/Parent 726 0 R -/Annots [ 729 0 R ] +/Parent 725 0 R +/Annots [ 733 0 R ] >> endobj -729 0 obj +733 0 obj << /Type /Annot /Border[0 0 0]/H/I/C[0 1 1] @@ -5971,35 +5982,35 @@ endobj /Subtype/Link/A<> >> endobj -739 0 obj +743 0 obj << -/D [737 0 R /XYZ 71 757.862 null] +/D [741 0 R /XYZ 71 757.862 null] >> endobj -740 0 obj +744 0 obj << -/D [737 0 R /XYZ 72 491.724 null] +/D [741 0 R /XYZ 72 491.724 null] >> endobj 186 0 obj << -/D [737 0 R /XYZ 72 337.352 null] +/D [741 0 R /XYZ 72 337.352 null] >> endobj -741 0 obj +745 0 obj << -/D [737 0 R /XYZ 72 257.748 null] +/D [741 0 R /XYZ 72 257.748 null] >> endobj -736 0 obj +740 0 obj << /Font << /F16 249 0 R /F28 248 0 R /F47 271 0 R /F27 247 0 R >> /ProcSet [ /PDF /Text ] >> endobj -744 0 obj +748 0 obj << -/Length 2987 +/Length 2988 /Filter /FlateDecode >> stream @@ -6020,35 +6031,35 @@ BZz %̂(?L`jvSxR+%&9P/h=/$U((l0&"ࠜAa.Q +  aqb݉oc` G׭DuaաA%1: ~\ zhEzp|OtGVgr9u/Vb> endobj -745 0 obj +749 0 obj << -/D [743 0 R /XYZ 71 757.862 null] +/D [747 0 R /XYZ 71 757.862 null] +>> +endobj +750 0 obj +<< +/D [747 0 R /XYZ 72 455.859 null] >> endobj 746 0 obj << -/D [743 0 R /XYZ 72 455.859 null] ->> -endobj -742 0 obj -<< /Font << /F16 249 0 R /F28 248 0 R /F47 271 0 R >> /ProcSet [ /PDF /Text ] >> endobj -750 0 obj +754 0 obj << /Length 915 /Filter /FlateDecode @@ -6059,19 +6070,19 @@ j Fs4T"O׷{N4De\+B>K>ŗEWBhhLm\~_>ep[E:>Ll׷h}؎W -:LmI:؋-l}SUE}v>:_!QA6G\y14+,x, )L/*N//ȝ;uLo6 "ȥ=ve;+8Gs&w~h;t۪5ͽ Oн, U z&7Հ4{sa1jHԒ2 lpMsXuJw|9e yJVұ`W5.YN\8mdG.DaӴl*tBQ)/L> endobj -747 0 obj +751 0 obj << /Type /XObject /Subtype /Image @@ -7049,29 +7060,29 @@ hVZ牼 ^P(C 6i&xU F+pعL^1p֟;5H\^W(;Š(((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((((( endstream endobj -751 0 obj +755 0 obj << -/D [749 0 R /XYZ 71 757.862 null] +/D [753 0 R /XYZ 71 757.862 null] >> endobj 190 0 obj << -/D [749 0 R /XYZ 72 340.466 null] +/D [753 0 R /XYZ 72 340.466 null] +>> +endobj +756 0 obj +<< +/D [753 0 R /XYZ 72 282.282 null] >> endobj 752 0 obj << -/D [749 0 R /XYZ 72 282.282 null] ->> -endobj -748 0 obj -<< /Font << /F16 249 0 R /F27 247 0 R >> -/XObject << /Im7 747 0 R >> +/XObject << /Im7 751 0 R >> /ProcSet [ /PDF /Text /ImageC ] >> endobj -755 0 obj +759 0 obj << /Length 2108 /Filter /FlateDecode @@ -7084,51 +7095,51 @@ Xʲ K \tN1Z+ R3l 9xWZJ y]F1vy$fϪvW3ɤEsD #|:mwsHf2)v0¸̹<:&J.l0 ^L&D(DW!!H$vSPg u˙7;K/sU 劘(69> r\<\wKF_6ڧ^_&w\nmC-vzx'Qݓ/&+0 -(M'z]?'^#8)p[J%<bI&.RƷSnjr 'a%ieXɍ~P9_'N30O.Nq| \kaQ\ߏ+נo=<)Q*_f)ʟ kI6M?#md +(M'z]?'^#8)p[J%<bI&.RƷSnjr 'a%ieXɍ~P9_'N30O.Nq| \kaQ\ߏ+נo=<)Q*_f)ʟ kI>M?#me endstream endobj -754 0 obj -<< -/Type /Page -/Contents 755 0 R -/Resources 753 0 R -/MediaBox [0 0 612 792] -/Parent 726 0 R ->> -endobj -756 0 obj -<< -/D [754 0 R /XYZ 71 757.862 null] ->> -endobj -757 0 obj -<< -/D [754 0 R /XYZ 72 527.59 null] ->> -endobj 758 0 obj << -/D [754 0 R /XYZ 72 363.801 null] +/Type /Page +/Contents 759 0 R +/Resources 757 0 R +/MediaBox [0 0 612 792] +/Parent 767 0 R +>> +endobj +760 0 obj +<< +/D [758 0 R /XYZ 71 757.862 null] >> endobj 761 0 obj << -/D [754 0 R /XYZ 72 245.108 null] +/D [758 0 R /XYZ 72 527.59 null] >> endobj 762 0 obj << -/D [754 0 R /XYZ 72 102.503 null] ->> -endobj -753 0 obj -<< -/Font << /F16 249 0 R /F28 248 0 R /F47 271 0 R /F92 759 0 R /F89 636 0 R /F95 760 0 R >> -/ProcSet [ /PDF /Text ] +/D [758 0 R /XYZ 72 363.801 null] >> endobj 765 0 obj << +/D [758 0 R /XYZ 72 245.108 null] +>> +endobj +766 0 obj +<< +/D [758 0 R /XYZ 72 102.503 null] +>> +endobj +757 0 obj +<< +/Font << /F16 249 0 R /F28 248 0 R /F47 271 0 R /F92 763 0 R /F89 636 0 R /F95 764 0 R >> +/ProcSet [ /PDF /Text ] +>> +endobj +770 0 obj +<< /Length 1909 /Filter /FlateDecode >> @@ -7137,92 +7148,91 @@ x 'Y!8Q[՗2kq5Qfise>#8gIR՞&~jEZ˔<)jĒiFZ](#hQ;O92iGϻdopg2m3?-kp}68:`TK$i MKOiTwU4B@&U>C\oUr[5zFy)e\i/VHG!$ #{rɄ%p\:X8]%E0O3.9ٶɦcjU]XT}28Bd\e<ЎEx c%9)Y,VANJf|dܶYcu iWayX8CX?PN'ڹjպҋP}ql a|c*5w}"+yUԜ}:{yjEi2Ö3gP]7]#ݟw/8WQ:ti_ (De&{ʸ}n(}:\eH78`>P-+ /{)u}AȰKGc}:z 1Ichе+.5zW2$jmƌ2LivPP;X?*fW՚kUO=wK.OGD!! v .NxXB`uٳ{ >+/ np] 3{k :%v^pF %l-P8mhI/fX.56<#qAUctdj>Vxr`CӐ@\PY~. BQ܇\Ǡ(֟UD~(S#C K(vF8J- rDp&S> -Lէc\TEa\Xz(х0fvNn~{8ej@yfF26 Spl'm5m1}1sy&a0t,FC;W]-NQ9Rv.F}Qi:m:~tw]{0SWC[1)NNRi&9G `k޻8HJdmrO)@nat/e̋F;^qv$L>&ܔii D_;R"5(oAQwJELL = ^?U4v>2ۿ5GMj6B8_GdF^95/CF bpxX 0Wi *m Њ#B.))4D^r.;+Eb!;4u_}{} %/S.H#5Qտ5RGhGGgfU&5ރz&ܔii D_;R"5(oAQwJELL = ^?U4v>2ۿ5GMj6B8_GdF^95/CF bpxX 0Wi *m Њ#B.))4D^r.;+Eb!;4u_}{} %/S.H#5Qտ5RGhGGgfU&5ރz> endobj -766 0 obj +771 0 obj << -/D [764 0 R /XYZ 71 757.862 null] +/D [769 0 R /XYZ 71 757.862 null] >> endobj -767 0 obj +772 0 obj << -/D [764 0 R /XYZ 72 553.486 null] +/D [769 0 R /XYZ 72 553.486 null] +>> +endobj +773 0 obj +<< +/D [769 0 R /XYZ 72 291.33 null] >> endobj 768 0 obj << -/D [764 0 R /XYZ 72 291.33 null] ->> -endobj -763 0 obj -<< -/Font << /F16 249 0 R /F92 759 0 R /F89 636 0 R /F95 760 0 R >> +/Font << /F16 249 0 R /F92 763 0 R /F89 636 0 R /F95 764 0 R >> /ProcSet [ /PDF /Text ] >> endobj -772 0 obj +776 0 obj << /Length 2295 /Filter /FlateDecode >> stream -xڕXr8}WmM-׭(qVT+QWSf3s>lHSY -HZr# 'd8GGvyy l²]mKQk 5coنXiGCVgj;=x|v}g1^n=#X yq -Ԋ@)&FϏKmGvؼzP5Dwwoq|Uͣq) -з>qLi{eTW\81 csVH'^MrE.M]]w/oFM-?p?=z?Ss ~Y+(qUO3&܋3Flj:B;H43^ "u|4hA.iXZNMɥm_fl:^ XK %f9 ,1f#Rj5;CHrMEOL{1֔ΞF 1(818 x9K?DIC' ?\_}\]^_/oD4) PGMM]N65}.[N͆(hD)&iQ;n'K=o {CWF&$C]o6)0ϝʊ3%tч.:z<sVdڦnf- `xRe+)2 }auQh@8g0"0 AI{8gFˁQfrfRdNN -Lğl`sD@\V,?flEI-8/>td M ^:k5όP_~0pByUUӒ._Cjt* Ք%67۶^5DAuC ;/'^ -F8IrV}ap d),LKAFQ 3{i442 8'9cmGo4`o=#q(h᫨{:AZB:f.kTTV(\ta !΃2WF4T6J r1aM]Ft\h0Jo`f :!2x xҧEZLƂYd)&3DOKh|c޴r@7׋f+7ntSrtHJZ]5VYl~{ʄjT&a ;Q%F\2yfRԘyt3ִr 7Ku(i/ I`j"l;sJ]0BmGV:$.a܋OՂ,=(4N؝˙#| "?c-% Γx3A)Q;-QQC$O=e>ܕr7=ܵ1(q]d|cXgZ#md C״>| Kޤ>t&X`㬱yxz50$pLQ4Ƞn>B@ !ia"rm2/c=' ƺV((N35E!V_VzZl1S}ioO,1yqb614WmnnC5upT÷2fulHiX&ȽY]_9dYC'S  Yv[V4dS\}Pu0x[R92D%~G@t'u@cN?:'MEsķiU aNXCo)YG0Z`kV߽[{ӜdkEP[Ӎ1Я+ݔxO}b;~._(v4PKfDusҾ W/hdTVaxpΓԋRC1kl4+d; +xڕXr8}Wm2UMjlݭ$IXB E*e P$Mp>}giNydA~۳/|?u|/+2YO:Qx~Cvuŧ u +HY=EE*狛.~u0$)|ZGQ>nCnñ"]Nf-y%xcI^sxE_"\Z"fb}|x4Mٱ%pr5NZ^St"?`p@' +/r' +/Rdj_?0bфIRxIڎЎ HB_m% kZ@˨bkmu'v y1$qaA qa#Rj5;CH2MEOL{1Q֔ΞF 1(818 xK?DB' ?\_}\]^_/oD4) PGMmSN }.%fC@ +"6AS@´Ԩ3 S%7ČԽnfSiRwp!M7V NlE *xhA чf.:z"s1i2mں]R'?A`T)E;Yv/̾.Km/%$E S(ŠX n%Dsf&i(e+(Ld4D-0'LRZgg1f;(ZOwly)FA b?YϜ0NL iI3!_pkf5z:Vjm%(8Hnɀ} ygQgċ$al$'mU!ofNN,E6qP Ri;e?^M*ͷ  uX  [HvJ8n*kNP֡jK* 0Ji0tyCLU U?`B?mLX{S <86qPx <"]iFZ PYD&/rDOKh|cHe>>P D) +͇dԦQVJ9}/R_P "BuJ$Ya5c5 + s1KfR1=A!3N(0ck Ն_V |Y H#/ vRnx;)t7$Wm}Hڃ]yZ_>&dipdc&i 9lff C_AVW7Wi2J( l<6G|q/9U IAq&^;'Q ؽE}q?(%0u?rUJB5ASƏ ] Y{]bEȷ,5_s9O<5Fi2D}M=M:ZPC5aի=+@XdWCPue@c #9" ~HEX̋X#Hn+p n/+=\i6Ƙ>޴S9KL^LDML>ktJ1#a> endobj -773 0 obj +777 0 obj << -/D [771 0 R /XYZ 71 757.862 null] +/D [775 0 R /XYZ 71 757.862 null] >> endobj -774 0 obj +778 0 obj << -/D [771 0 R /XYZ 72 720 null] +/D [775 0 R /XYZ 72 720 null] >> endobj 194 0 obj << -/D [771 0 R /XYZ 72 527.59 null] +/D [775 0 R /XYZ 72 527.59 null] >> endobj -775 0 obj +779 0 obj << -/D [771 0 R /XYZ 72 349.854 null] +/D [775 0 R /XYZ 72 349.854 null] >> endobj -770 0 obj +774 0 obj << -/Font << /F16 249 0 R /F92 759 0 R /F89 636 0 R /F95 760 0 R /F27 247 0 R /F47 271 0 R >> +/Font << /F16 249 0 R /F92 763 0 R /F89 636 0 R /F95 764 0 R /F27 247 0 R /F47 271 0 R >> /ProcSet [ /PDF /Text ] >> endobj -778 0 obj +782 0 obj << /Length 1321 /Filter /FlateDecode @@ -7233,74 +7243,74 @@ x @s?lhq罵%cR:Zz{hzb;T=.MD*Mn^#[-ro&B}GȚ)7.sxdp]4 G%* Iծ\[q2b%<hMd]C*oz%? :$:;YhK0*ld)SiF h3 b#>O鶨Y%`NL DS( ] >֡ąiq1!>)$V=)[:DS&UL6a1HL~P1lɳӹIq"cTb&5Iqwh`]U]Ng݃nO.: -(bL*Ghs\ uzIpٿ8Q̤t*$J#izU2P2S|ӽns_p?r:c D.Օ&cMZmFJPD{r24oV+[Lw I/*xTrhr(~ Q;C*07sx!Op$o8q-ȼ}q>N}c<6l۽3_ 콡Pdz1=D8t8f,'H)c T$|( \}_m:{F.~smضpA3; ӹ0H|rBmij3׍&ż7 ) LcЭajF<pn]-uN.Z$^ ;X*>Na9ap.ߦ?]H`btz-=+b 3 +(bL*Ghs\ uzIpٿ8Q̤t*$J#izU2P2S|ӽns_p?r:c D.Օ&cMZmFJPD{r24oV+[Lw I/*xTrhr(~ Q;C*07sx!Op$o8q-ȼ}q>N}c<6l۽3_ 콡Pdz1=D8t8f,'H)c T$|( \}_m:{F.~smضpA3; ӹ0H|rBmij3׍&ż7 ) LcЭajF<pn]-uN.Z$^ ;X*>Na9ap.ߦ?]H`btz-M` 4 endstream endobj -777 0 obj +781 0 obj << /Type /Page -/Contents 778 0 R -/Resources 776 0 R +/Contents 782 0 R +/Resources 780 0 R /MediaBox [0 0 612 792] -/Parent 769 0 R +/Parent 767 0 R >> endobj -779 0 obj +783 0 obj << -/D [777 0 R /XYZ 71 757.862 null] +/D [781 0 R /XYZ 71 757.862 null] +>> +endobj +784 0 obj +<< +/D [781 0 R /XYZ 72 575.41 null] >> endobj 780 0 obj << -/D [777 0 R /XYZ 72 575.41 null] ->> -endobj -776 0 obj -<< /Font << /F16 249 0 R /F28 248 0 R /F47 271 0 R >> /ProcSet [ /PDF /Text ] >> endobj -782 0 obj +786 0 obj [525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525] endobj -783 0 obj +787 0 obj [489.6 489.6 489.6 562.2 562.2 511.1 1022.2 0 408.5 306.7 306.7 613.3 562.2 587.8 881.7 894.4 511.1 306.7 400.7 817.8 500 817.8 766.7 306.7 408.9 408.9 511.1 766.7 306.7 357.8 306.7 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 511.1 306.7 306.7 777.8 766.7 777.8 511.1 766.7 743.4 703.9 715.6 755 678.4 652.8 773.6 743.4 385.5 525 768.9 627.2 896.7 743.4 766.7 678.4 766.7 729.5 562.2 715.6 743.4 743.4 998.9 743.4 743.4 613.3 306.7 500 306.7 555.6 743.4 306.7 511.1 460 460 511.1 460 306.7 460 511.1 306.7 306.7 460 255.5 817.8 562.2 511.1 511.1 460 421.7 408.9 332.2 536.7 460 664.5 463.9 485.6 408.9] endobj -785 0 obj +789 0 obj [525] endobj -786 0 obj +790 0 obj [525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 0 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 0 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 0 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525] endobj -787 0 obj +791 0 obj [525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525 525] endobj -788 0 obj +792 0 obj [982.5] endobj -789 0 obj +793 0 obj [727.1] endobj -790 0 obj +794 0 obj [777.8 944.4 610 444.5 305.6 722.2 1027.8 750 784.7 680.6 750 736.1 472.2 472.2 555.6 983.3 1457 472.2 708.3 916 500 676.2 777.8 883.3 361 361 444.5 750 777.8 750 277.8 484 500 683.3 449.4 683.3 777.8 683.3 683.3 777.8 375 777.8 359.3 359.3 500 555.6 611.1 777.8 777.8 365.8 419.1 472.2 825 825] endobj -791 0 obj +795 0 obj [472 472 472 555.6 555.6 500 1000 0 391.7 277.8 305.6 583.3 555.6 555.6 833.3 833.3 500 277.8 373.8 833.3 500 833.3 777.8 277.8 388.9 388.9 500 777.8 277.8 333.3 277.8 500 500 500 500 500 500 500 500 500 500 500 277.8 277.8 777.8 777.8 777.8 472.2 777.8 750 708.3 722.2 763.9 680.6 652.8 784.7 750 361.1 513.9 777.8 625 916.7 750 777.8 680.6 777.8 736.1 555.6 722.2 750 750 1027.8 750 750 611.1 277.8 500 277.8 555.6 750 277.8 500 555.6 444.5 555.6 444.5 305.6 500 555.6 277.8 305.6 527.8 277.8 833.3 555.6 500 555.6 527.8 391.7 394.5 388.9 555.6 527.8 722.2 527.8 527.8 444.5 500 277.8 500 555.6 166.7 750 750 722.2 722.2 763.9 680.6 680.6 784.7 625 625 625 750 750 750 777.8 736.1 736.1 555.6 555.6 555.6 722.2 722.2 750 750 750 611.1 611.1 611.1 838.9 361.1 555.6 484 500 500 444.5 444.5 555.6 444.5 444.5 500 277.8 277.8 336.1 555.6 555.6 506.3 500 391.7 391.7 394.5 394.5 394.5 388.9 388.9 555.6 555.6 527.8 444.5 444.5 444.5 555.6 277.8 472.2 750 750 750 750 750 750 750 902.8 722.2 680.6 680.6 680.6 680.6 361.1 361.1 361.1 361.1 763.9 750 777.8 777.8 777.8 777.8 777.8 1013.9 777.8 750 750 750 750 750 625 1111.1 500 500 500 500 500 500 722.2 444.5 444.5 444.5 444.5 444.5 277.8 277.8 277.8 277.8] endobj -792 0 obj +796 0 obj [575 1150 0 449.7 319.5 351.4 670.8 638.9 638.9 958.3 958.3 575 350 481.5 958.3 575 958.3 894.4 319.5 447.2 447.2 575 894.4 319.5 383.3 319.5 575 575 575 575 575 575 575 575 575 575 575 319.5 319.5 894.4 894.4 894.4 543.1 894.4 869.4 818.1 830.6 881.9 755.6 723.6 904.2 900 436.1 594.5 901.4 691.7 1091.7 900 863.9 786.1 863.9 862.5 638.9 800 884.7 869.4 1188.9 869.4 869.4 702.8 319.5 575 319.5 555.6 869.4 319.5 559 638.9 511.1 638.9 527.1 351.4 575 638.9 319.5 351.4 607 319.5 958.3 638.9 575 638.9 607 473.6 453.6 447.2 638.9 607 830.6 607 607 511.1 575 319.5 575 555.6 191.7 869.4 869.4 830.6 830.6 881.9 755.6 755.6 904.2 691.7 691.7 691.7 900 900 900 863.9 862.5 862.5 638.9 638.9 638.9 800 800 884.7 884.7 869.4 702.8 702.8 702.8 987 436.1 638.9 695 559 559 511.1 511.1 638.9 527.1 527.1 575 319.5 319.5 386.5 638.9 638.9 592.5 575 473.6 473.6 453.6 453.6 453.6 447.2 447.2 638.9 638.9 607 511.1 511.1 511.1 638.9 350 543.1 869.4 869.4 869.4 869.4 869.4 869.4 869.4 1041.7 830.6 755.6 755.6 755.6 755.6 436.1 436.1 436.1 436.1 881.9 900 863.9 863.9 863.9 863.9 863.9 1169.4 894.4 884.7 884.7 884.7 884.7 869.4 723.6 1277.8 559 559 559 559 559 559 830.6 511.1 527.1 527.1 527.1 527.1 319.5 319.5 319.5 319.5] endobj -793 0 obj +797 0 obj [312.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 562.5 312.5 312.5 894.4 875 894.4 531.2 875 849.5 799.7 812.5 862.3 738.4 707.2 884.2 879.6 419 581 880.7 675.9 1067.2 879.6 844.9 768.5 844.9 839.2 625 782.4 864.6 849.5 1162 849.5 849.5 687.5 312.5 575 312.5 555.6 849.5 312.5 546.9 625 500 625 513.3 343.7 562.5 625 312.5 343.7 593.7 312.5 937.5 625 562.5 625 593.7 459.5 443.7 437.5 625 593.7 812.5 593.7 593.7 500] endobj -794 0 obj +798 0 obj [300 350 300 500 500 500 500 500 500 500 500 500 500 500 300 300 761.6 750 761.6 500 750 726.8 688.4 700 738.4 663.4 638.4 756.7 726.8 376.9 513.4 751.8 613.4 876.8 726.8 750 663.4 750 713.4 550 700 726.8 726.8 976.8 726.8 726.8 600 300 500 300 555.6 726.8 300 500 450 450 500 450 300 450 500 300 300 450 250 800 550 500 500 450 412.5 400 325 525 450 650 450 475] endobj -795 0 obj +799 0 obj [499.3 499.3 749 749 458.6 249.7 321.6 772.1 458.6 772.1 719.8 249.7 354.1 354.1 458.6 719.8 249.7 301.9 249.7 458.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 458.6 249.7 249.7 761.6 719.8 761.6 432.5 719.8 693.3 654.3 667.6 706.6 628.2 602.1 726.3 693.3 327.6 471.5 719.4 576 850 693.3 719.8 628.2 719.8 680.4 510.9 667.6 693.3 693.3 954.5 693.3 693.3 563.1 249.7 500 249.7 555.6 693.3 249.7 458.6 510.9 406.4 510.9 406.4 275.8 458.6 510.9 249.7 275.8 484.7 249.7 772.1 510.9 458.6 510.9 484.7 354.1 359.4 354.1] endobj -796 0 obj +800 0 obj << /Length1 935 /Length2 6163 @@ -7324,7 +7334,7 @@ Jt =zp?A*Y0,v\5Z}H[_k.Cbz8{{ qS_$Z1_QsL> endobj -798 0 obj +802 0 obj << /Length1 2645 /Length2 30382 @@ -7481,7 +7491,7 @@ U *HԭoT%S[/c5u(#luSeLYsjk=2m $ ȢT7CYr͇vfF$UUjHAlIwq0f endstream endobj -799 0 obj +803 0 obj << /Type /FontDescriptor /FontName /BITSRZ+LMRoman10-Bold @@ -7494,10 +7504,10 @@ endobj /StemV 114 /XHeight 444 /CharSet (/A/B/C/D/E/F/G/H/I/K/L/M/N/O/P/R/S/T/V/a/b/c/colon/comma/d/e/eight/endash/f/ff/fi/five/four/g/h/hyphen/i/idieresis/j/k/l/m/n/nine/o/one/onehalf/p/parenleft/parenright/period/questiondown/r/s/seven/six/t/three/two/u/underscore/v/w/x/y/z/zero) -/FontFile 798 0 R +/FontFile 802 0 R >> endobj -800 0 obj +804 0 obj << /Length1 2443 /Length2 27554 @@ -7618,7 +7628,7 @@ T ^ pt[ ,]8f%lfx|'2"ѧ͂)[6_wܠ?z73:.~?N0'qLH~h3C0`0JDQB/gti={$L;|7kBRAs#dߔT:YBom(m/u@a0ۚ(oH(.~2ƀY!?4V=Gp,2U#8<4?ZayרTP# ꜄b?^ Ja|]쿽x Zĝ/o+p%y;۟߯t=8M> f[*dܑ]V>t՝oYM2mR &y up)0[Jg"ˣBOh/a|g|糢N-07b!˜CgwˋDDPȦ-6|K+  n-'ujDă5:OjJlP,46h1e쎿K9Bٕ/'aceE l(vTB ǚRސS|֊ k?/]kk~ endstream endobj -801 0 obj +805 0 obj << /Type /FontDescriptor /FontName /BHSZME+LMRoman12-Bold @@ -7631,10 +7641,10 @@ endobj /StemV 109 /XHeight 444 /CharSet (/A/B/C/D/E/F/G/H/I/L/M/N/O/P/R/S/T/U/V/X/Y/a/b/c/d/e/eight/f/five/four/g/h/i/k/l/m/n/nine/o/one/p/period/r/s/seven/six/t/three/two/u/underscore/v/y/z/zero) -/FontFile 800 0 R +/FontFile 804 0 R >> endobj -802 0 obj +806 0 obj << /Length1 3234 /Length2 37179 @@ -7783,7 +7793,7 @@ w  " endstream endobj -803 0 obj +807 0 obj << /Type /FontDescriptor /FontName /GGCMXF+LMRoman10-Regular @@ -7796,10 +7806,10 @@ endobj /StemV 69 /XHeight 431 /CharSet (/A/Acircumflex/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/a/acircumflex/asterisk/b/braceleft/braceright/bracketleft/bracketright/bullet/c/colon/comma/copyright/d/e/eight/equal/f/ff/ffi/fi/five/fl/four/g/greater/h/hyphen/i/idieresis/j/k/l/less/m/n/nine/o/one/onehalf/p/parenleft/parenright/percent/period/plus/q/question/questiondown/quotedblleft/quotedblright/quoteleft/quoteright/r/s/semicolon/seven/six/slash/t/three/trademark/two/u/underscore/v/w/x/y/z/zero) -/FontFile 802 0 R +/FontFile 806 0 R >> endobj -804 0 obj +808 0 obj << /Length1 1905 /Length2 22858 @@ -7902,7 +7912,7 @@ Z7&r ,8K dogܑl~8BFTY\>c gJQOPD^~h$%L> endobj -806 0 obj +810 0 obj << /Length1 2695 /Length2 23849 @@ -8028,7 +8038,7 @@ k6: H!)zT60eO"H"X-~SVSa+.ν,#pQB7Q\KlǤ2glͦu9lIƐ 5ýڅ#B*pj=M Dhxen`ݯB]dFb_0Bꨖuy³\H^Ԋ s{!cs0?BR};^Y<n@Aw|KX?D< kT<`ƝtЋnG~ȪAՁ,W6D|N<8̔ endstream endobj -807 0 obj +811 0 obj << /Type /FontDescriptor /FontName /IZETLV+LMRoman10-Italic @@ -8041,91 +8051,90 @@ endobj /StemV 56 /XHeight 431 /CharSet (/A/B/C/D/E/G/H/I/L/M/N/P/Q/R/S/T/U/W/a/b/c/colon/comma/d/e/eight/equal/f/fi/five/four/g/greater/h/hyphen/i/k/l/m/n/nine/o/one/p/parenleft/parenright/percent/period/quotedblleft/quotedblright/r/s/seven/six/slash/t/three/two/u/underscore/v/w/x/y/z/zero) -/FontFile 806 0 R +/FontFile 810 0 R >> endobj -808 0 obj +812 0 obj << -/Length1 2057 -/Length2 15674 +/Length1 2040 +/Length2 15497 /Length3 0 -/Length 16972 +/Length 16768 /Filter /FlateDecode >> stream -xڴsxj>'mLl[mۙil۶1;_9g]s {ggfȉUL팁v L<Y9e;#[fz)g#kK ,9#Vt(8:Xa@[`:zTFE;'gzc#5H"bghin'+=HF&_ܜXlM r y;%` 06ؙT51e -5G`{{;"&AWj*^U?y> ˉ -j)13 p::YI_(>jhgW=#39_T-,nv_@k_q5h kiuq[ihHca,hkdkal0KRMqqtCU }Tkc'fdg&vNNNG,;93KۿdrBRb*gK/g[gw翬p1qLC*fk*bgc OD-?l[;7[Wnfikj.j.@)#3:@ĂO变 >^v3#k' pvtx[`ji1Wt)[3;&kQ?` -4esrX[mgdcieCJtN@SEKg;\B@=3+?ke1w+C_4b tr~㿈FQu1u5gv2535s<`>1ۦ@&`kwq99U߈(5? ( b0*b0(cg33}2d0?,qdaoŇ_"2_? gdOdWۏ'ݿ039&NA@SeG6g7,{탪'oΆ;ggX/hai/9#gGKwe<$ =GY̬\%_T/s@w ʢ oUJshXt9$97i%gM8P6Ԩ̺ >,6"=Yq[:@i /yyѡ -H8`g]Kʴ;uH,46'7 -q5o6>_Ո@Zw gD&m¸Þ{i!l'\`YC뢵-Ll70{֠$Q# SOE&;C1or6{$iFaE8~7†6\xVMcE-k5أgZw#'TCnC3ϙ^ϫ&qClfҵWN]A>u-nYlslG}WV[S5J(rJ_1Fi 9AڧHނmzxڟ?*'"{mA|,KBKt%A{ R^Zn"DتE0^ -Isf[gBm41=k{/gI36_&Hٍ]O -V~{/AM7I ~p_ ' E*$-Gx91()\gÕr[PӋ-Kb֡UVsrӜ% YN~RMѓz#]-S!<+ލ48pRC_2lJJc_b= mngrX< duF|VM^W IG4(J'$C*"M]Wlk:9w \fozˎZ=ۓA9c1IOL2<^nxUNs#fWX$Ʉmyy.|-9TakRDM`IҐL-A61ĩM,ȁQ1ng/̓zd80:lN4[ n9]ٸc>k!ZBՌ9ӭEn ƕh5JpYQDԉYC0#ls/b }MehidCp8-Qә{0YFA 򼀛Q m[v 3^-"Ή"͏<0*m5DFymϷN;| -i2MLt2n;;R k"%g7~}=ʤ OhdQ^ N qPrx͛Q!v>vuOs~s.h(?g+#U/y^?FsX G\t%lw+.٠&od (;];HUPl5 N?wAIbw^IX^{3D)V^5JȪr0f|7ockN8EIX>kyY(\X~@ƲsG9],{bB4Yź͵zF\&v4t,ypU@e)f+ZS<>ofG> -h2.T2|bۄn.q…c7}O'gٓOG7Eؽ?ZgE|m a<3y -|>)dkl̙;5!(TVRιjiBrѓbbg;T~>=ГYEXTBAI &fEh(AW&eǰҍN])_ADּB p?z1ڨnv9`'[C V =MpF^>'` RPx4DplvLFI:}SW^67]in3™M=+:@ - UvKzysGM+QG!5ߡgSQ[x@:>gLBA P!Rnj`R RsD3'wiHM~wF?(: 4{O(^A;p 0tosн2H)Uʛ<&aC(w-0$vֿ@3'trBxxF-,]|>p35|'Tri9g>i-= 7`ML4oQV eks*~s щ_R/<p~x6R^>}cVcWp?DCK\y1 uThdQ?{lqʏn%|BQŞ٧! -7mE=x]{}?a{w*>a x:Old1˾oZm\Π)|p._wcQVa1V6\rVh A5>*AשPČWPD -)L-2zזF7?%s]"7fÆ(+M*(KF} p1NDV tT((43{R }՟a%Ctwճҁ2Ap-VWEĂn-Ҵ U)?*ͧTj%%暒\ͦHX0+;JS LYjM08Z2jK*FJM~@C -Lʙo*8aC~JaJ1-f@fr!`Y2!P:%eiܢ+knwz.Wa34 Orjuv3Ҳ &Q|fԇ#tx<;e8gdt|&,qrIyDd]cx~FlV)6퐻wgJஐVNǩ|a=oIXWd.y.B̓pꓷ=fڲ*ak/e]LP5#V 3A(  Y`,'LUrF۳r8()VGÓ38{6P 9_Y%:+Ps]!]$RZфhz¤ /JD~޵*kf,ꂹxaFZbn$>#@:e:~OY7NҪ^ p""s\}'w&6h1w%A -9 FbBT{<Ɏpvxḥ`qY$CЯi1ۄk(1څ~ӳx&TżDe!3!QD7a2[ͥϾp/]dvyrc[0!΁EBt5B L}l*{>MVLnŠ8IJ궓f&4gHBd_wYpA%yI`YUiuRRS1>hK9AmXZES9P&DL5Ahff}PWSb֐>î-W<߈8==r**ۊ63"N7+R.Šx'X k,Ǟ/}Uf$IYjZl[/eNj[_l{т͖9:V!qP wì-UuZKG5L j2bG(9ZE@ŒO>BejNirF׵tyDL7s -I@uadO\0&\TaO},wbTj[D0YX&;U -1hpa߹׋e|ۗD]U^>ɦU0 -VI`OooPkWfvPq_p}bM?`+%p$DeE3er= -rI4옔x ㅲ/uPFϫxUR&g1&1=V5Oaea Ɯ/ Sq7=9CN1ͪ%8\%'XwEk=6J{~P^׎ rCqAqEayAr>=恱ivᕔw0a.h[$#Q2=m͏:;E3vfv")<5sPS-}>cn̿rGFuhf4RZZ<=oY@ -Ml*}rgHH\x/L;ltj+FhL y[`ÖSNXrRt>(^j1U7]pp\V,9@ [u;U7jڱNCSľgC2߫Dh39ȪW^VϹgCΖeÇo+l!A('wM{TȾSȧs65ң;Ȁj]H\S9Ҡx]xyj Fk<׷/֛1U -9d*_Du_;D~hݩRM_ -ΐD5'\>I;ބMG$d, &aEȄ -^ihߜ=߭{x~*%VYI\M]Ko7͙@{X}g^ƣ.};&:}R6D-`N1i&?*[JD^&PfQvϱwad=XyGK!aDCe;=3$XU [. ~S3g֟|kژ(:飠bkvҍ|(l--JUWIRC3lYLP{)YV#ǀz`3$H0h |^.ݭ&&Pj; *zQ+3<T`okĹ~7A<( 7/7'eo{Uuh|y.Pe8y |JZSnVKy yYb*jjW=k(uUE*U3eXdpHMgگBA'Ņh'eFyA\|t˦ot*p+]mb`5A!ՇGjn6FݯSPf}ʒ3mX'3ʵ{OUY(' `Z@PbnW4MBA sX8pY_W#(3;"+B| d2~ѾV+Iz]3K"b]HH=i*G j}REBn3S_ƣ)?Fs,yw}*ǗZ&<&nxz΂`OF| -G>X[܇>N68yL45YM7MsР#9VnY{]qxJ:1ÖEK_(~a` &Q%܏ZVl̬Z"m\zI[C]:.v]wX}?vW_n6:충eT7Oi[,wXˋ% c(|Ä94#ҏ\lMe4NQ| S#H0Aa%XK" -M!_^,SJP҇$8#Q>jqԈi onԜtTWP\>WdFJ[m66c „j$#8D^`EӅ7*Kpi\+atSwXlSYk|BSÕ0s.V8t zUnwGPX E"`ç6DCc+caZHLXACo{?Frlݰ:̯]>;`7M}a cGR)zT'H¹vF Ϳ}zCG3-U։~E0L+%Š(|lSd3р1ѹ,}wJnOjE! !$ϮkF㔂$ ǒE'/f^[ -fxUFx/Z - u} e]U6E~/țWE!y -\?Wm_3<`)q0#8n-4AF/K˝gJLy \BHEiNi~7qn*5,RMk5}5Ajܮ\7sҬ~RBuEMwa}Y1X Os!v LykWOE??8a=x31rqJ*ω7 -V쮼F;Zh}{ryx4$0sZ U<yYvC$uSٜMM] 7YA =UҲԖG]x@\:t7ě>+vv'^aK&:ܢt!agWeyث`qz4_u Ӊ/#1 \'-*`ux;NDE"pk/BrUq،4ec4;ѺDu=)kŻ^&ZzMvTg-`>`&nzi<{NhԀ2`2\{۾ȓ iӀuBY$WLKx!3dg,6b 5t4KOE=H&)sAUtrG>_}@y]r]rQcAT/xEV?G/猨~+琧]+=rЅtC26$3Joh@{e47gjWS~v̹UzfۚI|& 6q - /, -pUᇁ`!Zr4UӴ[rDWl,$Qn/*xð]U4@!׾i(-xmmiGjw.:DO.@HޭF7ClqrόJݻeʵ.= 3`%='t$FU}.X6Z{8e;-(I -jj_6SvxvǖQ^*,BSQrF zoN:u(#v{JZޢ "=ˮR.ژV,uVfIKVOBe7^=t!<8mF  /{h\|@5 -}&ͳmT,Mʥ;K[̑;aC=򭯙l`GGU!l*a]4.,u,bM"uZ^r d ]^N :}A)yjǢaװ'* 97׬%(8=t=&-J"snˡrTs}p', t9Gu=-ub+Cm;Toڠm0EUIRdC`7-Da_M[ļ9aGZW93gWR8f7_Oki#iPy se>֩ξFd,y-焬>/p5n>M%)pSZ0<'ù.WO9: [y.Sk+ XqQ7*%uwG~CH#46 -++COj8Eح{`=laҪB' -YTImAfp%Rt2$P+rpddZ(}`ڨ:h h -V'(G+[0›O9NBq1{H79z2" kc`p^Ոdyco4 C(Usz'ɝΝKiFÊ~ωl-L= Z jL)F N,mrMGð(g56lc!h%z^i˒STr_]gjFAno[Fo ^꧎lvo <*}?SSzsvD/4@!Ojt 82ՈT44{KSLDH,ռQ8 -ɌyU/Nq/@pt?ToQ`&?^2 -l$7Cx7.ߩŻ*öJ\X$456"E>!+2HssgحjMfǍc5_$@[<}.QȤ(ne_w n%}MY98:t}t)f`P)&R'Y񰪚mA弍RpMG΂rH€L(ސd ]\ sF/zQJ%aCQU L܌MX71L -F} -} WO -Nzc^u$m,nhU(&ezD,b0 TDTv7C~uid)w5pUa߉ZpȔ N2cNpS/1245hC$7DԾ4|.! ;5IಯǬ,m H:I!x_L -}V&fii&, HIgtI;CND> #U"NLp&8#akp˹,k<]QLǥ'1 ߶ZxV}_٨9ͷ3҇Px[r̝zh8X{OB6l!3~INN?⺃AkK.x#x08 Rl[._KwY7B|P1!(H'j? ?|Ĕ)%7%_PeN<"'a>~YvY(yP^u^v4 -β@5mͨ^ֺ/I<ϓۂT~* Ek_ b`!PU$W("$ wٴ'qңz"˽ x t.E^!I_o.Ny\M  |ۃ C=Jr"/S.m"+ Blyn}orI~M*{d*fHmvXY;OչŦ6N ?vHW^/xRVțtGVzm\"\fDVx~ebP{㐩"i#E9Ai @&Sfv$aF-m{uIѷ堒ICZnw(TCRɃ kof|-f/۴ 2f~r4E*+9U/2@nCMB`iN6.z&壵 yen|+'[l1z_%UN(%7MUPsUz_諆`K8~g$`yLx!?}GAAԞ2wCONN$:ri*D: % /إӝDA!]dNv8_ i+eӋ;>{^ȓxV"Ԯς gK--8"[](kr*$&ƫԂb7h&(* 눂=v=Se2vې - 95N63;Qg-l,m -u5 3AumgEzIDֿr]PNE$aM0И/I'<وSjY)1_&dԷ -?VG8vJV1c=[)W߼Ͱ!PHdK -1f(sn];E<^hJݠWlcB1@Tc 5GW1%QL-df«*bsi֞`lNԞ޵z@*<$:Mr|$THaS eoC(OARA'\Rbrus޳iu@c|1JWzeY!B,WL}H d?hC͂ܦ]P,|K;,V) ǜ8e>u Mma,oBwzVl\fp@rܲ$HBp)OX^oqFU%8n@~BURmiL~0%Pa#rg-*BحJDiV52AV CBi7YP05[PH *?M\)<(8'A@ vc32u!*WK 9x9JĎL%ßa|-Zse#WK"/fNfi1Tthθ.zCb)+\]vpoytV -aXDn&CZd3hc!+A>с@mJm ]M9?S jborPl7Ր%  à ?ytEO˙Nxn E&Na7Oɳ@dcVJ2A5${{^/#3Y(鷓:d͓N)EAEnV0oD/*h# ^/Ôuę'HP/CM4\ywT]'1_/fFff777&s'g&9_-,n`Gk۳#Wc\Ll;C[@$+mZ&wF8i9 ?i,N++lv ;ɛ3 /dJ7A@OU9'RUotڹ8y7lA3KN/:1*ߺcx"|.+/mH%LoOO`Ggnv^OM]5,\@2c&BGfr@tM1[|3 t]@>^V_ 04q~eA+ghZTڷ-5xLAf̊`緁ϞW.IE-[v@[Kk_&Z?di@Y:IZL-M,sؙۀL,\lk4A7=7FKzk;?:je&ag63qr@`xͶ)03ف\.>3#ŸS0bAoA<f ? 0l3YYB AoQMf/Vտ*lYߨM 7.o9 뿙Qq-5[d{c r[GAϕ׶3^Vsv[,M'etvtcy[U72? (e-* +vbx#/$6Nk56ܙd6lZ+Q0SCtZ#-1I'C* hϤ*K&kScۼl%UM4U*Hh2if*,wpeǷ4Əx;{٦^ѯS`܊`9`/t.tA:cFEV?`TZ`e?b;CL5}!s )'خ:Jc85{mA_m /iJ@^x'5(KC {aEh7f""9zSUIxQv)pDZ4ʩj=K#vgadk= +KuO |=Tk;e&+rЍ;5XPO=HzCfT,(#6?-I"{kpr/\52(GH`ճҡ~hhyAhJ5[ҥ,O夏Hbl>XCD!aut OP1=5 /nQLO7vf˖w +aX'zqfwg*yyHwڨʾ5,1";UyW:@k0?quѡ J>`gѡ#EkZU,46'7 +e5.1_HV̚;2>qaׂRh\7b`YE=U;23J {З +[$Tr/vD/?5!.gL弩apg(;)bod ]2Q' :7qGCawDjLw`$~lh0U]ӬՂO֙-/߄UiN#fiߐ=0ʯG"< m:qORHڄT.}8-jR;>'ehI}5įM*AQ3kg&*Γg<q7'][+{$Ǚ[)lހƘ ~q@x6c=w:prkzfA3s9wι_ O<* Þ:ײj gR܍kMi6dO.+W"]܃2 pZe,1*Ze"/9ѱ \P:=Pdџ->DHB4jgP;ݴ LD@5:QS4~~>͢Hg8ޢ +ݽtEI1#7ۗ7M;4kI=CŹPZF\񜣌\jqaU/W*eyt^V^"qQ]egSUV,ok\76-o惃B7)'ic?T9.J21$~FVzpDMc$T(ͪJ bvi1{,xjPӽuY$\T~@ֲKr3Ӂ@R EźfFBhv4t]Uᶫ+KcwƝɣ2]#Cb|.trWe|,L62 ?xoQndX6 ٗգZ? H[{g9%Yb?[<){7!aɴD%)h̝;= !(RVRνjjcBv;&voR P hsj`-#ГUEX\JIE(6NEh4$qgeǰҍ.̓ξA6E\!? F(Ocnnv&L.d]z 9MrB]9' RR7FplqFO>}'T +FRPS]f h4ִΏBuG+a"N /T l-S{Ϝ;ZĮ\<: l+ +3mZlju͛|\48=̘a*)L @Cԁn ^ +77ٮ@ڋ 3<*ɀ X.R8޽QH/hxJ(a/[ h)y Mۉ3ou+w[e2.*Ų>WXHU2j[ }#VWDi_6{An Th9F1x8b/9KHK$)J+!Mޝ>C.aο>בc!eֱK}Q\9y̯v + y&F=g$9@?OR?C>8.1IܴTzߙH8MƚywJg0zi]3+ͽgSP`K$:,{V wR٤S sOtdӫt1"'y}^ v7Pj;0T6cVxR2-N ACNp%mU# &gH4DhҞ ӐPARXDj8B #Hq +TY6؅0vjsi4뮳E T_<`pteƁmY:A76aW@)w&٬[|`i3=a.]qt%C}hMUmڋU6_4B0 #Kp$r'm|R*bŎ/( )Efy{mgPC: 5n;Y[R2M15Tb@Ky JiHuw;<^K4[+kc +M'Nc/Q(Mp_2i(̑§\%PtKƜyذuI5StL GӛM)n:8ĠsGa8ǫ]Kng]Hyȝ9 JֺDQ\z}e=wd k1].h,HM4Al>2+57Ԕ +m}^BmOIRqyI˹[k=UΈ˴uׄcD*3_[M[mF(f 61§HK}]@Rd3 +S,[= *KPtm +n?v|/Q'-oh6W24lߝM]ȱf>gK{Œ脫xw3"ڊ)@K&=Y&C$^&cU\ bwl"6W[?r{gAQ}0j3w%C >~͂q%&eIzIa@s,b! +i,rc g(SujtuYIbr9~{t^}fțpNu3 -p &_pNg!HiNLJ̥!ڻ'!yU!*&+A!B/o9YjWq'$M$ P4 QOz eҔN./jS 4Hh`N9lAֻ{-ĵQcɘ \F"2u +Ueoԡ\I>'Lp-K0y?8##j6&R`ˊK  +ޗpݐ% A7x\UZɒ 5t8|L.x! +ՓrCVPS.!iamQJ4^mgD~:%i0' +N:'Te+7 pdž??^v߹@'8$FDa`\$!eߖH:#Èog `#'Q|dndjo{uFE@ܽ߹>"v2{ q82?𿫪!x%#3bsv%ٺo>#$)cRbj- ȿ!%NJ5ALTLj6$tܭpՖ"#J< XHxA~Ym/kw!NݯYQR]b5)vSe?0"y^(qncI _2n-vdYqNjj(W솤^fW "R7e ӻTtP+REr\Qmlrc,_崊Z51SUv6(2? +*vecM)I M⏐y6<.> e3_nz<6îuuZD0Í#("5?a7FoR|_ʒ٧2uN_ٯ'IZ coWMaCg `rY⹈ ٪2V#wfgQvFUTI֓g]ӿ̂(W+~pgFB(yVLGzcD5ƛinsOGR,? ;࿺>,|~rwd r<=gC|(r>f4#hub"nq`XezaX+cAdJ&xYwUqxFM.J 3H|2-z Ź;ĘYa}T"tǭ h͒Vf줠V䧶pj F edS6u0٩JBCJ_m6z1wS9 ñLLXA+iqjnA{RG|ɱ`m[QcߚC1' +|R01R)vp`F ӿkfS6#=MaE0|+)% +w)~!DHtz\dWi5nvGxᢈȉsځ1HJɁƄqH)v76™kihB"e]%0! D>zUZLR:̼ټ=5m.?;dmJ0|#E&Ol&?|m$<7XsbvM?1F-F2#l3tCgSSkAsM) xAơWSyM5vp1iC{]b,)C/JX'O%4pwTq)wOc<*j 6":(oE7{+&qWLqãygiWlݩNU5YyqGT>%L, Zibv'VSӊ ӓMms: T}j3lnҖv|DŃz7hPk (^<ןqB\ue4Uܨ&\=`Jhtt(A8;ǦXhvgj}=VghŵWUo|LY|):F))-AD97smtG|"oܡq7E"uXXzlg##݀re[ߣ>] V/9*^+KмB[PzM֨8OWdw2[hf\˜ + ?㐽?0Bҋb>D߫wR!+ +Q6HGQ.m&e8$l&'pHtt Mż⥶hyBC +vY c.,2rt#=@̱銘7BAL!ۥg2)ܜbI/./t0JN1F5]Qllc<ةraۂp٦vPk;". +s@lZW(Q$AJ:P' II5hJcE6Ux,QD%*X]GpԎ*V0qB aprv;Rꨨ -͒VΛ|w_=9NBԩDd&Y$4Вyî9*ff 8&x1f/ك$lOM 0m'mGq8]0'kw&IKە@8; #1Pa`T?zJ"wF#ςަO5_6ۆi8k<6׺'.ǡZGq3MH:HˀY^Kt2B?=O4JΦ~?X+D< PIjev +[3js'`C;Sq秫"2aNpKCiLMAA/zcBÛxD! +}'6+B7 -Fby"ع %X*v36Hh>=\gq Ljyz᱿x\LbGĢ>{}M/c4*e'PǧH*Ugz1a l|R)s9A[^gMp MB>SX&Qg~I9[O_ap՞ +?#]5O@XP,ob%z42ޕ̉uTw + &S1]3pvo("&]Ooj`-^C[\PR_Ky}O,sz,ܙ>&/2&26odG20ܵ|դ=3eTw8 ʣG-?PNH:GS;3y={ +?ZYx3 w=GAcߚQ0|XRnv^rAh)?7$L'WͶ|$R4bRFDt +cEY56]?+NQd\(_9sl6D!9)%|,||f5iAXgk6W$QYMM7 rSGv:92D|@'O"7s8K9Xq;HH`aI. M3BU9-VxufGS^#~oP}qcz\wxG>QH%$*ژ=ꬃqq|L#ovi]b|=ֈ[}| `ԪM auluB {.+ہi[ 89&nik=9u(5M.Yh̰:w@~x<@- M}[%̂vt*)awׯ"kږ1GJ1% KgEH}Jn\lﺐzj?sxΎ3Ýk)Zr\>V:X" ,^lGq5A<)F-h|^7z^Y'Q1MMbPQ jBnVsĊZ=ٶń3H9:_e)6 8Y^Ɯ:霬YIrVUZl)P=QeZW/&u2ybS?GR@; 3пpVn⥨Arn>m(m9/=Ř"EŀIz֛M?@juQRi H*u~K#xcY!>A2K|}&=z0X8nLbnd} 4>}VҶ*Тs՞z>;$xNƓҌa?Yxa&'4aȸΞK}_4GaJ3f81ynӆ &wX?Ȣ&_BT.&\j(uZ(>~m-M!<7+ \YrVbV;ـRqChۍw]{Pն0`0OV>*ӄwHyb^(6tiC4"`:xJ3 +H\pq@ts߇CP[kjs2Q7I +n|$f,Zcz8}zw;y̘e@[X)x&rj;|:ejwJ9q[$j7Z:Yty`*1;.r9T7* `![ʧd hun4C +#=87%aup,@`!]1;,YsYܢa88UBɠs?#+DU[(V(gymUYd=M{DQŐς ‡1?c#yA1{GLyRm*5z8N))!i !:#$sFO|Z +>j&!ͫD0A7eM՚p̜e|ʬrrF] GqipEKerb mw"~ …)n8T/:JvțkWqagЧwF'WuhS%PF\֚eȹORD"P7}CBzǵ:,?zWRd6ʖ$ n^~-ȆO23hi+d"\sPXf$Z4L®xmE4/iSr9R + E4i +F~9CXï/V0QnIL .7acSnfw|Էcsn|<۽O 2q0F \;s._:ޭՒ_0n V$+LHpj/@ v4צ.b'Ǐ,&<͉"<[2I O[Ghms(%6i= w+vC:'Z](*=M~Mmk hxRUKHJp oyz )$7ˆ`3iq3p?A~KiCKE|qъ84l{7IsZW֐P8]*x Tk"bכսu$Y\N^858"-u2;!+sda0h,LgVm :څfw6{?-S]/ D$g2~4Ͽ!t:=[&GOv[ד8)>E;\ ؜gT:W(!`" 3Ï!BM_&'v7찅U}" b)f[H^˱ms!7fsYiPj9}u5_i|Iw9G8e{B&9#;=W#Nd/LiB +Ȧ +xU':EFJMZ!nB;"R4Z4'XɦFa:E@(p"w2åBؑYIY\e{r#Q\ݢD}HmT1 r:@fڊ$Knx  w`ݟ7_@FIu7S&Z?<<UASk]._/sƫm Fx)ឩ=:ky;|b3ɩ0ɡ3ZK9aof9;##3ep7>kI/&F$`oYHPňt5aÁ( .mŀ9MX߲>> ATqLPl/ok,w1鈦ԍrP~nCB2*27 DŽSu-*>^7vƬ5o/[k( w?rM&%tP`qW+S{&y$ ~Mab'1b]S̵zUFa"'ۺ$+Oƒ5t=^IyN.b aց2CiKFa /cB!n$Laքw<Mv&kp?S(ڕFܦ-yp~2K"s"#zL9uX9mZX`LH+ܥi+x`)88$}vorN]B$-+9Wm.RJ0)< YMD 1B/3Jde~{>,%^ِZY1gdXЋpH]測?g743uRou߼+nY y`@$Ywl8 ++n*Z|e. qgߟTГ~M>;X G endstream endobj -809 0 obj +813 0 obj << /Type /FontDescriptor -/FontName /DVEVUC+LMRoman12-Italic +/FontName /YSRULU+LMRoman12-Italic /Flags 4 /FontBBox [-449 -289 1358 1125] /Ascent 689 @@ -8134,11 +8143,11 @@ endobj /ItalicAngle -14 /StemV 52 /XHeight 431 -/CharSet (/B/C/K/N/P/R/a/c/comma/d/e/h/hyphen/i/j/k/l/m/n/nine/one/r/s/seven/t/two/y/zero) -/FontFile 808 0 R +/CharSet (/B/C/K/N/P/R/a/c/comma/d/e/h/hyphen/i/j/k/l/m/n/one/r/s/seven/t/two/y/zero) +/FontFile 812 0 R >> endobj -810 0 obj +814 0 obj << /Length1 1902 /Length2 23557 @@ -8238,7 +8247,7 @@ s kl3~if(SCcЈrSho΃_0^8L{ 7ZDܬEj滦MRju:vzԤrf&6W endstream endobj -811 0 obj +815 0 obj << /Type /FontDescriptor /FontName /RYXDKR+LMMonoLt10-Bold @@ -8251,10 +8260,10 @@ endobj /StemV 83 /XHeight 431 /CharSet (/A/B/C/D/E/F/G/H/I/L/M/N/O/P/R/S/T/U/V/W/Y) -/FontFile 810 0 R +/FontFile 814 0 R >> endobj -812 0 obj +816 0 obj << /Length1 2453 /Length2 26390 @@ -8365,7 +8374,7 @@ K~i> aX} GWp*2n誐7H۳慞b|*A9\@oxP s^))歷LT< lc;smho}꠷aktWؿc+ Vi[ùؓf/q׆Yj>e; endstream endobj -813 0 obj +817 0 obj << /Type /FontDescriptor /FontName /TQJFJZ+LMMono10-Regular @@ -8378,10 +8387,10 @@ endobj /StemV 69 /XHeight 431 /CharSet (/A/C/D/G/H/I/M/N/O/R/T/U/V/a/asterisk/b/bracketleft/bracketright/c/d/e/equal/five/four/g/h/i/idieresis/l/m/n/o/one/onehalf/p/parenleft/parenright/q/questiondown/r/s/seven/six/t/three/two/u/underscore/v/x/y/zero) -/FontFile 812 0 R +/FontFile 816 0 R >> endobj -814 0 obj +818 0 obj << /Length1 2226 /Length2 16213 @@ -8463,7 +8472,7 @@ L Mg:'!"`⣨'%L82QT1h endstream endobj -815 0 obj +819 0 obj << /Type /FontDescriptor /FontName /YCZHCY+LMMono10-Italic @@ -8476,16 +8485,16 @@ endobj /StemV 69 /XHeight 431 /CharSet (/A/B/E/I/L/P/a/b/c/comma/d/e/eight/equal/f/five/g/h/i/l/m/n/o/one/p/period/r/s/seven/six/slash/t/three/two/u/x/y/z/zero) -/FontFile 814 0 R +/FontFile 818 0 R >> endobj -781 0 obj +785 0 obj << /Type /Encoding /Differences [16/quotedblleft/quotedblright 21/endash 27/ff/fi/fl/ffi 37/percent 39/quoteright/parenleft/parenright/asterisk/plus/comma/hyphen/period/slash/zero/one/two/three/four/five/six/seven/eight/nine/colon/semicolon/less/equal/greater/question 65/A/B/C/D/E/F/G/H/I/J/K/L/M/N/O/P/Q/R/S/T/U/V/W/X/Y/Z/bracketleft 93/bracketright 95/underscore/quoteleft/a/b/c/d/e/f/g/h/i/j/k/l/m/n/o/p/q/r/s/t/u/v/w/x/y/z/braceleft 125/braceright 190/questiondown 194/Acircumflex 226/acircumflex 239/idieresis] >> endobj -784 0 obj +788 0 obj << /Type /Encoding /Differences [136/bullet 151/trademark 169/copyright 189/onehalf] @@ -8496,11 +8505,11 @@ endobj /Type /Font /Subtype /Type1 /BaseFont /BITSRZ+LMRoman10-Bold -/FontDescriptor 799 0 R +/FontDescriptor 803 0 R /FirstChar 21 /LastChar 239 -/Widths 792 0 R -/Encoding 781 0 R +/Widths 796 0 R +/Encoding 785 0 R >> endobj 247 0 obj @@ -8508,11 +8517,11 @@ endobj /Type /Font /Subtype /Type1 /BaseFont /BHSZME+LMRoman12-Bold -/FontDescriptor 801 0 R +/FontDescriptor 805 0 R /FirstChar 46 /LastChar 122 -/Widths 793 0 R -/Encoding 781 0 R +/Widths 797 0 R +/Encoding 785 0 R >> endobj 249 0 obj @@ -8520,11 +8529,11 @@ endobj /Type /Font /Subtype /Type1 /BaseFont /GGCMXF+LMRoman10-Regular -/FontDescriptor 803 0 R +/FontDescriptor 807 0 R /FirstChar 16 /LastChar 239 -/Widths 791 0 R -/Encoding 781 0 R +/Widths 795 0 R +/Encoding 785 0 R >> endobj 244 0 obj @@ -8532,35 +8541,35 @@ endobj /Type /Font /Subtype /Type1 /BaseFont /ICULYI+LMRoman17-Regular -/FontDescriptor 805 0 R +/FontDescriptor 809 0 R /FirstChar 28 /LastChar 116 -/Widths 795 0 R -/Encoding 781 0 R +/Widths 799 0 R +/Encoding 785 0 R >> endobj -759 0 obj +763 0 obj << /Type /Font /Subtype /Type1 /BaseFont /IZETLV+LMRoman10-Italic -/FontDescriptor 807 0 R +/FontDescriptor 811 0 R /FirstChar 16 /LastChar 122 -/Widths 783 0 R -/Encoding 781 0 R +/Widths 787 0 R +/Encoding 785 0 R >> endobj 245 0 obj << /Type /Font /Subtype /Type1 -/BaseFont /DVEVUC+LMRoman12-Italic -/FontDescriptor 809 0 R +/BaseFont /YSRULU+LMRoman12-Italic +/FontDescriptor 813 0 R /FirstChar 44 /LastChar 121 -/Widths 794 0 R -/Encoding 781 0 R +/Widths 798 0 R +/Encoding 785 0 R >> endobj 635 0 obj @@ -8568,11 +8577,11 @@ endobj /Type /Font /Subtype /Type1 /BaseFont /RYXDKR+LMMonoLt10-Bold -/FontDescriptor 811 0 R +/FontDescriptor 815 0 R /FirstChar 65 /LastChar 89 -/Widths 787 0 R -/Encoding 781 0 R +/Widths 791 0 R +/Encoding 785 0 R >> endobj 636 0 obj @@ -8580,23 +8589,23 @@ endobj /Type /Font /Subtype /Type1 /BaseFont /TQJFJZ+LMMono10-Regular -/FontDescriptor 813 0 R +/FontDescriptor 817 0 R /FirstChar 40 /LastChar 239 -/Widths 786 0 R -/Encoding 781 0 R +/Widths 790 0 R +/Encoding 785 0 R >> endobj -760 0 obj +764 0 obj << /Type /Font /Subtype /Type1 /BaseFont /YCZHCY+LMMono10-Italic -/FontDescriptor 815 0 R +/FontDescriptor 819 0 R /FirstChar 44 /LastChar 122 -/Widths 782 0 R -/Encoding 781 0 R +/Widths 786 0 R +/Encoding 785 0 R >> endobj 524 0 obj @@ -8604,10 +8613,10 @@ endobj /Type /Font /Subtype /Type1 /BaseFont /KCXMNX+TeX-feymr10 -/FontDescriptor 797 0 R +/FontDescriptor 801 0 R /FirstChar 101 /LastChar 101 -/Widths 789 0 R +/Widths 793 0 R >> endobj 622 0 obj @@ -8615,11 +8624,11 @@ endobj /Type /Font /Subtype /Type1 /BaseFont /BITSRZ+LMRoman10-Bold -/FontDescriptor 799 0 R +/FontDescriptor 803 0 R /FirstChar 189 /LastChar 189 -/Widths 788 0 R -/Encoding 784 0 R +/Widths 792 0 R +/Encoding 788 0 R >> endobj 271 0 obj @@ -8627,11 +8636,11 @@ endobj /Type /Font /Subtype /Type1 /BaseFont /GGCMXF+LMRoman10-Regular -/FontDescriptor 803 0 R +/FontDescriptor 807 0 R /FirstChar 136 /LastChar 189 -/Widths 790 0 R -/Encoding 784 0 R +/Widths 794 0 R +/Encoding 788 0 R >> endobj 637 0 obj @@ -8639,18 +8648,18 @@ endobj /Type /Font /Subtype /Type1 /BaseFont /TQJFJZ+LMMono10-Regular -/FontDescriptor 813 0 R +/FontDescriptor 817 0 R /FirstChar 189 /LastChar 189 -/Widths 785 0 R -/Encoding 784 0 R +/Widths 789 0 R +/Encoding 788 0 R >> endobj 250 0 obj << /Type /Pages /Count 6 -/Parent 816 0 R +/Parent 820 0 R /Kids [198 0 R 268 0 R 274 0 R 278 0 R 285 0 R 293 0 R] >> endobj @@ -8658,7 +8667,7 @@ endobj << /Type /Pages /Count 6 -/Parent 816 0 R +/Parent 820 0 R /Kids [299 0 R 306 0 R 322 0 R 327 0 R 331 0 R 339 0 R] >> endobj @@ -8666,7 +8675,7 @@ endobj << /Type /Pages /Count 6 -/Parent 816 0 R +/Parent 820 0 R /Kids [351 0 R 369 0 R 380 0 R 388 0 R 395 0 R 401 0 R] >> endobj @@ -8674,7 +8683,7 @@ endobj << /Type /Pages /Count 6 -/Parent 816 0 R +/Parent 820 0 R /Kids [409 0 R 418 0 R 424 0 R 430 0 R 434 0 R 438 0 R] >> endobj @@ -8682,7 +8691,7 @@ endobj << /Type /Pages /Count 6 -/Parent 816 0 R +/Parent 820 0 R /Kids [442 0 R 447 0 R 452 0 R 458 0 R 464 0 R 470 0 R] >> endobj @@ -8690,7 +8699,7 @@ endobj << /Type /Pages /Count 6 -/Parent 816 0 R +/Parent 820 0 R /Kids [475 0 R 485 0 R 491 0 R 511 0 R 516 0 R 521 0 R] >> endobj @@ -8698,7 +8707,7 @@ endobj << /Type /Pages /Count 6 -/Parent 817 0 R +/Parent 821 0 R /Kids [526 0 R 533 0 R 539 0 R 545 0 R 551 0 R 556 0 R] >> endobj @@ -8706,7 +8715,7 @@ endobj << /Type /Pages /Count 6 -/Parent 817 0 R +/Parent 821 0 R /Kids [561 0 R 568 0 R 572 0 R 578 0 R 583 0 R 588 0 R] >> endobj @@ -8714,7 +8723,7 @@ endobj << /Type /Pages /Count 6 -/Parent 817 0 R +/Parent 821 0 R /Kids [594 0 R 600 0 R 605 0 R 610 0 R 618 0 R 630 0 R] >> endobj @@ -8722,7 +8731,7 @@ endobj << /Type /Pages /Count 6 -/Parent 817 0 R +/Parent 821 0 R /Kids [640 0 R 646 0 R 651 0 R 659 0 R 666 0 R 671 0 R] >> endobj @@ -8730,59 +8739,59 @@ endobj << /Type /Pages /Count 6 -/Parent 817 0 R -/Kids [677 0 R 686 0 R 692 0 R 698 0 R 705 0 R 718 0 R] +/Parent 821 0 R +/Kids [677 0 R 686 0 R 692 0 R 697 0 R 702 0 R 711 0 R] >> endobj -726 0 obj +725 0 obj << /Type /Pages /Count 6 -/Parent 817 0 R -/Kids [722 0 R 731 0 R 737 0 R 743 0 R 749 0 R 754 0 R] +/Parent 821 0 R +/Kids [722 0 R 727 0 R 735 0 R 741 0 R 747 0 R 753 0 R] >> endobj -769 0 obj +767 0 obj << /Type /Pages -/Count 3 -/Parent 818 0 R -/Kids [764 0 R 771 0 R 777 0 R] ->> -endobj -816 0 obj -<< -/Type /Pages -/Count 36 -/Parent 819 0 R -/Kids [250 0 R 304 0 R 354 0 R 413 0 R 445 0 R 480 0 R] ->> -endobj -817 0 obj -<< -/Type /Pages -/Count 36 -/Parent 819 0 R -/Kids [531 0 R 566 0 R 598 0 R 644 0 R 682 0 R 726 0 R] ->> -endobj -818 0 obj -<< -/Type /Pages -/Count 3 -/Parent 819 0 R -/Kids [769 0 R] ->> -endobj -819 0 obj -<< -/Type /Pages -/Count 75 -/Kids [816 0 R 817 0 R 818 0 R] +/Count 4 +/Parent 822 0 R +/Kids [758 0 R 769 0 R 775 0 R 781 0 R] >> endobj 820 0 obj << +/Type /Pages +/Count 36 +/Parent 823 0 R +/Kids [250 0 R 304 0 R 354 0 R 413 0 R 445 0 R 480 0 R] +>> +endobj +821 0 obj +<< +/Type /Pages +/Count 36 +/Parent 823 0 R +/Kids [531 0 R 566 0 R 598 0 R 644 0 R 682 0 R 725 0 R] +>> +endobj +822 0 obj +<< +/Type /Pages +/Count 4 +/Parent 823 0 R +/Kids [767 0 R] +>> +endobj +823 0 obj +<< +/Type /Pages +/Count 76 +/Kids [820 0 R 821 0 R 822 0 R] +>> +endobj +824 0 obj +<< /Type /Outlines /First 3 0 R /Last 175 0 R @@ -8836,7 +8845,7 @@ endobj << /Title 176 0 R /A 173 0 R -/Parent 820 0 R +/Parent 824 0 R /Prev 163 0 R /First 179 0 R /Last 195 0 R @@ -8863,7 +8872,7 @@ endobj << /Title 164 0 R /A 161 0 R -/Parent 820 0 R +/Parent 824 0 R /Prev 147 0 R /Next 175 0 R /First 167 0 R @@ -8900,7 +8909,7 @@ endobj << /Title 148 0 R /A 145 0 R -/Parent 820 0 R +/Parent 824 0 R /Prev 87 0 R /Next 163 0 R /First 151 0 R @@ -9036,7 +9045,7 @@ endobj << /Title 88 0 R /A 85 0 R -/Parent 820 0 R +/Parent 824 0 R /Prev 79 0 R /Next 147 0 R /First 91 0 R @@ -9055,7 +9064,7 @@ endobj << /Title 80 0 R /A 77 0 R -/Parent 820 0 R +/Parent 824 0 R /Prev 27 0 R /Next 87 0 R /First 83 0 R @@ -9173,7 +9182,7 @@ endobj << /Title 28 0 R /A 25 0 R -/Parent 820 0 R +/Parent 824 0 R /Prev 23 0 R /Next 79 0 R /First 31 0 R @@ -9185,7 +9194,7 @@ endobj << /Title 24 0 R /A 21 0 R -/Parent 820 0 R +/Parent 824 0 R /Prev 7 0 R /Next 27 0 R >> @@ -9219,7 +9228,7 @@ endobj << /Title 8 0 R /A 5 0 R -/Parent 820 0 R +/Parent 824 0 R /Prev 3 0 R /Next 23 0 R /First 11 0 R @@ -9231,526 +9240,532 @@ endobj << /Title 4 0 R /A 1 0 R -/Parent 820 0 R +/Parent 824 0 R /Next 7 0 R >> endobj -821 0 obj +825 0 obj << /Names [(Doc-Start) 243 0 R (figure.1) 334 0 R (page.1) 242 0 R (page.10) 329 0 R (page.11) 333 0 R (page.12) 341 0 R] /Limits [(Doc-Start) (page.12)] >> endobj -822 0 obj +826 0 obj << /Names [(page.13) 353 0 R (page.14) 371 0 R (page.15) 382 0 R (page.16) 390 0 R (page.17) 397 0 R (page.18) 403 0 R] /Limits [(page.13) (page.18)] >> endobj -823 0 obj +827 0 obj << /Names [(page.19) 411 0 R (page.2) 270 0 R (page.20) 420 0 R (page.21) 426 0 R (page.22) 432 0 R (page.23) 436 0 R] /Limits [(page.19) (page.23)] >> endobj -824 0 obj +828 0 obj << /Names [(page.24) 440 0 R (page.25) 444 0 R (page.26) 449 0 R (page.27) 454 0 R (page.28) 460 0 R (page.29) 466 0 R] /Limits [(page.24) (page.29)] >> endobj -825 0 obj +829 0 obj << /Names [(page.3) 276 0 R (page.30) 472 0 R (page.31) 477 0 R (page.32) 487 0 R (page.33) 493 0 R (page.34) 513 0 R] /Limits [(page.3) (page.34)] >> endobj -826 0 obj +830 0 obj << /Names [(page.35) 518 0 R (page.36) 523 0 R (page.37) 528 0 R (page.38) 535 0 R (page.39) 541 0 R (page.4) 280 0 R] /Limits [(page.35) (page.4)] >> endobj -827 0 obj +831 0 obj << /Names [(page.40) 547 0 R (page.41) 553 0 R (page.42) 558 0 R (page.43) 563 0 R (page.44) 570 0 R (page.45) 574 0 R] /Limits [(page.40) (page.45)] >> endobj -828 0 obj +832 0 obj << /Names [(page.46) 580 0 R (page.47) 585 0 R (page.48) 590 0 R (page.49) 596 0 R (page.5) 287 0 R (page.50) 602 0 R] /Limits [(page.46) (page.50)] >> endobj -829 0 obj +833 0 obj << /Names [(page.51) 607 0 R (page.52) 612 0 R (page.53) 620 0 R (page.54) 632 0 R (page.55) 642 0 R (page.56) 648 0 R] /Limits [(page.51) (page.56)] >> endobj -830 0 obj +834 0 obj << /Names [(page.57) 653 0 R (page.58) 661 0 R (page.59) 668 0 R (page.6) 295 0 R (page.60) 673 0 R (page.61) 679 0 R] /Limits [(page.57) (page.61)] >> endobj -831 0 obj -<< -/Names [(page.62) 688 0 R (page.63) 694 0 R (page.64) 700 0 R (page.65) 707 0 R (page.66) 720 0 R (page.67) 724 0 R] -/Limits [(page.62) (page.67)] ->> -endobj -832 0 obj -<< -/Names [(page.68) 733 0 R (page.69) 739 0 R (page.7) 301 0 R (page.70) 745 0 R (page.71) 751 0 R (page.72) 756 0 R] -/Limits [(page.68) (page.72)] ->> -endobj -833 0 obj -<< -/Names [(page.73) 766 0 R (page.74) 773 0 R (page.75) 779 0 R (page.8) 308 0 R (page.9) 324 0 R (paragraph.6.11.2.1) 615 0 R] -/Limits [(page.73) (paragraph.6.11.2.1)] ->> -endobj -834 0 obj -<< -/Names [(paragraph.6.11.2.2) 621 0 R (paragraph.6.11.2.3) 624 0 R (paragraph.6.11.2.4) 626 0 R (paragraph.6.11.2.5) 633 0 R (paragraph.6.11.2.6) 634 0 R (section*.1) 246 0 R] -/Limits [(paragraph.6.11.2.2) (section*.1)] ->> -endobj 835 0 obj << -/Names [(section.1) 2 0 R (section.2) 6 0 R (section.3) 22 0 R (section.4) 26 0 R (section.5) 78 0 R (section.6) 86 0 R] -/Limits [(section.1) (section.6)] +/Names [(page.62) 688 0 R (page.63) 694 0 R (page.64) 699 0 R (page.65) 704 0 R (page.66) 713 0 R (page.67) 724 0 R] +/Limits [(page.62) (page.67)] >> endobj 836 0 obj << -/Names [(section.7) 146 0 R (section.8) 162 0 R (section.9) 174 0 R (subsection.2.1) 10 0 R (subsection.2.2) 14 0 R (subsection.2.3) 18 0 R] -/Limits [(section.7) (subsection.2.3)] +/Names [(page.68) 729 0 R (page.69) 737 0 R (page.7) 301 0 R (page.70) 743 0 R (page.71) 749 0 R (page.72) 755 0 R] +/Limits [(page.68) (page.72)] >> endobj 837 0 obj << -/Names [(subsection.4.1) 30 0 R (subsection.4.10) 66 0 R (subsection.4.11) 70 0 R (subsection.4.12) 74 0 R (subsection.4.2) 34 0 R (subsection.4.3) 38 0 R] -/Limits [(subsection.4.1) (subsection.4.3)] +/Names [(page.73) 760 0 R (page.74) 771 0 R (page.75) 777 0 R (page.76) 783 0 R (page.8) 308 0 R (page.9) 324 0 R] +/Limits [(page.73) (page.9)] >> endobj 838 0 obj << -/Names [(subsection.4.4) 42 0 R (subsection.4.5) 46 0 R (subsection.4.6) 50 0 R (subsection.4.7) 54 0 R (subsection.4.8) 58 0 R (subsection.4.9) 62 0 R] -/Limits [(subsection.4.4) (subsection.4.9)] +/Names [(paragraph.6.11.2.1) 615 0 R (paragraph.6.11.2.2) 621 0 R (paragraph.6.11.2.3) 624 0 R (paragraph.6.11.2.4) 626 0 R (paragraph.6.11.2.5) 633 0 R (paragraph.6.11.2.6) 634 0 R] +/Limits [(paragraph.6.11.2.1) (paragraph.6.11.2.6)] >> endobj 839 0 obj << -/Names [(subsection.5.1) 82 0 R (subsection.6.1) 90 0 R (subsection.6.10) 126 0 R (subsection.6.11) 130 0 R (subsection.6.12) 134 0 R (subsection.6.13) 138 0 R] -/Limits [(subsection.5.1) (subsection.6.13)] +/Names [(section*.1) 246 0 R (section.1) 2 0 R (section.2) 6 0 R (section.3) 22 0 R (section.4) 26 0 R (section.5) 78 0 R] +/Limits [(section*.1) (section.5)] >> endobj 840 0 obj << -/Names [(subsection.6.14) 142 0 R (subsection.6.2) 94 0 R (subsection.6.3) 98 0 R (subsection.6.4) 102 0 R (subsection.6.5) 106 0 R (subsection.6.6) 110 0 R] -/Limits [(subsection.6.14) (subsection.6.6)] +/Names [(section.6) 86 0 R (section.7) 146 0 R (section.8) 162 0 R (section.9) 174 0 R (subsection.2.1) 10 0 R (subsection.2.2) 14 0 R] +/Limits [(section.6) (subsection.2.2)] >> endobj 841 0 obj << -/Names [(subsection.6.7) 114 0 R (subsection.6.8) 118 0 R (subsection.6.9) 122 0 R (subsection.7.1) 150 0 R (subsection.7.2) 154 0 R (subsection.7.3) 158 0 R] -/Limits [(subsection.6.7) (subsection.7.3)] +/Names [(subsection.2.3) 18 0 R (subsection.4.1) 30 0 R (subsection.4.10) 66 0 R (subsection.4.11) 70 0 R (subsection.4.12) 74 0 R (subsection.4.2) 34 0 R] +/Limits [(subsection.2.3) (subsection.4.2)] >> endobj 842 0 obj << -/Names [(subsection.8.1) 166 0 R (subsection.8.2) 170 0 R (subsection.9.1) 178 0 R (subsection.9.2) 182 0 R (subsection.9.3) 186 0 R (subsection.9.4) 190 0 R] -/Limits [(subsection.8.1) (subsection.9.4)] +/Names [(subsection.4.3) 38 0 R (subsection.4.4) 42 0 R (subsection.4.5) 46 0 R (subsection.4.6) 50 0 R (subsection.4.7) 54 0 R (subsection.4.8) 58 0 R] +/Limits [(subsection.4.3) (subsection.4.8)] >> endobj 843 0 obj << -/Names [(subsection.9.5) 194 0 R (subsubsection.2.3.1) 281 0 R (subsubsection.2.3.2) 282 0 R (subsubsection.2.3.3) 288 0 R (subsubsection.2.3.4) 289 0 R (subsubsection.2.3.5) 290 0 R] -/Limits [(subsection.9.5) (subsubsection.2.3.5)] +/Names [(subsection.4.9) 62 0 R (subsection.5.1) 82 0 R (subsection.6.1) 90 0 R (subsection.6.10) 126 0 R (subsection.6.11) 130 0 R (subsection.6.12) 134 0 R] +/Limits [(subsection.4.9) (subsection.6.12)] >> endobj 844 0 obj << -/Names [(subsubsection.2.3.6) 291 0 R (subsubsection.2.3.7) 296 0 R (subsubsection.2.3.8) 297 0 R (subsubsection.2.3.9) 302 0 R (subsubsection.4.1.1) 343 0 R (subsubsection.4.10.1) 473 0 R] -/Limits [(subsubsection.2.3.6) (subsubsection.4.10.1)] +/Names [(subsection.6.13) 138 0 R (subsection.6.14) 142 0 R (subsection.6.2) 94 0 R (subsection.6.3) 98 0 R (subsection.6.4) 102 0 R (subsection.6.5) 106 0 R] +/Limits [(subsection.6.13) (subsection.6.5)] >> endobj 845 0 obj << -/Names [(subsubsection.4.11.1) 479 0 R (subsubsection.4.12.1) 489 0 R (subsubsection.4.2.1) 373 0 R (subsubsection.4.3.1) 392 0 R (subsubsection.4.4.1) 398 0 R (subsubsection.4.5.1) 421 0 R] -/Limits [(subsubsection.4.11.1) (subsubsection.4.5.1)] +/Names [(subsection.6.6) 110 0 R (subsection.6.7) 114 0 R (subsection.6.8) 118 0 R (subsection.6.9) 122 0 R (subsection.7.1) 150 0 R (subsection.7.2) 154 0 R] +/Limits [(subsection.6.6) (subsection.7.2)] >> endobj 846 0 obj << -/Names [(subsubsection.4.6.1) 427 0 R (subsubsection.4.7.1) 455 0 R (subsubsection.4.8.1) 461 0 R (subsubsection.4.9.1) 467 0 R (subsubsection.5.1.1) 514 0 R (subsubsection.6.1.1) 529 0 R] -/Limits [(subsubsection.4.6.1) (subsubsection.6.1.1)] +/Names [(subsection.7.3) 158 0 R (subsection.8.1) 166 0 R (subsection.8.2) 170 0 R (subsection.9.1) 178 0 R (subsection.9.2) 182 0 R (subsection.9.3) 186 0 R] +/Limits [(subsection.7.3) (subsection.9.3)] >> endobj 847 0 obj << -/Names [(subsubsection.6.10.1) 603 0 R (subsubsection.6.11.1) 613 0 R (subsubsection.6.11.2) 614 0 R (subsubsection.6.12.1) 643 0 R (subsubsection.6.13.1) 654 0 R (subsubsection.6.14.1) 663 0 R] -/Limits [(subsubsection.6.10.1) (subsubsection.6.14.1)] +/Names [(subsection.9.4) 190 0 R (subsection.9.5) 194 0 R (subsubsection.2.3.1) 281 0 R (subsubsection.2.3.2) 282 0 R (subsubsection.2.3.3) 288 0 R (subsubsection.2.3.4) 289 0 R] +/Limits [(subsection.9.4) (subsubsection.2.3.4)] >> endobj 848 0 obj << -/Names [(subsubsection.6.2.1) 536 0 R (subsubsection.6.3.1) 542 0 R (subsubsection.6.4.1) 548 0 R (subsubsection.6.5.1) 554 0 R (subsubsection.6.6.1) 564 0 R (subsubsection.6.7.1) 575 0 R] -/Limits [(subsubsection.6.2.1) (subsubsection.6.7.1)] +/Names [(subsubsection.2.3.5) 290 0 R (subsubsection.2.3.6) 291 0 R (subsubsection.2.3.7) 296 0 R (subsubsection.2.3.8) 297 0 R (subsubsection.2.3.9) 302 0 R (subsubsection.4.1.1) 343 0 R] +/Limits [(subsubsection.2.3.5) (subsubsection.4.1.1)] >> endobj 849 0 obj << -/Names [(subsubsection.6.8.1) 581 0 R (subsubsection.6.9.1) 591 0 R (subsubsection.7.1.1) 674 0 R (subsubsection.7.2.1) 680 0 R (subsubsection.7.3.1) 689 0 R (subsubsection.8.1.1) 695 0 R] -/Limits [(subsubsection.6.8.1) (subsubsection.8.1.1)] +/Names [(subsubsection.4.10.1) 473 0 R (subsubsection.4.11.1) 479 0 R (subsubsection.4.12.1) 489 0 R (subsubsection.4.2.1) 373 0 R (subsubsection.4.3.1) 392 0 R (subsubsection.4.4.1) 398 0 R] +/Limits [(subsubsection.4.10.1) (subsubsection.4.4.1)] >> endobj 850 0 obj << -/Names [(subsubsection.8.2.1) 708 0 R (subsubsection.9.1.1) 734 0 R (subsubsection.9.2.1) 740 0 R (subsubsection.9.3.1) 746 0 R (subsubsection.9.4.1) 757 0 R (subsubsection.9.5.1) 780 0 R] -/Limits [(subsubsection.8.2.1) (subsubsection.9.5.1)] +/Names [(subsubsection.4.5.1) 421 0 R (subsubsection.4.6.1) 427 0 R (subsubsection.4.7.1) 455 0 R (subsubsection.4.8.1) 461 0 R (subsubsection.4.9.1) 467 0 R (subsubsection.5.1.1) 514 0 R] +/Limits [(subsubsection.4.5.1) (subsubsection.5.1.1)] >> endobj 851 0 obj << -/Names [(table.1) 283 0 R (table.10) 422 0 R (table.11) 428 0 R (table.12) 450 0 R (table.13) 456 0 R (table.14) 462 0 R] -/Limits [(table.1) (table.14)] +/Names [(subsubsection.6.1.1) 529 0 R (subsubsection.6.10.1) 603 0 R (subsubsection.6.11.1) 613 0 R (subsubsection.6.11.2) 614 0 R (subsubsection.6.12.1) 643 0 R (subsubsection.6.13.1) 654 0 R] +/Limits [(subsubsection.6.1.1) (subsubsection.6.13.1)] >> endobj 852 0 obj << -/Names [(table.15) 468 0 R (table.16) 478 0 R (table.17) 488 0 R (table.18) 494 0 R (table.19) 519 0 R (table.2) 303 0 R] -/Limits [(table.15) (table.2)] +/Names [(subsubsection.6.14.1) 663 0 R (subsubsection.6.2.1) 536 0 R (subsubsection.6.3.1) 542 0 R (subsubsection.6.4.1) 548 0 R (subsubsection.6.5.1) 554 0 R (subsubsection.6.6.1) 564 0 R] +/Limits [(subsubsection.6.14.1) (subsubsection.6.6.1)] >> endobj 853 0 obj << -/Names [(table.20) 530 0 R (table.21) 537 0 R (table.22) 543 0 R (table.23) 549 0 R (table.24) 559 0 R (table.25) 565 0 R] -/Limits [(table.20) (table.25)] +/Names [(subsubsection.6.7.1) 575 0 R (subsubsection.6.8.1) 581 0 R (subsubsection.6.9.1) 591 0 R (subsubsection.7.1.1) 674 0 R (subsubsection.7.2.1) 680 0 R (subsubsection.7.3.1) 689 0 R] +/Limits [(subsubsection.6.7.1) (subsubsection.7.3.1)] >> endobj 854 0 obj << -/Names [(table.26) 576 0 R (table.27) 586 0 R (table.28) 597 0 R (table.29) 608 0 R (table.3) 342 0 R (table.30) 616 0 R] -/Limits [(table.26) (table.30)] +/Names [(subsubsection.8.1.1) 695 0 R (subsubsection.8.2.1) 705 0 R (subsubsection.9.1.1) 738 0 R (subsubsection.9.2.1) 744 0 R (subsubsection.9.3.1) 750 0 R (subsubsection.9.4.1) 761 0 R] +/Limits [(subsubsection.8.1.1) (subsubsection.9.4.1)] >> endobj 855 0 obj << -/Names [(table.31) 623 0 R (table.32) 625 0 R (table.33) 627 0 R (table.34) 628 0 R (table.35) 638 0 R (table.36) 649 0 R] -/Limits [(table.31) (table.36)] +/Names [(subsubsection.9.5.1) 784 0 R (table.1) 283 0 R (table.10) 422 0 R (table.11) 428 0 R (table.12) 450 0 R (table.13) 456 0 R] +/Limits [(subsubsection.9.5.1) (table.13)] >> endobj 856 0 obj << -/Names [(table.37) 662 0 R (table.38) 669 0 R (table.39) 675 0 R (table.4) 372 0 R (table.40) 681 0 R (table.41) 690 0 R] -/Limits [(table.37) (table.41)] +/Names [(table.14) 462 0 R (table.15) 468 0 R (table.16) 478 0 R (table.17) 488 0 R (table.18) 494 0 R (table.19) 519 0 R] +/Limits [(table.14) (table.19)] >> endobj 857 0 obj << -/Names [(table.42) 696 0 R (table.43) 709 0 R (table.44) 725 0 R (table.45) 735 0 R (table.46) 741 0 R (table.47) 752 0 R] -/Limits [(table.42) (table.47)] +/Names [(table.2) 303 0 R (table.20) 530 0 R (table.21) 537 0 R (table.22) 543 0 R (table.23) 549 0 R (table.24) 559 0 R] +/Limits [(table.2) (table.24)] >> endobj 858 0 obj << -/Names [(table.48) 758 0 R (table.49) 761 0 R (table.5) 374 0 R (table.50) 762 0 R (table.51) 767 0 R (table.52) 768 0 R] -/Limits [(table.48) (table.52)] +/Names [(table.25) 565 0 R (table.26) 576 0 R (table.27) 586 0 R (table.28) 597 0 R (table.29) 608 0 R (table.3) 342 0 R] +/Limits [(table.25) (table.3)] >> endobj 859 0 obj << -/Names [(table.53) 774 0 R (table.54) 775 0 R (table.6) 391 0 R (table.7) 393 0 R (table.8) 399 0 R (table.9) 412 0 R] -/Limits [(table.53) (table.9)] +/Names [(table.30) 616 0 R (table.31) 623 0 R (table.32) 625 0 R (table.33) 627 0 R (table.34) 628 0 R (table.35) 638 0 R] +/Limits [(table.30) (table.35)] >> endobj 860 0 obj << -/Kids [821 0 R 822 0 R 823 0 R 824 0 R 825 0 R 826 0 R] -/Limits [(Doc-Start) (page.4)] +/Names [(table.36) 649 0 R (table.37) 662 0 R (table.38) 669 0 R (table.39) 675 0 R (table.4) 372 0 R (table.40) 681 0 R] +/Limits [(table.36) (table.40)] >> endobj 861 0 obj << -/Kids [827 0 R 828 0 R 829 0 R 830 0 R 831 0 R 832 0 R] -/Limits [(page.40) (page.72)] +/Names [(table.41) 690 0 R (table.42) 700 0 R (table.43) 706 0 R (table.44) 730 0 R (table.45) 739 0 R (table.46) 745 0 R] +/Limits [(table.41) (table.46)] >> endobj 862 0 obj << -/Kids [833 0 R 834 0 R 835 0 R 836 0 R 837 0 R 838 0 R] -/Limits [(page.73) (subsection.4.9)] +/Names [(table.47) 756 0 R (table.48) 762 0 R (table.49) 765 0 R (table.5) 374 0 R (table.50) 766 0 R (table.51) 772 0 R] +/Limits [(table.47) (table.51)] >> endobj 863 0 obj << -/Kids [839 0 R 840 0 R 841 0 R 842 0 R 843 0 R 844 0 R] -/Limits [(subsection.5.1) (subsubsection.4.10.1)] +/Names [(table.52) 773 0 R (table.53) 778 0 R (table.54) 779 0 R (table.6) 391 0 R (table.7) 393 0 R (table.8) 399 0 R] +/Limits [(table.52) (table.8)] >> endobj 864 0 obj << -/Kids [845 0 R 846 0 R 847 0 R 848 0 R 849 0 R 850 0 R] -/Limits [(subsubsection.4.11.1) (subsubsection.9.5.1)] +/Names [(table.9) 412 0 R] +/Limits [(table.9) (table.9)] >> endobj 865 0 obj << -/Kids [851 0 R 852 0 R 853 0 R 854 0 R 855 0 R 856 0 R] -/Limits [(table.1) (table.41)] +/Kids [825 0 R 826 0 R 827 0 R 828 0 R 829 0 R 830 0 R] +/Limits [(Doc-Start) (page.4)] >> endobj 866 0 obj << -/Kids [857 0 R 858 0 R 859 0 R] -/Limits [(table.42) (table.9)] +/Kids [831 0 R 832 0 R 833 0 R 834 0 R 835 0 R 836 0 R] +/Limits [(page.40) (page.72)] >> endobj 867 0 obj << -/Kids [860 0 R 861 0 R 862 0 R 863 0 R 864 0 R 865 0 R] -/Limits [(Doc-Start) (table.41)] +/Kids [837 0 R 838 0 R 839 0 R 840 0 R 841 0 R 842 0 R] +/Limits [(page.73) (subsection.4.8)] >> endobj 868 0 obj << -/Kids [866 0 R] -/Limits [(table.42) (table.9)] +/Kids [843 0 R 844 0 R 845 0 R 846 0 R 847 0 R 848 0 R] +/Limits [(subsection.4.9) (subsubsection.4.1.1)] >> endobj 869 0 obj << -/Kids [867 0 R 868 0 R] -/Limits [(Doc-Start) (table.9)] +/Kids [849 0 R 850 0 R 851 0 R 852 0 R 853 0 R 854 0 R] +/Limits [(subsubsection.4.10.1) (subsubsection.9.4.1)] >> endobj 870 0 obj << -/Dests 869 0 R +/Kids [855 0 R 856 0 R 857 0 R 858 0 R 859 0 R 860 0 R] +/Limits [(subsubsection.9.5.1) (table.40)] >> endobj 871 0 obj << -/Type /Catalog -/Pages 819 0 R -/Outlines 820 0 R -/Names 870 0 R -/PageMode/UseOutlines -/OpenAction 197 0 R +/Kids [861 0 R 862 0 R 863 0 R 864 0 R] +/Limits [(table.41) (table.9)] >> endobj 872 0 obj << +/Kids [865 0 R 866 0 R 867 0 R 868 0 R 869 0 R 870 0 R] +/Limits [(Doc-Start) (table.40)] +>> +endobj +873 0 obj +<< +/Kids [871 0 R] +/Limits [(table.41) (table.9)] +>> +endobj +874 0 obj +<< +/Kids [872 0 R 873 0 R] +/Limits [(Doc-Start) (table.9)] +>> +endobj +875 0 obj +<< +/Dests 874 0 R +>> +endobj +876 0 obj +<< +/Type /Catalog +/Pages 823 0 R +/Outlines 824 0 R +/Names 875 0 R +/PageMode/UseOutlines +/OpenAction 197 0 R +>> +endobj +877 0 obj +<< /Author(\376\377\000C\000h\000r\000i\000s\000t\000i\000a\000n\000\040\000R\000e\000i\000c\000h\000,\000\040\000P\000a\000t\000r\000i\000c\000k\000\040\000R\000y\000a\000n\000,\000\040\000R\000i\000m\000m\000a\000\040\000B\000e\000l\000e\000n\000k\000a\000y\000a\000,\000\040\000K\000a\000r\000t\000h\000i\000k\000\040\000N\000a\000t\000a\000r\000a\000j\000a\000n\000\040\000a\000n\000d\000\040\000C\000l\000a\000i\000r\000\040\000B\000l\000a\000c\000k\000e\000t\000e\000r)/Title(\376\377\000O\000M\000O\000P\000\040\000C\000o\000m\000m\000o\000n\000\040\000D\000a\000t\000a\000\040\000M\000o\000d\000e\000l\000\040\000S\000p\000e\000c\000i\000f\000i\000c\000a\000t\000i\000o\000n\000s)/Subject()/Creator(LaTeX with hyperref package)/Producer(pdfTeX-1.40.18)/Keywords() -/CreationDate (D:20171109142029-05'00') -/ModDate (D:20171109142029-05'00') +/CreationDate (D:20171117150209-05'00') +/ModDate (D:20171117150209-05'00') /Trapped /False /PTEX.Fullbanner (This is MiKTeX-pdfTeX 2.9.6354 (1.40.18)) >> endobj xref -0 873 +0 878 0000000000 65535 f 0000000015 00000 n -0000023166 00000 n -0001055483 00000 n +0000023156 00000 n +0001056523 00000 n 0000000060 00000 n 0000000121 00000 n -0000023221 00000 n -0001055362 00000 n +0000023211 00000 n +0001056402 00000 n 0000000166 00000 n 0000000242 00000 n -0000027601 00000 n -0001055290 00000 n +0000027591 00000 n +0001056330 00000 n 0000000292 00000 n 0000000502 00000 n -0000027657 00000 n -0001055204 00000 n +0000027647 00000 n +0001056244 00000 n 0000000553 00000 n 0000000668 00000 n -0000030767 00000 n -0001055131 00000 n +0000030757 00000 n +0001056171 00000 n 0000000719 00000 n 0000000862 00000 n -0000041508 00000 n -0001055044 00000 n +0000041498 00000 n +0001056084 00000 n 0000000908 00000 n 0000001026 00000 n -0000047355 00000 n -0001054918 00000 n +0000047345 00000 n +0001055958 00000 n 0000001072 00000 n 0000001227 00000 n -0000052992 00000 n -0001054844 00000 n +0000052982 00000 n +0001055884 00000 n 0000001278 00000 n 0000001340 00000 n -0000118129 00000 n -0001054757 00000 n +0000118119 00000 n +0001055797 00000 n 0000001391 00000 n 0000001468 00000 n -0000126077 00000 n -0001054670 00000 n +0000126067 00000 n +0001055710 00000 n 0000001519 00000 n 0000001576 00000 n -0000126246 00000 n -0001054583 00000 n +0000126236 00000 n +0001055623 00000 n 0000001627 00000 n 0000001722 00000 n -0000133668 00000 n -0001054496 00000 n +0000133658 00000 n +0001055536 00000 n 0000001773 00000 n 0000001903 00000 n -0000137483 00000 n -0001054409 00000 n +0000137473 00000 n +0001055449 00000 n 0000001954 00000 n 0000002041 00000 n -0000146405 00000 n -0001054322 00000 n +0000146395 00000 n +0001055362 00000 n 0000002092 00000 n 0000002197 00000 n -0000149233 00000 n -0001054235 00000 n +0000149223 00000 n +0001055275 00000 n 0000002248 00000 n 0000002358 00000 n -0000151837 00000 n -0001054148 00000 n +0000151827 00000 n +0001055188 00000 n 0000002409 00000 n 0000002550 00000 n -0000154915 00000 n -0001054061 00000 n +0000154905 00000 n +0001055101 00000 n 0000002602 00000 n 0000002697 00000 n -0000161580 00000 n -0001053974 00000 n +0000161570 00000 n +0001055014 00000 n 0000002749 00000 n 0000002864 00000 n -0000161750 00000 n -0001053900 00000 n +0000161740 00000 n +0001054940 00000 n 0000002916 00000 n 0000003046 00000 n -0000164865 00000 n -0001053775 00000 n +0000164855 00000 n +0001054815 00000 n 0000003092 00000 n 0000003227 00000 n -0000171901 00000 n -0001053714 00000 n +0000171891 00000 n +0001054754 00000 n 0000003278 00000 n 0000003358 00000 n -0000176711 00000 n -0001053586 00000 n +0000176701 00000 n +0001054626 00000 n 0000003404 00000 n 0000003605 00000 n -0000208131 00000 n -0001053512 00000 n +0000208121 00000 n +0001054552 00000 n 0000003656 00000 n 0000003713 00000 n -0000213279 00000 n -0001053425 00000 n +0000213269 00000 n +0001054465 00000 n 0000003764 00000 n 0000003884 00000 n -0000216453 00000 n -0001053336 00000 n +0000216443 00000 n +0001054376 00000 n 0000003935 00000 n 0000004003 00000 n -0000218986 00000 n -0001053245 00000 n +0000218976 00000 n +0001054285 00000 n 0000004055 00000 n 0000004108 00000 n 0000222035 00000 n -0001053153 00000 n +0001054193 00000 n 0000004160 00000 n 0000004271 00000 n -0000225769 00000 n -0001053061 00000 n +0000225738 00000 n +0001054101 00000 n 0000004323 00000 n 0000004454 00000 n -0000231394 00000 n -0001052969 00000 n +0000231451 00000 n +0001054009 00000 n 0000004506 00000 n 0000004602 00000 n -0000237752 00000 n -0001052877 00000 n +0000237809 00000 n +0001053917 00000 n 0000004654 00000 n 0000004760 00000 n -0000243098 00000 n -0001052785 00000 n +0000243155 00000 n +0001053825 00000 n 0000004812 00000 n 0000004943 00000 n -0000249066 00000 n -0001052693 00000 n +0000249123 00000 n +0001053733 00000 n 0000004996 00000 n 0000005079 00000 n -0000255115 00000 n -0001052601 00000 n +0000255229 00000 n +0001053641 00000 n 0000005132 00000 n 0000005180 00000 n -0000264156 00000 n -0001052509 00000 n +0000264256 00000 n +0001053549 00000 n 0000005233 00000 n 0000005304 00000 n -0000268923 00000 n -0001052417 00000 n +0000269009 00000 n +0001053457 00000 n 0000005357 00000 n 0000005440 00000 n -0000275554 00000 n -0001052339 00000 n +0000275640 00000 n +0001053379 00000 n 0000005493 00000 n 0000005609 00000 n -0000275725 00000 n -0001052208 00000 n +0000275811 00000 n +0001053248 00000 n 0000005656 00000 n 0000005886 00000 n -0000304442 00000 n -0001052129 00000 n +0000304528 00000 n +0001053169 00000 n 0000005938 00000 n 0000006006 00000 n -0000307572 00000 n -0001052036 00000 n +0000307658 00000 n +0001053076 00000 n 0000006058 00000 n 0000006134 00000 n -0000310481 00000 n -0001051957 00000 n +0000310576 00000 n +0001052997 00000 n 0000006186 00000 n 0000006254 00000 n -0000314252 00000 n -0001051825 00000 n +0000314347 00000 n +0001052865 00000 n 0000006301 00000 n 0000006546 00000 n -0000314308 00000 n -0001051746 00000 n +0000314403 00000 n +0001052786 00000 n 0000006598 00000 n 0000006717 00000 n -0000317683 00000 n -0001051667 00000 n +0000317122 00000 n +0001052707 00000 n 0000006769 00000 n 0000006817 00000 n -0000329125 00000 n -0001051549 00000 n +0000330366 00000 n +0001052589 00000 n 0000006864 00000 n 0000007043 00000 n -0000492158 00000 n -0001051470 00000 n +0000493399 00000 n +0001052510 00000 n 0000007095 00000 n 0000007153 00000 n -0000495018 00000 n -0001051377 00000 n +0000496259 00000 n +0001052417 00000 n 0000007205 00000 n 0000007316 00000 n -0000497948 00000 n -0001051284 00000 n +0000499188 00000 n +0001052324 00000 n 0000007368 00000 n 0000007439 00000 n -0000782022 00000 n -0001051191 00000 n +0000783263 00000 n +0001052231 00000 n 0000007491 00000 n 0000007562 00000 n -0000789960 00000 n -0001051112 00000 n +0000791201 00000 n +0001052152 00000 n 0000007614 00000 n 0000007710 00000 n 0000009277 00000 n @@ -9794,645 +9809,650 @@ xref 0000015459 00000 n 0000015613 00000 n 0000015767 00000 n -0000020489 00000 n +0000020479 00000 n 0000016088 00000 n 0000007760 00000 n 0000015921 00000 n 0000015978 00000 n -0001047451 00000 n -0001047796 00000 n +0001048483 00000 n +0001048828 00000 n 0000016031 00000 n -0001047108 00000 n -0001046938 00000 n -0001047278 00000 n -0001049149 00000 n -0000020640 00000 n -0000020796 00000 n -0000020952 00000 n -0000021102 00000 n -0000021258 00000 n -0000021414 00000 n -0000021570 00000 n -0000021726 00000 n -0000021882 00000 n -0000019017 00000 n -0000022064 00000 n -0000022261 00000 n -0000022487 00000 n -0000022697 00000 n -0000022912 00000 n -0000027380 00000 n -0000023276 00000 n -0000018773 00000 n +0001048140 00000 n +0001047970 00000 n +0001048310 00000 n +0001050181 00000 n +0000020630 00000 n +0000020786 00000 n +0000020942 00000 n +0000021092 00000 n +0000021248 00000 n +0000021404 00000 n +0000021560 00000 n +0000021716 00000 n +0000021872 00000 n +0000019007 00000 n +0000022054 00000 n +0000022251 00000 n +0000022477 00000 n +0000022687 00000 n +0000022902 00000 n +0000027370 00000 n +0000023266 00000 n +0000018763 00000 n 0000016212 00000 n -0000023109 00000 n -0001048802 00000 n -0000019896 00000 n -0000027713 00000 n -0000027248 00000 n -0000023431 00000 n -0000027544 00000 n -0000030993 00000 n -0000030598 00000 n -0000027824 00000 n -0000030710 00000 n -0000030823 00000 n -0000030880 00000 n -0000030937 00000 n -0000034748 00000 n -0000034355 00000 n -0000031104 00000 n -0000034467 00000 n -0000034524 00000 n -0000034577 00000 n -0000034634 00000 n -0000034691 00000 n -0000038622 00000 n -0000038343 00000 n -0000034846 00000 n -0000038455 00000 n -0000038512 00000 n -0000038565 00000 n -0000041621 00000 n -0000041282 00000 n -0000038720 00000 n -0000041394 00000 n -0000041451 00000 n -0000041564 00000 n -0001049266 00000 n -0000044432 00000 n -0000044263 00000 n -0000041732 00000 n -0000044375 00000 n -0000046898 00000 n -0000047097 00000 n -0000050859 00000 n -0000051057 00000 n -0000051263 00000 n -0000051476 00000 n -0000051681 00000 n -0000051889 00000 n -0000052097 00000 n -0000052311 00000 n -0000052515 00000 n -0000052725 00000 n -0000047411 00000 n -0000046758 00000 n -0000044504 00000 n -0000047298 00000 n -0000053553 00000 n -0000053048 00000 n -0000050655 00000 n -0000047496 00000 n -0000052935 00000 n -0000105608 00000 n -0000053441 00000 n -0000053146 00000 n -0000105489 00000 n -0000105546 00000 n -0000108237 00000 n -0000108451 00000 n -0000108651 00000 n -0000109026 00000 n -0000108089 00000 n -0000105716 00000 n -0000108855 00000 n -0000108912 00000 n -0000108969 00000 n -0000113197 00000 n -0000113406 00000 n -0000113620 00000 n -0000113830 00000 n -0000114040 00000 n -0000114298 00000 n -0000114569 00000 n -0000113025 00000 n -0000109111 00000 n -0000114512 00000 n -0001049383 00000 n -0000117642 00000 n -0000117856 00000 n -0000119564 00000 n -0000119785 00000 n -0000120004 00000 n -0000120224 00000 n -0000120444 00000 n -0000120661 00000 n -0000120880 00000 n -0000121101 00000 n -0000121318 00000 n -0000121538 00000 n -0000121761 00000 n -0000118352 00000 n -0000117502 00000 n -0000114654 00000 n -0000118072 00000 n -0000118181 00000 n -0000118238 00000 n -0000118295 00000 n -0000121984 00000 n -0000122202 00000 n -0000124954 00000 n -0000125177 00000 n -0000122479 00000 n -0000119336 00000 n -0000118463 00000 n -0000122422 00000 n -0000125399 00000 n -0000125613 00000 n -0000125819 00000 n -0000129232 00000 n -0000126358 00000 n -0000124790 00000 n -0000122551 00000 n -0000126020 00000 n -0000126132 00000 n -0000126189 00000 n -0000126302 00000 n -0000129603 00000 n -0000129100 00000 n -0000126469 00000 n -0000129432 00000 n -0000129489 00000 n -0000129546 00000 n -0000131258 00000 n -0000131089 00000 n -0000129701 00000 n -0000131201 00000 n -0000133004 00000 n -0000133209 00000 n -0000133410 00000 n -0000136545 00000 n -0000133781 00000 n -0000132856 00000 n -0000131330 00000 n -0000133611 00000 n -0000133724 00000 n -0001049500 00000 n -0000136751 00000 n -0000136957 00000 n -0000137166 00000 n -0000137596 00000 n -0000136389 00000 n -0000133866 00000 n -0000137370 00000 n -0000137427 00000 n -0000137539 00000 n -0000140341 00000 n -0000140058 00000 n -0000137707 00000 n -0000140170 00000 n -0000140227 00000 n -0000140284 00000 n -0000141483 00000 n -0000141314 00000 n -0000140439 00000 n -0000141426 00000 n -0000142688 00000 n -0000142519 00000 n -0000141555 00000 n -0000142631 00000 n -0000143870 00000 n -0000143701 00000 n -0000142760 00000 n -0000143813 00000 n -0000145092 00000 n -0000144923 00000 n -0000143942 00000 n -0000145035 00000 n -0001049617 00000 n -0000146518 00000 n -0000146236 00000 n -0000145164 00000 n -0000146348 00000 n -0000146461 00000 n -0000149346 00000 n -0000149007 00000 n -0000146603 00000 n -0000149119 00000 n -0000149176 00000 n -0000149289 00000 n -0000151950 00000 n -0000151615 00000 n -0000149457 00000 n -0000151727 00000 n -0000151784 00000 n -0000151893 00000 n -0000155028 00000 n -0000154693 00000 n -0000152061 00000 n -0000154805 00000 n -0000154862 00000 n -0000154971 00000 n -0000158194 00000 n -0000157968 00000 n -0000155139 00000 n -0000158080 00000 n -0000158137 00000 n -0000161805 00000 n -0000161411 00000 n -0000158292 00000 n -0000161523 00000 n -0000161636 00000 n -0000161693 00000 n -0001049734 00000 n -0000164292 00000 n -0000164491 00000 n -0000166450 00000 n -0000164921 00000 n -0000164152 00000 n -0000161916 00000 n -0000164694 00000 n -0000164751 00000 n -0000164808 00000 n -0000172014 00000 n -0000166338 00000 n -0000165032 00000 n -0000171844 00000 n -0000171957 00000 n -0000173735 00000 n -0000173934 00000 n -0000174145 00000 n -0000174346 00000 n -0000174544 00000 n -0000174753 00000 n -0000174965 00000 n -0000175171 00000 n -0000175379 00000 n -0000175592 00000 n -0000175796 00000 n -0000175992 00000 n -0000176191 00000 n -0000176394 00000 n -0000177624 00000 n -0000176767 00000 n -0000173499 00000 n -0000172135 00000 n -0000176601 00000 n -0000176658 00000 n -0000208244 00000 n -0000177512 00000 n -0000176878 00000 n -0000208074 00000 n -0000208187 00000 n -0000210553 00000 n -0000210384 00000 n -0000208365 00000 n -0000210496 00000 n -0001048481 00000 n -0000213392 00000 n -0000213053 00000 n -0000210651 00000 n -0000213165 00000 n -0000213222 00000 n -0000213335 00000 n -0001049851 00000 n -0000216566 00000 n -0000216231 00000 n -0000213503 00000 n -0000216343 00000 n -0000216400 00000 n -0000216509 00000 n -0000219100 00000 n -0000218760 00000 n -0000216677 00000 n -0000218872 00000 n -0000218929 00000 n -0000219043 00000 n +0000023099 00000 n +0001049834 00000 n +0000019886 00000 n +0000027703 00000 n +0000027238 00000 n +0000023421 00000 n +0000027534 00000 n +0000030983 00000 n +0000030588 00000 n +0000027814 00000 n +0000030700 00000 n +0000030813 00000 n +0000030870 00000 n +0000030927 00000 n +0000034738 00000 n +0000034345 00000 n +0000031094 00000 n +0000034457 00000 n +0000034514 00000 n +0000034567 00000 n +0000034624 00000 n +0000034681 00000 n +0000038612 00000 n +0000038333 00000 n +0000034836 00000 n +0000038445 00000 n +0000038502 00000 n +0000038555 00000 n +0000041611 00000 n +0000041272 00000 n +0000038710 00000 n +0000041384 00000 n +0000041441 00000 n +0000041554 00000 n +0001050298 00000 n +0000044422 00000 n +0000044253 00000 n +0000041722 00000 n +0000044365 00000 n +0000046888 00000 n +0000047087 00000 n +0000050849 00000 n +0000051047 00000 n +0000051253 00000 n +0000051466 00000 n +0000051671 00000 n +0000051879 00000 n +0000052087 00000 n +0000052301 00000 n +0000052505 00000 n +0000052715 00000 n +0000047401 00000 n +0000046748 00000 n +0000044494 00000 n +0000047288 00000 n +0000053543 00000 n +0000053038 00000 n +0000050645 00000 n +0000047486 00000 n +0000052925 00000 n +0000105598 00000 n +0000053431 00000 n +0000053136 00000 n +0000105479 00000 n +0000105536 00000 n +0000108227 00000 n +0000108441 00000 n +0000108641 00000 n +0000109016 00000 n +0000108079 00000 n +0000105706 00000 n +0000108845 00000 n +0000108902 00000 n +0000108959 00000 n +0000113187 00000 n +0000113396 00000 n +0000113610 00000 n +0000113820 00000 n +0000114030 00000 n +0000114288 00000 n +0000114559 00000 n +0000113015 00000 n +0000109101 00000 n +0000114502 00000 n +0001050415 00000 n +0000117632 00000 n +0000117846 00000 n +0000119554 00000 n +0000119775 00000 n +0000119994 00000 n +0000120214 00000 n +0000120434 00000 n +0000120651 00000 n +0000120870 00000 n +0000121091 00000 n +0000121308 00000 n +0000121528 00000 n +0000121751 00000 n +0000118342 00000 n +0000117492 00000 n +0000114644 00000 n +0000118062 00000 n +0000118171 00000 n +0000118228 00000 n +0000118285 00000 n +0000121974 00000 n +0000122192 00000 n +0000124944 00000 n +0000125167 00000 n +0000122469 00000 n +0000119326 00000 n +0000118453 00000 n +0000122412 00000 n +0000125389 00000 n +0000125603 00000 n +0000125809 00000 n +0000129222 00000 n +0000126348 00000 n +0000124780 00000 n +0000122541 00000 n +0000126010 00000 n +0000126122 00000 n +0000126179 00000 n +0000126292 00000 n +0000129593 00000 n +0000129090 00000 n +0000126459 00000 n +0000129422 00000 n +0000129479 00000 n +0000129536 00000 n +0000131248 00000 n +0000131079 00000 n +0000129691 00000 n +0000131191 00000 n +0000132994 00000 n +0000133199 00000 n +0000133400 00000 n +0000136535 00000 n +0000133771 00000 n +0000132846 00000 n +0000131320 00000 n +0000133601 00000 n +0000133714 00000 n +0001050532 00000 n +0000136741 00000 n +0000136947 00000 n +0000137156 00000 n +0000137586 00000 n +0000136379 00000 n +0000133856 00000 n +0000137360 00000 n +0000137417 00000 n +0000137529 00000 n +0000140331 00000 n +0000140048 00000 n +0000137697 00000 n +0000140160 00000 n +0000140217 00000 n +0000140274 00000 n +0000141473 00000 n +0000141304 00000 n +0000140429 00000 n +0000141416 00000 n +0000142678 00000 n +0000142509 00000 n +0000141545 00000 n +0000142621 00000 n +0000143860 00000 n +0000143691 00000 n +0000142750 00000 n +0000143803 00000 n +0000145082 00000 n +0000144913 00000 n +0000143932 00000 n +0000145025 00000 n +0001050649 00000 n +0000146508 00000 n +0000146226 00000 n +0000145154 00000 n +0000146338 00000 n +0000146451 00000 n +0000149336 00000 n +0000148997 00000 n +0000146593 00000 n +0000149109 00000 n +0000149166 00000 n +0000149279 00000 n +0000151940 00000 n +0000151605 00000 n +0000149447 00000 n +0000151717 00000 n +0000151774 00000 n +0000151883 00000 n +0000155018 00000 n +0000154683 00000 n +0000152051 00000 n +0000154795 00000 n +0000154852 00000 n +0000154961 00000 n +0000158184 00000 n +0000157958 00000 n +0000155129 00000 n +0000158070 00000 n +0000158127 00000 n +0000161795 00000 n +0000161401 00000 n +0000158282 00000 n +0000161513 00000 n +0000161626 00000 n +0000161683 00000 n +0001050766 00000 n +0000164282 00000 n +0000164481 00000 n +0000166440 00000 n +0000164911 00000 n +0000164142 00000 n +0000161906 00000 n +0000164684 00000 n +0000164741 00000 n +0000164798 00000 n +0000172004 00000 n +0000166328 00000 n +0000165022 00000 n +0000171834 00000 n +0000171947 00000 n +0000173725 00000 n +0000173924 00000 n +0000174135 00000 n +0000174336 00000 n +0000174534 00000 n +0000174743 00000 n +0000174955 00000 n +0000175161 00000 n +0000175369 00000 n +0000175582 00000 n +0000175786 00000 n +0000175982 00000 n +0000176181 00000 n +0000176384 00000 n +0000177614 00000 n +0000176757 00000 n +0000173489 00000 n +0000172125 00000 n +0000176591 00000 n +0000176648 00000 n +0000208234 00000 n +0000177502 00000 n +0000176868 00000 n +0000208064 00000 n +0000208177 00000 n +0000210543 00000 n +0000210374 00000 n +0000208355 00000 n +0000210486 00000 n +0001049513 00000 n +0000213382 00000 n +0000213043 00000 n +0000210641 00000 n +0000213155 00000 n +0000213212 00000 n +0000213325 00000 n +0001050883 00000 n +0000216556 00000 n +0000216221 00000 n +0000213493 00000 n +0000216333 00000 n +0000216390 00000 n +0000216499 00000 n +0000219090 00000 n +0000218750 00000 n +0000216667 00000 n +0000218862 00000 n +0000218919 00000 n +0000219033 00000 n 0000222149 00000 n 0000221809 00000 n -0000219211 00000 n +0000219201 00000 n 0000221921 00000 n 0000221978 00000 n 0000222092 00000 n -0000225826 00000 n -0000225543 00000 n +0000225795 00000 n +0000225513 00000 n 0000222260 00000 n -0000225655 00000 n -0000225712 00000 n +0000225625 00000 n +0000225682 00000 n +0000228047 00000 n +0000227821 00000 n +0000225906 00000 n +0000227933 00000 n 0000227990 00000 n -0000227765 00000 n -0000225937 00000 n -0000227877 00000 n -0000227934 00000 n -0000231507 00000 n -0000231172 00000 n -0000228075 00000 n -0000231284 00000 n +0000231564 00000 n +0000231229 00000 n +0000228132 00000 n 0000231341 00000 n -0000231450 00000 n -0001049968 00000 n +0000231398 00000 n +0000231507 00000 n +0001051000 00000 n +0000233940 00000 n +0000233771 00000 n +0000231675 00000 n 0000233883 00000 n -0000233714 00000 n -0000231618 00000 n -0000233826 00000 n -0000237865 00000 n -0000237526 00000 n -0000233955 00000 n -0000237638 00000 n +0000237922 00000 n +0000237583 00000 n +0000234012 00000 n 0000237695 00000 n -0000237809 00000 n -0000240368 00000 n -0000240142 00000 n -0000237976 00000 n -0000240254 00000 n +0000237752 00000 n +0000237866 00000 n +0000240425 00000 n +0000240199 00000 n +0000238033 00000 n 0000240311 00000 n +0000240368 00000 n +0000243269 00000 n +0000242986 00000 n +0000240523 00000 n +0000243098 00000 n 0000243212 00000 n -0000242929 00000 n -0000240466 00000 n -0000243041 00000 n -0000243155 00000 n -0000246379 00000 n -0000246153 00000 n -0000243310 00000 n -0000246265 00000 n +0000246436 00000 n +0000246210 00000 n +0000243367 00000 n 0000246322 00000 n -0000248769 00000 n +0000246379 00000 n +0000248826 00000 n +0000249233 00000 n +0000248694 00000 n +0000246534 00000 n +0000249066 00000 n 0000249176 00000 n -0000248637 00000 n -0000246477 00000 n -0000249009 00000 n -0000249119 00000 n -0001050085 00000 n -0000252584 00000 n -0000252358 00000 n -0000249261 00000 n -0000252470 00000 n +0001051117 00000 n +0000252641 00000 n +0000252415 00000 n +0000249318 00000 n 0000252527 00000 n -0000255229 00000 n -0000254946 00000 n -0000252682 00000 n -0000255058 00000 n +0000252584 00000 n +0000255343 00000 n +0000255060 00000 n +0000252739 00000 n 0000255172 00000 n -0000258869 00000 n -0000258476 00000 n -0000255327 00000 n -0000258588 00000 n -0000258645 00000 n -0000258698 00000 n -0000258755 00000 n +0000255286 00000 n +0000258983 00000 n +0000258590 00000 n +0000255441 00000 n +0000258702 00000 n +0000258759 00000 n 0000258812 00000 n -0000261295 00000 n -0000260731 00000 n -0000258967 00000 n -0000260843 00000 n -0000260900 00000 n -0001048631 00000 n -0000260953 00000 n -0000261010 00000 n +0000258869 00000 n +0000258926 00000 n +0000261409 00000 n +0000260845 00000 n +0000259081 00000 n +0000260957 00000 n +0000261014 00000 n +0001049663 00000 n 0000261067 00000 n 0000261124 00000 n 0000261181 00000 n 0000261238 00000 n -0000264270 00000 n -0000263877 00000 n -0000261406 00000 n -0000263989 00000 n -0000264046 00000 n -0000264099 00000 n -0001047968 00000 n -0001048138 00000 n -0001048976 00000 n -0000264213 00000 n -0000266743 00000 n -0000266517 00000 n -0000264420 00000 n -0000266629 00000 n -0000266686 00000 n -0001050202 00000 n -0000269037 00000 n -0000268754 00000 n -0000266841 00000 n -0000268866 00000 n -0000268980 00000 n -0000271960 00000 n -0000271734 00000 n -0000269135 00000 n -0000271846 00000 n -0000271903 00000 n -0000274894 00000 n -0000275095 00000 n -0000275297 00000 n -0000275782 00000 n -0000274746 00000 n -0000272058 00000 n -0000275497 00000 n -0000275611 00000 n -0000275668 00000 n -0000277000 00000 n -0000304556 00000 n -0000276888 00000 n -0000275893 00000 n -0000304385 00000 n -0000304499 00000 n -0000307686 00000 n -0000307346 00000 n -0000304677 00000 n -0000307458 00000 n -0000307515 00000 n -0000307629 00000 n -0000310595 00000 n -0000310255 00000 n -0000307797 00000 n -0000310367 00000 n -0000310424 00000 n -0000310538 00000 n -0001050319 00000 n -0000313732 00000 n -0000313942 00000 n -0000314422 00000 n -0000313592 00000 n -0000310706 00000 n -0000314138 00000 n -0000314195 00000 n -0000314365 00000 n -0000317797 00000 n -0000317457 00000 n -0000314533 00000 n -0000317569 00000 n -0000317626 00000 n -0000317740 00000 n -0000320145 00000 n -0000319976 00000 n -0000317908 00000 n -0000320088 00000 n -0000323953 00000 n -0000324166 00000 n -0000324356 00000 n -0000324729 00000 n -0000323805 00000 n -0000320217 00000 n -0000324558 00000 n -0000324615 00000 n -0000324672 00000 n -0000328052 00000 n -0000328251 00000 n -0000328460 00000 n -0000328661 00000 n -0000328862 00000 n -0000329934 00000 n -0000492030 00000 n -0000329182 00000 n -0000327888 00000 n -0000324827 00000 n -0000329068 00000 n -0000492271 00000 n -0000329807 00000 n -0000329280 00000 n -0000492101 00000 n -0000492215 00000 n -0001050436 00000 n -0000491255 00000 n -0000494695 00000 n -0000497620 00000 n -0000495130 00000 n -0000494563 00000 n -0000492392 00000 n -0000494904 00000 n -0000494961 00000 n -0000495074 00000 n -0000498062 00000 n -0000497488 00000 n -0000495241 00000 n -0000497834 00000 n -0000497891 00000 n -0000498005 00000 n -0000501467 00000 n -0000501241 00000 n -0000498173 00000 n -0000501353 00000 n -0000501410 00000 n -0000502673 00000 n -0000782136 00000 n -0000502561 00000 n -0000501565 00000 n -0000781965 00000 n -0000782079 00000 n -0000784842 00000 n -0000784446 00000 n -0000782257 00000 n -0000784558 00000 n -0000784615 00000 n -0000784671 00000 n -0001047624 00000 n -0001048310 00000 n -0000784728 00000 n -0000784785 00000 n -0000787251 00000 n -0000786969 00000 n -0000784979 00000 n -0000787081 00000 n -0000787138 00000 n -0000787195 00000 n -0001050553 00000 n -0000790073 00000 n -0000789738 00000 n -0000787362 00000 n -0000789850 00000 n -0000789907 00000 n -0000790016 00000 n -0000791837 00000 n -0000791612 00000 n -0000790210 00000 n -0000791724 00000 n -0000791781 00000 n -0001046296 00000 n -0000791935 00000 n -0000792270 00000 n -0001046833 00000 n -0000792906 00000 n -0000792929 00000 n -0000793742 00000 n -0000793861 00000 n -0000793886 00000 n -0000793911 00000 n -0000794224 00000 n -0000795447 00000 n -0000796680 00000 n -0000797133 00000 n -0000797514 00000 n -0000798057 00000 n -0000805005 00000 n -0000805223 00000 n -0000837211 00000 n -0000837673 00000 n -0000866765 00000 n -0000867148 00000 n -0000906205 00000 n -0000906896 00000 n -0000931074 00000 n -0000931344 00000 n -0000956875 00000 n -0000957357 00000 n -0000974450 00000 n -0000974761 00000 n -0000999597 00000 n -0000999867 00000 n -0001027808 00000 n -0001028240 00000 n -0001045947 00000 n -0001050646 00000 n -0001050764 00000 n -0001050882 00000 n -0001050959 00000 n -0001051037 00000 n -0001055554 00000 n -0001055728 00000 n -0001055898 00000 n -0001056067 00000 n -0001056237 00000 n -0001056405 00000 n -0001056573 00000 n -0001056743 00000 n -0001056912 00000 n -0001057082 00000 n -0001057251 00000 n -0001057421 00000 n -0001057590 00000 n -0001057780 00000 n -0001058022 00000 n -0001058200 00000 n -0001058403 00000 n -0001058626 00000 n -0001058846 00000 n -0001059075 00000 n -0001059301 00000 n -0001059527 00000 n -0001059753 00000 n -0001060009 00000 n -0001060277 00000 n -0001060546 00000 n -0001060812 00000 n -0001061086 00000 n -0001061352 00000 n -0001061618 00000 n -0001061884 00000 n -0001062060 00000 n -0001062236 00000 n -0001062414 00000 n -0001062591 00000 n -0001062769 00000 n -0001062946 00000 n -0001063124 00000 n -0001063301 00000 n -0001063474 00000 n -0001063584 00000 n -0001063693 00000 n -0001063809 00000 n -0001063938 00000 n -0001064072 00000 n -0001064182 00000 n -0001064268 00000 n -0001064380 00000 n -0001064450 00000 n -0001064529 00000 n -0001064567 00000 n -0001064695 00000 n +0000261295 00000 n +0000261352 00000 n +0000264370 00000 n +0000263977 00000 n +0000261520 00000 n +0000264089 00000 n +0000264146 00000 n +0000264199 00000 n +0001049000 00000 n +0001049170 00000 n +0001050008 00000 n +0000264313 00000 n +0000266829 00000 n +0000266603 00000 n +0000264520 00000 n +0000266715 00000 n +0000266772 00000 n +0001051234 00000 n +0000269123 00000 n +0000268840 00000 n +0000266927 00000 n +0000268952 00000 n +0000269066 00000 n +0000272046 00000 n +0000271820 00000 n +0000269221 00000 n +0000271932 00000 n +0000271989 00000 n +0000274980 00000 n +0000275181 00000 n +0000275383 00000 n +0000275868 00000 n +0000274832 00000 n +0000272144 00000 n +0000275583 00000 n +0000275697 00000 n +0000275754 00000 n +0000277086 00000 n +0000304642 00000 n +0000276974 00000 n +0000275979 00000 n +0000304471 00000 n +0000304585 00000 n +0000307772 00000 n +0000307432 00000 n +0000304763 00000 n +0000307544 00000 n +0000307601 00000 n +0000307715 00000 n +0000310690 00000 n +0000310350 00000 n +0000307883 00000 n +0000310462 00000 n +0000310519 00000 n +0000310633 00000 n +0001051351 00000 n +0000313827 00000 n +0000314037 00000 n +0000314517 00000 n +0000313687 00000 n +0000310801 00000 n +0000314233 00000 n +0000314290 00000 n +0000314460 00000 n +0000317179 00000 n +0000316896 00000 n +0000314628 00000 n +0000317008 00000 n +0000317065 00000 n +0000320055 00000 n +0000319829 00000 n +0000317290 00000 n +0000319941 00000 n +0000319998 00000 n +0000323311 00000 n +0000323028 00000 n +0000320127 00000 n +0000323140 00000 n +0000323197 00000 n +0000323254 00000 n +0000327297 00000 n +0000327510 00000 n +0000327700 00000 n +0000327959 00000 n +0000327149 00000 n +0000323396 00000 n +0000327902 00000 n +0000329293 00000 n +0000329492 00000 n +0000329701 00000 n +0000329902 00000 n +0000330103 00000 n +0000331175 00000 n +0000493271 00000 n +0000330423 00000 n +0000329129 00000 n +0000328044 00000 n +0000330309 00000 n +0001051468 00000 n +0000493512 00000 n +0000331048 00000 n +0000330521 00000 n +0000493342 00000 n +0000493456 00000 n +0000492496 00000 n +0000495936 00000 n +0000498860 00000 n +0000496371 00000 n +0000495804 00000 n +0000493633 00000 n +0000496145 00000 n +0000496202 00000 n +0000496315 00000 n +0000499302 00000 n +0000498728 00000 n +0000496482 00000 n +0000499074 00000 n +0000499131 00000 n +0000499245 00000 n +0000502708 00000 n +0000502482 00000 n +0000499413 00000 n +0000502594 00000 n +0000502651 00000 n +0000503914 00000 n +0000783377 00000 n +0000503802 00000 n +0000502806 00000 n +0000783206 00000 n +0000783320 00000 n +0000786083 00000 n +0000785687 00000 n +0000783498 00000 n +0000785799 00000 n +0000785856 00000 n +0000785912 00000 n +0001048656 00000 n +0001049342 00000 n +0000785969 00000 n +0000786026 00000 n +0001051585 00000 n +0000788492 00000 n +0000788210 00000 n +0000786220 00000 n +0000788322 00000 n +0000788379 00000 n +0000788436 00000 n +0000791314 00000 n +0000790979 00000 n +0000788603 00000 n +0000791091 00000 n +0000791148 00000 n +0000791257 00000 n +0000793078 00000 n +0000792853 00000 n +0000791451 00000 n +0000792965 00000 n +0000793022 00000 n +0001047328 00000 n +0000793176 00000 n +0000793511 00000 n +0001047865 00000 n +0000794147 00000 n +0000794170 00000 n +0000794983 00000 n +0000795102 00000 n +0000795127 00000 n +0000795152 00000 n +0000795465 00000 n +0000796688 00000 n +0000797921 00000 n +0000798374 00000 n +0000798755 00000 n +0000799298 00000 n +0000806246 00000 n +0000806464 00000 n +0000838452 00000 n +0000838914 00000 n +0000868006 00000 n +0000868389 00000 n +0000907446 00000 n +0000908137 00000 n +0000932315 00000 n +0000932585 00000 n +0000958116 00000 n +0000958598 00000 n +0000975487 00000 n +0000975793 00000 n +0001000629 00000 n +0001000899 00000 n +0001028840 00000 n +0001029272 00000 n +0001046979 00000 n +0001051686 00000 n +0001051804 00000 n +0001051922 00000 n +0001051999 00000 n +0001052077 00000 n +0001056594 00000 n +0001056768 00000 n +0001056938 00000 n +0001057107 00000 n +0001057277 00000 n +0001057445 00000 n +0001057613 00000 n +0001057783 00000 n +0001057952 00000 n +0001058122 00000 n +0001058291 00000 n +0001058461 00000 n +0001058630 00000 n +0001058797 00000 n +0001059055 00000 n +0001059236 00000 n +0001059434 00000 n +0001059657 00000 n +0001059877 00000 n +0001060104 00000 n +0001060331 00000 n +0001060557 00000 n +0001060783 00000 n +0001061034 00000 n +0001061300 00000 n +0001061570 00000 n +0001061836 00000 n +0001062108 00000 n +0001062376 00000 n +0001062642 00000 n +0001062908 00000 n +0001063107 00000 n +0001063285 00000 n +0001063461 00000 n +0001063637 00000 n +0001063815 00000 n +0001063992 00000 n +0001064170 00000 n +0001064347 00000 n +0001064521 00000 n +0001064601 00000 n +0001064711 00000 n +0001064820 00000 n +0001064936 00000 n +0001065064 00000 n +0001065198 00000 n +0001065320 00000 n +0001065414 00000 n +0001065526 00000 n +0001065596 00000 n +0001065675 00000 n +0001065713 00000 n +0001065841 00000 n trailer -<< /Size 873 -/Root 871 0 R -/Info 872 0 R -/ID [<9F61DDE71D5C1D117FCBA88732B5074F> <9F61DDE71D5C1D117FCBA88732B5074F>] >> +<< /Size 878 +/Root 876 0 R +/Info 877 0 R +/ID [<568658FF67029440DF971A075757FBD0> <568658FF67029440DF971A075757FBD0>] >> startxref -1065638 +1066784 %%EOF