From 43d0e222d62d1a54329fb25bbda2d15ce45fafae Mon Sep 17 00:00:00 2001 From: cmarco0 <146938645+cmarco0@users.noreply.github.com> Date: Thu, 13 Jun 2024 09:38:47 +0200 Subject: [PATCH 01/16] Created a presentation_definition JSON validator This script is designed to validate JSON data against a specified JSON schema and additional custom rules. It reads the JSON schema and data from files, checks if the data conforms to the schema, and ensures that certain additional requirements are met. This validation process helps in ensuring that the JSON data structure adheres to expected standards and rules, making it reliable and consistent for further processing or usage in applications. --- .../presentation_definition_validator.py | 94 +++++++++++++++++++ 1 file changed, 94 insertions(+) create mode 100644 script/JSON_validator/presentation_definition_validator.py diff --git a/script/JSON_validator/presentation_definition_validator.py b/script/JSON_validator/presentation_definition_validator.py new file mode 100644 index 000000000..2e197bb36 --- /dev/null +++ b/script/JSON_validator/presentation_definition_validator.py @@ -0,0 +1,94 @@ +import json +import jsonschema +import argparse +from jsonschema import validate, ValidationError + +# Function to read a JSON file +def load_json(file_path): + with open(file_path, 'r', encoding='utf-8') as file: + return json.load(file) + +# Function to validate additional rules +def validate_additional_rules(data): + presentation_definition = data.get('presentation_definition', {}) + + # Rule 1: Required properties in presentation_definition + required_pd_properties = ['id', 'input_descriptors', 'submission_requirements'] + for prop in required_pd_properties: + if prop not in presentation_definition: + raise ValidationError(f"Missing required property '{prop}' in presentation_definition") + + # Rule 2: Required properties in input_descriptors + for descriptor in presentation_definition.get('input_descriptors', []): + required_id_properties = ['id', 'name', 'purpose', 'group', 'format', 'constraints'] + for prop in required_id_properties: + if prop not in descriptor: + raise ValidationError(f"Missing required property '{prop}' in input_descriptors") + + # Rule 3: Required properties in constraints + constraints = descriptor.get('constraints', {}) + required_constraints_properties = ['limit_disclosure', 'fields'] + for prop in required_constraints_properties: + if prop not in constraints: + raise ValidationError(f"Missing required property '{prop}' in constraints") + + # Rule 4: Required properties in fields + for field in constraints.get('fields', []): + required_fields_properties = ['path', 'filter'] + for prop in required_fields_properties: + if prop not in field: + raise ValidationError(f"Missing required property '{prop}' in fields") + + # Rule 5: Only one path with a static path + if len(field['path']) != 1: + raise ValidationError("Field 'path' must contain exactly one entry") + + # Rule 6: Filter must only contain string and const elements + filter_keys = field['filter'].keys() + if any(key not in ['type', 'const'] for key in filter_keys): + raise ValidationError("Filter must only contain 'type' and 'const' elements") + if field['filter'].get('type') != 'string': + raise ValidationError("Filter 'type' must be 'string'") + + # Rule 7: Required properties in submission_requirements + for submission in presentation_definition.get('submission_requirements', []): + required_sr_properties = ['name', 'rule', 'count', 'from'] + for prop in required_sr_properties: + if prop not in submission: + raise ValidationError(f"Missing required property '{prop}' in submission_requirements") + if submission['rule'] != 'pick': + raise ValidationError("Submission rule must be 'pick'") + +# Function to validate data +def validate_json(data, schema): + try: + validate(instance=data, schema=schema) + print("JSON schema validation passed.") + + # Validate additional rules + validate_additional_rules(data) + print("Additional rules validation passed.") + + return True + except ValidationError as err: + print("JSON data is invalid.") + print(err) + return False + +# Main function +def main(schema_file, data_file): + # Load schema and data from files + schema = load_json(schema_file) + data = load_json(data_file) + + # Validate data + validate_json(data, schema) + +# Command-line argument configuration +if __name__ == "__main__": + parser = argparse.ArgumentParser(description="Validate JSON data against a schema") + parser.add_argument("schema", help="Path to the JSON schema file") + parser.add_argument("data", help="Path to the JSON data file") + + args = parser.parse_args() + main(args.schema, args.data) From e254bec587e3791ebae3b5b5e22d5a6b9a4ef0dd Mon Sep 17 00:00:00 2001 From: cmarco0 <146938645+cmarco0@users.noreply.github.com> Date: Thu, 13 Jun 2024 09:41:20 +0200 Subject: [PATCH 02/16] added schema.json JSON schema from here: https://openid.net/specs/openid4vc-high-assurance-interoperability-profile-sd-jwt-vc-1_0-00.html#name-json-schema-for-the-support --- script/JSON_validator/schema.json | 153 ++++++++++++++++++++++++++++++ 1 file changed, 153 insertions(+) create mode 100644 script/JSON_validator/schema.json diff --git a/script/JSON_validator/schema.json b/script/JSON_validator/schema.json new file mode 100644 index 000000000..1afde2750 --- /dev/null +++ b/script/JSON_validator/schema.json @@ -0,0 +1,153 @@ +{ + "$schema": "http://json-schema.org/draft-07/schema#", + "title": "Presentation Definition for a High Assurance Profile", + "type": "object", + "properties": { + "presentation_definition": { + "$ref": "#/definitions/presentation_definition" + } + }, + "definitions": { + "presentation_definition": { + "type": "object", + "properties": { + "id": { + "type": "string" + }, + "input_descriptors": { + "type": "array", + "items": { + "$ref": "#/definitions/input_descriptor" + } + }, + "submission_requirements": { + "type": "array", + "items": { + "$ref": "#/definitions/submission_requirement" + } + } + }, + "required": [ + "id", + "input_descriptors" + ], + "additionalProperties": false + }, + "input_descriptor": { + "type": "object", + "additionalProperties": false, + "properties": { + "id": { + "type": "string" + }, + "name": { + "type": "string" + }, + "purpose": { + "type": "string" + }, + "group": { + "type": "array", + "items": { + "type": "string" + } + }, + "format": { + "type": "object", + "patternProperties": { + "^jwt$|^jwt_vc$|^jwt_vp$|^vc\\+sd-jwt$": { + "type": "object", + "properties": { + "alg": { + "type": "array", + "items": { + "type": "string" + }, + "minItems": 1 + } + }, + "additionalProperties": false + }, + "^ldp_vc$|^ldp_vp$|^ldp$": { + "type": "object", + "properties": { + "proof_type": { + "type": "array", + "items": { + "type": "string" + }, + "minItems": 1 + } + }, + "additionalProperties": false + } + } + }, + "constraints": { + "type": "object", + "additionalProperties": false, + "properties": { + "limit_disclosure": { + "type": "string", + "enum": [ + "required", + "preferred" + ] + }, + "fields": { + "type": "array", + "items": { + "type": "object", + "properties": { + "path": { + "type": "array", + "items": { + "type": "string" + } + }, + "filter": { + "$ref": "http://json-schema.org/draft-07/schema#" + } + } + } + } + } + } + }, + "required": [ + "id", + "name", + "purpose", + "group", + "format", + "constraints" + ] + }, + "submission_requirement": { + "type": "object", + "properties": { + "name": { + "type": "string" + }, + "rule": { + "type": "string", + "enum": [ + "pick" + ] + }, + "count": { + "type": "integer", + "minimum": 1 + }, + "from": { + "type": "string" + } + }, + "required": [ + "rule", + "from" + ], + "additionalProperties": false + } + } +} From 308abe830689307c7cce6ab007c539213465858b Mon Sep 17 00:00:00 2001 From: cmarco0 <146938645+cmarco0@users.noreply.github.com> Date: Thu, 13 Jun 2024 10:26:28 +0200 Subject: [PATCH 03/16] Create readme.md a simple guide on how to use this script to validate a presentation_definition JSON --- script/JSON_validator/readme.md | 85 +++++++++++++++++++++++++++++++++ 1 file changed, 85 insertions(+) create mode 100644 script/JSON_validator/readme.md diff --git a/script/JSON_validator/readme.md b/script/JSON_validator/readme.md new file mode 100644 index 000000000..7f6edeb2b --- /dev/null +++ b/script/JSON_validator/readme.md @@ -0,0 +1,85 @@ +# Presentation Definition JSON Validator + +## Table of Contents + +1. [Introduction](#introduction) +2. [Installation](#installation) +3. [Usage](#usage) + +## Introduction + +This script is designed to validate JSON data against a specified JSON schema and additional custom rules. It reads the JSON schema and data from files, checks if the data conforms to the schema, and ensures that certain additional requirements are met. +This validation process helps in ensuring that the JSON data structure adheres to expected standards and rules, making it reliable and consistent for further processing or usage in applications. + +## Installation + +To get started with this project, follow these steps: + +1. **Download the files:** + + ```bash + python script + schema.json + +2. **Create a presentation_definition JSON file:** + +This is just an example: + + ```json +{ + "presentation_definition": { + "id": "presentation definitions", + "input_descriptors": [ + { + "id": "eu.europa.ec.eudiw.pid.it.1", + "name": "Person Identification Data", + "purpose": "User authentication", + "format": "vc+sd-jwt", + "constraints": { + "fields": [ + { + "path": [ + "$.credentialSubject.unique_id", + "$.credentialSubject.given_name", + "$.credentialSubject.family_name" + ] + } + ], + "limit_disclosure": "preferred" + } + }, + { + "id": "WalletAttestation", + "name": "Wallet Attestation", + "purpose": "Wallet Authentication", + "format": "jwt", + "constraints": { + "fields": [ + { + "path": [ + "$.iss", + "$.exp", + "$.iat", + "$.cnf.jwk", + "$.aal" + ] + } + ] + } + } + ] + } +} + +3. **Execute the script:** + + ```bash + python3 presentation_definition_validator.py schema.json example_to_test.json + +4. **Check the output:** + + +5. **Final result:** + + + From 2462bb376742b8b64abc9d382ca18eb466a2a9c4 Mon Sep 17 00:00:00 2001 From: cmarco0 <146938645+cmarco0@users.noreply.github.com> Date: Thu, 13 Jun 2024 10:29:03 +0200 Subject: [PATCH 04/16] Possible error in presentation_definition validation --- script/JSON_validator/end.png | Bin 0 -> 3567 bytes script/JSON_validator/err1.png | Bin 0 -> 78026 bytes script/JSON_validator/err2.png | Bin 0 -> 29500 bytes script/JSON_validator/err3.png | Bin 0 -> 5448 bytes script/JSON_validator/err4.png | Bin 0 -> 4028 bytes script/JSON_validator/err5.png | Bin 0 -> 4399 bytes 6 files changed, 0 insertions(+), 0 deletions(-) create mode 100644 script/JSON_validator/end.png create mode 100644 script/JSON_validator/err1.png create mode 100644 script/JSON_validator/err2.png create mode 100644 script/JSON_validator/err3.png create mode 100644 script/JSON_validator/err4.png create mode 100644 script/JSON_validator/err5.png diff --git a/script/JSON_validator/end.png b/script/JSON_validator/end.png new file mode 100644 index 0000000000000000000000000000000000000000..9072757dabb4831ebc0b2913579236883724789f GIT binary patch literal 3567 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 literal 0 HcmV?d00001 diff --git a/script/JSON_validator/err1.png b/script/JSON_validator/err1.png new file mode 100644 index 0000000000000000000000000000000000000000..ca277e525d7d61ef08d0b6cd1ad92609113f1f0c GIT binary patch literal 78026 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
~FovJ<)WKm%}ZY00svHRVwJFoPTE=`2^n;+Gpo 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 literal 0 HcmV?d00001 diff --git a/script/JSON_validator/err2.png b/script/JSON_validator/err2.png new file mode 100644 index 0000000000000000000000000000000000000000..de7a72e29272b7dc066cbc8c69f6c7d1bd655bcd GIT binary patch literal 29500 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 literal 0 HcmV?d00001 diff --git a/script/JSON_validator/err3.png b/script/JSON_validator/err3.png new file mode 100644 index 0000000000000000000000000000000000000000..c9f44734026fc206744d5529c5e2677ecbf51467 GIT binary patch literal 5448 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 literal 0 HcmV?d00001 diff --git a/script/JSON_validator/err4.png b/script/JSON_validator/err4.png new file mode 100644 index 0000000000000000000000000000000000000000..9931df86c89b60e8021e59c32d7bb3165ee1207d GIT binary patch literal 4028 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 iO54D@=d2+s#{3_S)hDldaP>|A0000sF)%Q$ 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 Date: Thu, 13 Jun 2024 10:49:53 +0200 Subject: [PATCH 05/16] Update the readme.md for presentation_definition script updated all the chapter with images --- script/JSON_validator/readme.md | 132 +++++++++++++++++++++++++++++++- 1 file changed, 128 insertions(+), 4 deletions(-) diff --git a/script/JSON_validator/readme.md b/script/JSON_validator/readme.md index 7f6edeb2b..bf7665082 100644 --- a/script/JSON_validator/readme.md +++ b/script/JSON_validator/readme.md @@ -8,6 +8,7 @@ ## Introduction + This script is designed to validate JSON data against a specified JSON schema and additional custom rules. It reads the JSON schema and data from files, checks if the data conforms to the schema, and ensures that certain additional requirements are met. This validation process helps in ensuring that the JSON data structure adheres to expected standards and rules, making it reliable and consistent for further processing or usage in applications. @@ -25,7 +26,7 @@ To get started with this project, follow these steps: This is just an example: - ```json + ```bash { "presentation_definition": { "id": "presentation definitions", @@ -70,16 +71,139 @@ This is just an example: ] } } +``` -3. **Execute the script:** +## Usage + +1. **Execute the script:** ```bash python3 presentation_definition_validator.py schema.json example_to_test.json -4. **Check the output:** +**Check the output:** + +You can get different kind of errors, these are just some of them: + +![Error 1](script/JSON_validator/err1.png) + +![Error 2](script/JSON_validator/err2.png) + +![Error 3](script/JSON_validator/err3.png) +![Error 4](script/JSON_validator/err4.png) -5. **Final result:** +![Error 5](script/JSON_validator/err5.png) + + +2.. **Final result:** + +After some modification i got a JSON like this: + + ```json +{ + "presentation_definition": { + "id": "presentation definitions", + "input_descriptors": [ + { + "id": "eu.europa.ec.eudiw.pid.it.1", + "name": "Person Identification Data", + "purpose": "User authentication", + "group": ["group1"], + "format": { + "vc+sd-jwt": { + "alg": ["RS256", "ES256"] + } + }, + "constraints": { + "limit_disclosure": "preferred", + "fields": [ + { + "path": ["$.credentialSubject.unique_id"], + "filter": { + "type": "string", + "const": "unique_id" + } + }, + { + "path": ["$.credentialSubject.given_name"], + "filter": { + "type": "string", + "const": "given_name" + } + }, + { + "path": ["$.credentialSubject.family_name"], + "filter": { + "type": "string", + "const": "family_name" + } + } + ] + } + }, + { + "id": "WalletAttestation", + "name": "Wallet Attestation", + "purpose": "Wallet Authentication", + "group": ["group1"], + "format": { + "jwt": { + "alg": ["RS256", "ES256"] + } + }, + "constraints": { + "limit_disclosure": "preferred", + "fields": [ + { + "path": ["$.iss"], + "filter": { + "type": "string", + "const":"https://issuer.example.org" + } + }, + { + "path": ["$.exp"], + "filter": { + "type": "string", + "const": 1504700136 + } + }, + { + "path": ["$.iat"], + "filter": { + "type": "string", + "const": 1504700136 + } + }, + { + "path": ["$.cnf.jwk"], + "filter": { + "type": "string" + } + }, + { + "path": ["$.aal"], + "filter": { + "type": "string", + "const": "aal" + } + } + ] + } + } + ], + "submission_requirements": [ + { + "name": "Sample requirement", + "rule": "pick", + "count": 1, + "from": "group1" + } + ] + } +} +``` +![Final](script/JSON_validator/end.png) From 74e286a60779d4c4b040b987d442723b2616126f Mon Sep 17 00:00:00 2001 From: cmarco0 <146938645+cmarco0@users.noreply.github.com> Date: Thu, 13 Jun 2024 10:50:28 +0200 Subject: [PATCH 06/16] editorial update --- script/JSON_validator/readme.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/script/JSON_validator/readme.md b/script/JSON_validator/readme.md index bf7665082..1cd0fd126 100644 --- a/script/JSON_validator/readme.md +++ b/script/JSON_validator/readme.md @@ -80,7 +80,7 @@ This is just an example: ```bash python3 presentation_definition_validator.py schema.json example_to_test.json -**Check the output:** +2. **Check the output:** You can get different kind of errors, these are just some of them: @@ -95,7 +95,7 @@ You can get different kind of errors, these are just some of them: ![Error 5](script/JSON_validator/err5.png) -2.. **Final result:** +3. **Final result:** After some modification i got a JSON like this: From 84c4331699e5270c6dc114aa0ca3006b26bbbbbe Mon Sep 17 00:00:00 2001 From: cmarco0 <146938645+cmarco0@users.noreply.github.com> Date: Thu, 13 Jun 2024 10:51:08 +0200 Subject: [PATCH 07/16] editorial update --- script/JSON_validator/readme.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/script/JSON_validator/readme.md b/script/JSON_validator/readme.md index 1cd0fd126..00971eab9 100644 --- a/script/JSON_validator/readme.md +++ b/script/JSON_validator/readme.md @@ -19,7 +19,7 @@ To get started with this project, follow these steps: 1. **Download the files:** ```bash - python script + presentation_definition_validation.py schema.json 2. **Create a presentation_definition JSON file:** From 9255c354f1252db011f4eb2b02ae4830c9e6c2da Mon Sep 17 00:00:00 2001 From: cmarco0 <146938645+cmarco0@users.noreply.github.com> Date: Thu, 13 Jun 2024 15:06:57 +0200 Subject: [PATCH 08/16] update python script this code has been created using the library Pydantic --- .../presentation_definition_validator.py | 194 +++++++++--------- 1 file changed, 100 insertions(+), 94 deletions(-) diff --git a/script/JSON_validator/presentation_definition_validator.py b/script/JSON_validator/presentation_definition_validator.py index 2e197bb36..fd9bfdcad 100644 --- a/script/JSON_validator/presentation_definition_validator.py +++ b/script/JSON_validator/presentation_definition_validator.py @@ -1,94 +1,100 @@ -import json -import jsonschema -import argparse -from jsonschema import validate, ValidationError - -# Function to read a JSON file -def load_json(file_path): - with open(file_path, 'r', encoding='utf-8') as file: - return json.load(file) - -# Function to validate additional rules -def validate_additional_rules(data): - presentation_definition = data.get('presentation_definition', {}) - - # Rule 1: Required properties in presentation_definition - required_pd_properties = ['id', 'input_descriptors', 'submission_requirements'] - for prop in required_pd_properties: - if prop not in presentation_definition: - raise ValidationError(f"Missing required property '{prop}' in presentation_definition") - - # Rule 2: Required properties in input_descriptors - for descriptor in presentation_definition.get('input_descriptors', []): - required_id_properties = ['id', 'name', 'purpose', 'group', 'format', 'constraints'] - for prop in required_id_properties: - if prop not in descriptor: - raise ValidationError(f"Missing required property '{prop}' in input_descriptors") - - # Rule 3: Required properties in constraints - constraints = descriptor.get('constraints', {}) - required_constraints_properties = ['limit_disclosure', 'fields'] - for prop in required_constraints_properties: - if prop not in constraints: - raise ValidationError(f"Missing required property '{prop}' in constraints") - - # Rule 4: Required properties in fields - for field in constraints.get('fields', []): - required_fields_properties = ['path', 'filter'] - for prop in required_fields_properties: - if prop not in field: - raise ValidationError(f"Missing required property '{prop}' in fields") - - # Rule 5: Only one path with a static path - if len(field['path']) != 1: - raise ValidationError("Field 'path' must contain exactly one entry") - - # Rule 6: Filter must only contain string and const elements - filter_keys = field['filter'].keys() - if any(key not in ['type', 'const'] for key in filter_keys): - raise ValidationError("Filter must only contain 'type' and 'const' elements") - if field['filter'].get('type') != 'string': - raise ValidationError("Filter 'type' must be 'string'") - - # Rule 7: Required properties in submission_requirements - for submission in presentation_definition.get('submission_requirements', []): - required_sr_properties = ['name', 'rule', 'count', 'from'] - for prop in required_sr_properties: - if prop not in submission: - raise ValidationError(f"Missing required property '{prop}' in submission_requirements") - if submission['rule'] != 'pick': - raise ValidationError("Submission rule must be 'pick'") - -# Function to validate data -def validate_json(data, schema): - try: - validate(instance=data, schema=schema) - print("JSON schema validation passed.") - - # Validate additional rules - validate_additional_rules(data) - print("Additional rules validation passed.") - - return True - except ValidationError as err: - print("JSON data is invalid.") - print(err) - return False - -# Main function -def main(schema_file, data_file): - # Load schema and data from files - schema = load_json(schema_file) - data = load_json(data_file) - - # Validate data - validate_json(data, schema) - -# Command-line argument configuration -if __name__ == "__main__": - parser = argparse.ArgumentParser(description="Validate JSON data against a schema") - parser.add_argument("schema", help="Path to the JSON schema file") - parser.add_argument("data", help="Path to the JSON data file") - - args = parser.parse_args() - main(args.schema, args.data) +# generated by datamodel-codegen: +# filename: schema.json +# timestamp: 2024-06-13T12:20:17+00:00 + +from __future__ import annotations + +from enum import Enum +from typing import Any, Dict, List, Optional, Union +import re + +from pydantic import BaseModel, Extra, Field, conint, constr, root_validator, ValidationError, RootModel + +# Enum for LimitDisclosure with two possible values: 'required' and 'preferred' +class LimitDisclosure(Enum): + required = 'required' + preferred = 'preferred' + +# Constraints model that includes optional fields for limit_disclosure and fields +class Constraints(BaseModel): + class Config: + extra = Extra.forbid + + limit_disclosure: Optional[LimitDisclosure] = None + fields: Optional[List[Any]] = None + +# Model for PresentationDefinitionClaimFormatDesignations with alg field having minimum one item +class PresentationDefinitionClaimFormatDesignations1(BaseModel): + class Config: + extra = Extra.forbid + + alg: Optional[List[str]] = Field(None, min_items=1) + +# Model for PresentationDefinitionClaimFormatDesignations with proof_type field having minimum one item +class PresentationDefinitionClaimFormatDesignations2(BaseModel): + class Config: + extra = Extra.forbid + + proof_type: Optional[List[str]] = Field(None, min_items=1) + +# Define the regular expressions separately +JWT_REGEX = re.compile(r'^jwt$|^jwt_vc$|^jwt_vp$') +LDP_REGEX = re.compile(r'^ldp_vc$|^ldp_vp$|^ldp$') + +# Root model to handle multiple types of claim format designations with a validator for keys +class PresentationDefinitionClaimFormatDesignations(RootModel[Union[ + Dict[str, PresentationDefinitionClaimFormatDesignations1], + Dict[str, PresentationDefinitionClaimFormatDesignations2] +]]): + + @root_validator(pre=True) + def check_keys(cls, values): + if isinstance(values, dict): + for key in values.keys(): + if not (JWT_REGEX.match(key) or LDP_REGEX.match(key)): + raise ValueError(f"Invalid key: {key}") + return values + +# Enum for Rule with a single possible value: 'pick' +class Rule(Enum): + pick = 'pick' + +# Model for SubmissionRequirement with required rule field and optional count, name, and from fields +class SubmissionRequirement1(BaseModel): + class Config: + extra = Extra.forbid + + name: Optional[str] = None + rule: Rule + count: Optional[conint(ge=1)] = None + from_: str = Field(..., alias='from') + +# Root model for SubmissionRequirement +class SubmissionRequirement(RootModel[SubmissionRequirement1]): + pass + +# Model for InputDescriptor with required id field and optional name, purpose, format, group, and constraints fields +class InputDescriptor(BaseModel): + class Config: + extra = Extra.forbid + + id: str + name: Optional[str] = None + purpose: Optional[str] = None + format: Optional[PresentationDefinitionClaimFormatDesignations] = None + group: Optional[List[str]] = None + constraints: Constraints + +# Model for PresentationDefinition with required id field and input_descriptors field +# Optional submission_requirements field +class PresentationDefinition(BaseModel): + class Config: + extra = Extra.forbid + + id: str + input_descriptors: List[InputDescriptor] + submission_requirements: Optional[List[SubmissionRequirement]] = None + +# Main model for a high assurance profile including an optional presentation_definition field +class PresentationDefinitionForAHighAssuranceProfile(BaseModel): + presentation_definition: Optional[PresentationDefinition] = None From ad9a7e8b7463a1fc6641e01dd60066bc747872c8 Mon Sep 17 00:00:00 2001 From: cmarco0 <146938645+cmarco0@users.noreply.github.com> Date: Thu, 13 Jun 2024 15:12:38 +0200 Subject: [PATCH 09/16] Delete script/JSON_validator/end.png --- script/JSON_validator/end.png | Bin 3567 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 script/JSON_validator/end.png diff --git a/script/JSON_validator/end.png b/script/JSON_validator/end.png deleted file mode 100644 index 9072757dabb4831ebc0b2913579236883724789f..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3567 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 From 533f86b68f69a02ee07485b3e0b42c84745fc54e Mon Sep 17 00:00:00 2001 From: cmarco0 <146938645+cmarco0@users.noreply.github.com> Date: Thu, 13 Jun 2024 15:12:48 +0200 Subject: [PATCH 10/16] Delete script/JSON_validator/err1.png --- script/JSON_validator/err1.png | Bin 78026 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 script/JSON_validator/err1.png diff --git a/script/JSON_validator/err1.png b/script/JSON_validator/err1.png deleted file mode 100644 index ca277e525d7d61ef08d0b6cd1ad92609113f1f0c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 78026 zcmce;XIN8P)HR9+kt2%eQPcw}cAAKVfYgYn2pA*16DvY!(rXeG6&s?`Bq%{T1PCG> zAtEXoq!@Za5izt-69S~)wK?a!@Auv3{=PnsA_-Znz4lsjjycAd`{Bh4rm`{$G7=IJ zvS#N_TS-VrmVm!bf35+qlw3(a2)?Wev@$&BWr@cr7G z=NtniBsMfce^)j6-c30}Ceeb0=RF z&xRlF%E`$Y^^ykDlsK7EyKi~j%Ksd_Hm#ac^m{)%+LF5My_%9{{c=X+(m?0{W@%vC zA=P3lKlmdGHlBcgBwtH9?}G~cfBK5^0V*{~t&>%K)=Zk>q7EJl&B#^{kC zsUtGiK9)rd)C4yWQ&*i2<0Fju`#dNE_hl9Pn>EQ(Ayd7Z4nd>b%Gsp&LG9v089Vp3 zwCMsOQNyRN^m=hY0p*U}EJ@5GDN=h#s9Es25a*ISr|LO9jpu(XJ>0BZbNoi@YKuq2 zPI_Fx+)v|5&yItk!yoTmG7D*W4u>vF!`@qhc=CXn!^Drw7<#22A-l-6w!5plyGCB! z&VhC{&d|MKVn{3;a;{05?XT{LRe({bbtW+zs+GjcO%23;1K~o4T{IEj|DEP)S+b*e z=LTttQIX$Jz3<1nYh`EGN%#6Qb2qu6tPlDi>9XY9;^M>S5J_bivLWhhfzM(~ST2&_ z+x!tW8bLx+>a3J-RIVg+#VX;P+qSWVe^^QFO%WbUUg#APn^{XvbTU){)k z`6)%{68+%GYxE^P>YY2{8UBzbKLd}HdPuYCu`Te?~!WG)#A7p&La2|Rl3>&A8Ww`n+C zgS{ucXFaNo;s!j6h`%#7P#aonk$kv1R#At>7uI7oJ4pE#ICj6!x%pvdB~}5e)Q9gY z_*TA1n&u0~sNc0c`K8yJx306Zl`N*s%*n~h*l|pv^A6grx>l7_me52PUD;tL6W;&f zAmxna>H5&L)+N|vZryPDU00r}iVVFr)X!vhViFE_;-@}N6m=vt9$%+cl6LI+BSf`Y zkZ`|6(jotzV%I?SSX<=>OMY|Vx5L?Sa8WPClD|Vgq%bl2jv49y_&xMLdcTXFQOmu0 zE)^e@+EZX`Ela?^q5Q}+ExNDK-xToa!6v(r?Him>{4~)oLO!=r=zzXQ=5AH##2SZh%#8FEqByuv+JKjPaIkvNw44jb8&V^ zDJu&uit<9lw<*e95;Gz-u8Vf%& zJyBzf93ADVM60Cyc-)Mlv6U_3F8u-K+8%+)^r2V8?!Ei&Mw`?0D>MSP+^AF|y({bk zX0AcncY>OoRE)QkiZoZ$4an+BSKDs&fynv&`&)c5PArb34d zM_*=l(bm=Z2WO?>%eTSQUqz0+4!sk4Ef>@8-?Y_x6VlO>cglZ}I3TRvOzz zUcTq^E^=vR(TR<>D|YcD*>1i1<%y>aR^iCEWYmkSX<}3&GBGAErz<%w*9p0^_Kr2o zbCJ4>ESjXXU$Uevk;Qy6J$SD_*Fq0>`MCS{l7+nIPoNN1X5@oLqw6<}Lf=TJIETyr zS`Gd0r1idAP)3ljS^bB@$_r<9|IZ7(+avBi-o<#aIImlTuug0P;rDVJ9U7s%=JT48 zh$yoI(i;-faAj_*r@@OKrmsjk815^3A&>S6wN)fAUK7G3=% z4a@Va^c~P64o7hr$%t{25C2 zMxVc;mU)!(7ADN=wMMLOs4DN%%_GI+su2qsS(9Fm;n%F)d{FCs&zLd4OS>^63A!?k zA3C%OpH$eXms*}LYHtqTp;!1gm;4@W;kIEHkB3h69<2;unD@Lfk=D8S^JHYvlI#1h zA3JpeKE>|Pr9#OlgpC2wP{+6bMCf??o>10rvn4h`+#fvI`K`#QoI=G4MwDvxXQ~>f z``$Gz9`))zR2j^)3tgTYE+i$&4G6@dC30xy+1LOOP6L#p=5A+4T5^#lw`ak8`(K9+ zPSk|X`ZoPt5jKCNrydizL_`TGK7;T3Sc@Y5Y^}O|@#@(JW0fcrYPMcD?N_U6ozq)E zJ?C8C)z#(8Wie(xJ=~nsUF@o_j!L8tiKd6NU%_{dw7)S?Y$fbZ#JO;{?86N+nS+tD zK0%o5O`(`AOx}}P(XXePo?@^w%S*wubM?dK()kQcoac3N;Mj%G#VN-nMly=V$?)7CJchE!~AZMU9usR{Zvn5&xXUPcqm4AlBy5~C@{T^j#Z&X3}Am^T=;-hIa+2~>H( zGONV^rzQ>@Yjt#T@@H6239h@LJi!Ke6pV4FW2y58riYS?iZv5SqcG3vanhashG=QJ zmlTyY)TD&-CV@?IE9uaf<%33@Uv3pSHBE6!a-*-HFgoyne-crCA9W6l53aw%WdB zCHq<5)TDDP3z^5?3$sSnJ*MFl3Lfq{dgZQbAP5I;#wbf~D~EpGM7T>n3(5xQ2ip$2 zY|r|AxFD)4!6reI(T1cYpMFiYQneG6y8gE$_bUlOQI{?GNRx(wJ80N*dqkn;ad2DH zvmZ}ODxSeCZ@HV_mtipfX>&1>U?hv#(skDgqt?|l%Wi{L{%l-&y`bgs9Pd)$+3^Ma zY=Kv|H0U*cHE&w|)^a6|ud~!a5Owk#(axrEyUG)C(Pr%e6yxxcX5W%TQy0>8!)-8?L=I0?y+!?J~Wgj_c7TJ)GoXBZ&0? z6>ME}@Ws*)jx2jVvpz~e!`Ab1!EKq2h{=&W#UQEE&K2IC*>Y^q#p73G z*Q~72)^Mqkh?y)jrt_1fTf{{6{iY}hmDk_mm7UqXvTC2lHh_VO5SI9j5bBh;hz{@i z0A+BA_Rc>qLE%_J{+I}|+WB4b3?tX5&f%Fnvq0YyxNQ5wLrPpM z+z6z`nHHTP?`71h@E!Mdp#n(+O(WFjAJjHfb(CmbSHhCG+C!C*n*XXEwO7)?b)$%I zDokz7nO~Y@K`H(1RnwBJ(gX`pGsi?R$1A6w-TO*~K-CKxe+I=X1UO(aNrTiE&Ey^R zN~MW@K0ZE;;SU?R&Ej6QVX?`cAnWD+z_x0DPwC>Th#Rf1)>>J_wb@@E5x_`EBB4!Q z_f5=JlWqkEDG!lSG$9}xwfo?OSH0s(j|-j$9|6(j&m@~97nV}60Fht4G~~iZ5UI_% z)oj#+Q)G1_kEa^U4H(##^MVXNh`|2_b=5$|na5LN|4vz}H%&eLOl4J0IPnuRk#Zyf)>bx=o?kip?ne1S*L%9q$ zs;K;Y(-b?sbc0UdpJPb4%WuBdGwjZ`EO(RltZ0ZpQWVjEZ(pDzl^N!RNkn z8tJ3_`6O>TQqPDmuddizIQhi>y(|jZFpF-;oJwwnI5vJ+~?|4@7oz# zxz}?B{f$Y?D~itfp6A#<*OEf#f1L^a{dJQ%xpuamZe);q;dNCozysxyR;vyhoW;EY-6jsvE(Q5r1~im`?2H$J=Tbr|EQ9B`B2CYe6a)a;*;d zOcjs%iM~Ab1bfeSFSg_!lS&AFJw{7aZh)EU^eMb00Vv!Hw zc2!%hcmq^vO!*~vGe`oa!DO=-K>RvI7&?L3MNG!Pv+9h31fUKsEra-gnWy?Q9w$Uq z(-tn={nI#br=)Q3Pt&Lu#d4Z0oY&mG1w3CMA0RMes^j{M2%`QhU0gO#{A`rhvcx~o zvUJsjI}vjOqd87uiMV3~dg%QMVxTg}gbCs*PIG>gI+y)<=_>m*`4n8qY)tuh+i;Jk z5!@eapJ%6L{HQKNo)jHtZni3+stt)3BsOy#*N3jb`5nLV>Ce>nH)RWD?C$A;>Ri7e zdW~%9*CDd$1is9`p4XIxQrddR;b(>4kZlICZ@@BEyfW5VOu@;l*WF5^n%p|r)G zOw+jgiV|je_51ys2nWUfU|)129v?2wGx$6`L@&Mm*ts^OsD;>AZgkP=35(NdXB0m) z3UJo|IQRpP7#*14HHTndEMuAy zaj#C1;aSi4saiducov8to)qO7cKkscBLE7^2S4$e#`S-?hjiO=-eutAOLMMJHRUo; zYZsWe4^E@*9Uk7yn7H=)7r;Xm)8i)jsAPfJl6iQPCksUpDyyF5<^&6t=P$Lwf)-lG z1UEzhHite_Q27*+P0}I9E99z4i;GRU%pYROj@Z(1`?{$8i6{kxklRjrJS;(bTw|0$ zG3~k0KYy>1V8J~-O}^;4s1%Ax$aH}g0`-KcZ>CBTM->mb?8m?lCJw2S-d`aFHTTQZjHblYg7MHHRDSa)rQd!`eJPO8H7c$k8S zp0bF%3YaxxbKk?DqWBKW$&tv=9#;#3b8#2Zf9xIp!#+6T@Iv#w3pEARfZ({)@~Ez? zDOp2o_JV~fWVP5IrRWspX+Df<#pQ2N$7QRLt$t`G2abM!J3{pjnWlB|UOy23)maK% zi}#S)DyNqaMG*FY1*nT(K=h zoecVpWo+TpY}2Xh`r_=1PiEt;3=Dx9i;^t};0mraqbzES-f8c-K&=kE!G~B9KJ2uz z@wUWKA!)V3*E0ey)N%%D=jqomFw!DT=8!F>c=V*gUX&CuKD`XbO~$<~13VW!g4Z;i ziW~^;ajiJC4Slw-Ak?<$MulZ^)kwTI7yOG%6=w;VcWgV>4z%Z~-lEkrKPG4~2#B{7 z9Yxsu9Qnn>%Y@3C_0(55;qp&*?o!^`Dw;6Td+#2{~9xIRi2 z1U*UN_Wa4P&b?5sc|olECkp5Pf}&ZJ)n@vpQsZV!#}ysi&_5hOlfHssg0WrUx(awP2WtXOsUL-l`xk?lwE zY}voqPN)4(dzn8wU6dacyb2y3KV@rrL+MX7y#3{TC%s4Hmxi%V7|9bEmWdVPr+VP- z!CBpB_77`M>#fqe9YI(O77Le}Ms*$?egYB5}ivy%Pdv|HP{a4DX1AyGXe0+0%|$ z5TYHQ2og&LS?%o9)BEV$5h^TCDbfwY>AH_I(ks3}z;w$hY8MV;YAz%nc15$z_;KoR z%d+Wv25Fe9{8vF#_taughuFt2Jj!QK>#eKAAcUo42h148GkUtb|V_^VAg! z1WKY|CGX$O0SWF^er1QzPMPk<(0^p9P9G6wpp42d5>(FAG&WDyX-s3TbFBhta4!)RlVXR*MROm&c7* zk1u%-R;nT0E0VogV}InYv6CBa8RHrw-ng(=c)YK!-V%`_0T*z@UFd?44&-GcM4N;a z+eMsq6Oo7CLA-C*+_l>Ac1f;jl}9x-(GEaiQse9o6D;RQDA@-Qfyx0aoBDA-=-1pD zjki~Fkd4Ta?f~FypF_Z7Bm~{Ez1-rHA|G$n2mqu~MHGZAmss_Bk?KYP_!`p- zo$)rgz%(43>U-x3a85s<(iJMm?k)J;^3cHTe*yk*QeA;lxHq=9_CHzVn+BNcM%$WE z7}pXDu{P!JWQ@wAK0lIQd`35pUgKDkyX2*4PjV~okqN6SC{VKiM1WP}VkUmwjb@w^ zdKW_W5Hxy1%zN~ub;G6tz|Hxauu-x(S?O9u2P~4R0N|_!G$fsezTo1yZ_mn|21}iJL{owJsepwmtgHL{-LLL<|t4BhO7bb z!WqBD?Jt#!yiL6*0Po=n3fh zShtuuPPenROvxG-D_T6#=u ztt27>foSPzh$6l*UGUhgifnlX+qeaKD?Mt3_%14rovN(oXh5C#b(#2wm-Yvtx(I?FQ>cF|l5Oco^1r4bu{I3jhRf2?3I}F0wvFoeAs+H`= zV^3U6e+P)Zo_uTNB>}rlT2;d|znPpcX1gk{6&Yr}Z<@QpbXbDP@t0;p0mUlgHZTJ~ zVuQ=o0uHO(s=&|&PAkbJU};6pm913yPuI-N<@`|AFOeOA?#kz1w$FiMAsW%)fsy- zFEM*!lz#)xPtgyVdg)vpkX^ep7&-9aw&ZkqMSQ|xEFX-N%N(q$t!ra@8b&Ub(TY(b zRx%`b#HPU%E9(VKtTRa*vnpVrbtYD1>Ig;~Pcf!azH2Ej+1f$al_ zwer}&`|x)@AU6+%+84XL4Fde>M9a&gjhMy08zJkf+e6N9p^qR$E@p4W;1kO)D9}bw zNh~eAZ7ci2_h~R&O!Fd1S@_vIJ2TzF8Hqo;G-O;tW(TJayVm^H_U-r3p#!p3c1?B< zhP0v%>$*jJR?tJQ`x6~O@05xUbOdPnVl1cMu!?AH*%rx8&yIMsr|;(EXgF6m z@IV1_=%)3_@y|PPPBM?mo}x2z5vlI{jj+eIgAAa3RN!zM05Nk3*YO(%LQYb#S$P=m z`N@UGd)@XO*QZVC_Hz?GNE+@9gHVRcFDNJlT99xh^3@s{!ceW1i&nx$SXBz)ql}^0 zzbQE<3S8eUE7fKRI~}16-ez3_a>xRPvzaEK)3om0liY)Z*|}Lo|BCNIg-I2mtUAjcRZ z;IPi{)0}mk+6mIKx3X?I2u%)nVq`Ni50*QHet&s%afRRRjIo*JaMv!CpVz~7-G6i^ zfD>JqpZ}H%=?LkLFZ!gl&xh~Q3(6}ZMtKc7tykowp3HRq#p~WWB52x) z!n5XsT+G|bU7-8#O%pW9PJvX>_d|AWvWr+ma6R1l+p_#(jbqQqrTcP9z70>%v0L^} zta07fsh0P{Xof7tDsKO}WPjegZR^dvgOmKBPdRZjLz>7wG{ z`UEEw;+*hU?4OFQDC&IVByM6Uzo~S&K7ocEjWpyS?fUNCi*u&_M)5m7AR@ zBu3XUDL0urn2ujk>$Wj76`7*U>c!|5gP|0# zqX7wFW0Xd5#9Z%c`x{)D%Kg#}mx42kX~$*%$ogS*-0zuX$}!2CWd^)e#=>ive>j7m z*^Rm`+~Lqg$zNkuj<9Swy(&Q&z8BV@4&Hi{UnuDSb6kis`&J%)@YZN%{cqmyy zQr}Z6$^MpoH>|{i+i7o=`G?n~-DO6vaNzylcO)wAcy4iw-R_*PBUX^NmlS#|(D#_! zUu`jL%i|)bHe;yh2G4~_@6zmTPNEinQP2*B{Vm8MM+>pw^sqn@(B_XeT;j;-&3q|) zabO@w=blya?1N4F3JF=e7=LlTrUe+088@-NfDHFaJOykle!V3P*zN6CpO;!z-&Zya zF>5nu}v4CxC-fa18C{E^NF!m$Jzil9sCl+Q%_5uc2 zIxu#kXR@Y757KT^do*eFf2Z*1TvQoIYlCyU2ByLyNMd;xMEfz^^&XZtJsBb#FVM(~ z**zHkV({jJ=RLywPRNN2v6L;9I7_lgSIynZHzVH?ilRW)8@mD$L@_{i5V)X|pCWaF zXk?aXG}X_kI^td$xr#M^oiHuPs;(DkYk9(HD2EfS)(179noD4oO%P|XB6$S`3i5wnSj=R|4wUbNuZ!nINEeG6%7IpUAZuTS`YtQY`VtTTK?Tn*+gP6t9s7}bH}Hlu0)1gUwgA6f%k47A1Ik*uZu@Uhp$ zK!x>XP!cQpAJfTsLzls421rb5BfdovRg`7GQZWSz!`}dc_M*OMc`uAP(zh$t3 zg}mUUR{h!47K+UkVlp?C><_|CnNt>U#5ny8a!~H@LCqF!pE{Un^wOML{O;u;W+ zv(=PPi+!y~JhRy^v%Y>1!>130Sm&I7iwQRy(>W|Qpu!j1x@UmU7r8tfGhG)2*A|bN(B&EA z(Ah!ldxU7WaV}D?K8v+VBE8x+NY>lOr^s-hHl^6LwlKsv9($%6QIOY{EEjZvU^FoI z%5kFoO|-C!#Fu$eHbc#}m?kWz8%G~%X|BKwy!67rS~{?0m;o0qCw`HXdMumieoDs_ z-;>2i!^KgLADBiJ6cl*#p}M*kYZF*i#gd1$HIMa#ckLb@J;%jOm-pPsu57Nr4TV}Y z<-Bi8Io<@V6+}B`dnwi&?Ut?FW^V*Y(H2hj(#&8Ty@C`q>3-BDdPgX>4ir=rf(?%g z%Ju&M#0Zs_tcj}7GBZ!EVj->T{h1bTAhs+wJN+CpPdft83Keo@fkKur%sSslDP#78 ztnX-U$*DG6|9rM8$ZB|J;`VzEWH%-uDrclAPCBso^6tNJ`_fTDL*cs~xX}9}-M;14 zxV^8CRcuCo>IDBMPl6)IA@-^7lZ4{YYr~4atvV0{U%c(QXI?|KdF;(eZQN#?Le{qs zY`I~VTmI;2Yir_fwx&O0+lIRaT@K-96WMl80Q=L^1~klRff#aOLDri7kN4IAs(%^l zoz@nka>TY?u*Ghi8>e6I(kdq*(UNVux}?D8!C&&Lxv5#;_R&y3T9QS>H#QH}$vwGq%9$2lpByl;iJty@Ici@P^(7&oj}N}Xjt zM;vVh>&FPdf?Dpd{D8E!BBx;zD9#*`wfJz?;*JwHKls*no<@(izv(s|hZOA8o}1#m zKXz|Jv$}H-iaPG!w?_(rHv%>}lIX*qjLBY#Q-TljWP>NDpJjI$^!}HsJ7>=!ssTnQ z$x!s=z&Cf@8PB;$w^GvdF(sA121(r4uFQowKFW9#v#V4w*&9<`YT0p;^Nvbd;D!Oj zS~PK`m{s`;s*f+-v%9v$38f9RU!%eFi|Br-k$W z12Nj_GXirf(SaFW{%B!nytr4s&w@4d8dVcqneb`kBJ z;Y6458s5Epi$Q`t^9zrTfRz1fg_exEP;=XSB)%KCV=lJHacThGw#>SF-Tp<5Qk z__E?#{r*{*1!!ezjC*w3gVQnnII%F6qO59|FUW3hyRoO|27ohqnpgs_-U>nV;HS)T zz}6PEnRbrp7PhkiJ#WSs$$!;lZzp`U3V53|v~S4{No;k_uN-n3KZ__=R#<&D^Sb-s z?l(XxtvnwEuZa3zSYlpeyKwtVxK+^;^hO){#;)@lH5A8`^3G#Vqwm;DoDAH3>&!dL zc$oO*6PMJnH!OeAZA#WZ=;YRD``*-l>UF2It-3NtCDOV1q~A;RONPX^9k+~C4pS-t z@6`N-t5I}{VlTNU{6-M09f+a4TEmH4_+k1kZ6s^KDr4t!gw@zN z1h2-4f3t;F`4k~LK1hUr%(8kaMwb4tR!j>YO(`6B|BK4uwvT1m0NFkv+nk@#c1Cyg zne4+uoA#Y`fSVao4op5b^yl}qdq%kxobTQ3v43M_LYz6VyJ@tJ1b(a(D!ME z?=zMvAzE6FRsn318xN_z4mgZb<#25C0yN1T^&f zmR|9a`ih*RLNL#z*@p9{E2sT(vVt&13%aWEz*KkLjGT7%hh}PUFz`Fq1Z$H}`!MX? zFh%MyL`N>tFATYCVKdvM=Tv;~a0>YvI=o`qVw5-Rqdbk`Q<*?vrD?W{>V^%LmzGtn z`$cDTBzd;_?`3x)bG#W$d79wH{~{-#gC&P{B2K8_L+~iE2jvW&rTJTMKhcXj**6OU@4MZQYFJ!R(Vcd7H#Z8K@pR9O zAUyjpp=uhkzOmS^gE0HEAGlWPsPt4^ACS5*~jB`xu|ds(Hn4r-maL3Op9Lei}CC9dJl}ShA7Ni z+f{P8QK1`2Bl}$m0rfs#3OFIl`Yq7+w^rhQX!eVi1&cj}j+?WzWnpV;#Ug&-u1;g- zgi^Yw;W1zh1C{S3A$JHf33|Z=z-F9KgyT%w>WeQYy43$=kM%5W(_-*JnGfP+tD|ge zF|MwOxWL+6k6RXfvorFiCgAprRpxJDaew$Td7^i4{<}-xG(6$(K0ugr)ukb@)V2hw zD2?s5v2TIu=UJ@ukS{uC!N?KEq|g^jv-yGJY)5mTd9F$?98d1^2FeiwAWtv$ic*;W zXgv8OY@5{(9^7{wK`Aly6F`f-??so#m10mh-~jY(PdC<{1&0HwvFfIAk2FbQk2bTZ2zO>3lOSVy|-gxn; z5`5QpUH*-HO1-A-7gl+85hA93L|sDni#391{W8Ptj)!_jRiuLfF%DhHd|}6a)V}58omH zHV4@xt)zrOD5%+J3GXN#h>9QQ;#jV=A?4%@&Cr3H*EbJ}{^63FmT^z}M8;=Vlur^0 zKlVN4YBR@Zr&p)!DbTnhJm6fqZ_%XAD z^L_QG7g|eP1kr&(JZW8?S#aVJURMG&bfd2(|q zs8|4h_dh;5p+eNp536c*J2j)xEZuzSgwY#xX=`7|Vz?vgpp8S24G!!{& zSb3vumqi?11o+}M1mc7D=X zaZp(iFkaF_7M$o{TaLS1HkUv3-K7*UzK7pL_MvNAAT5M!-~_o!4j40O`LuvMOyJmJ zX-kkz-H`AbN49R=n_hrEpc&i;U2Mmo5CtfR1R+pBJBCLy-RItJ2cBKJDFm3aO6(5EOjcK zLBxS`@Holy;_89Byd2$n$ zi8`nuAv66cOXr^GZQyX&!j}QV%|{ESWHgkJO^lu&+(lt_kYq8&OP`j!Mjg7HjWDYT zMyd_=uTadFM3V1}?NeIPS%OWq*|JN;-G4Vy%52M`a4#2IPfZ)r!e>Uwr;C!sER;eG z`kI>(2ytdZv;Je6MW>pT6%$j@X~G+WIOKh@|Z%pcCNGq0v&9)bmqy<4~{+nnQiR>?u)gi~KsS>91Y_CmjxYk*&R?ezFAUkNa zAC{dOdv+1hgz(OfrzDALLBSiF5a>A3_v3BXc1m4*J#S&@hF&KItOSkQo^|r=4iNB) z)r36jBcx56K{@9ew*?|PDN@lV%Krcs?$U~JgjvJne*mXVNZqnwwEMTRh)JOZ|Dp?)!610WNdg9QUq1DtuE1ch2D0+ zx3k2mUGfR%$zj9U3$Lpl_dR#c9GX})0cBhXyEZ0*57YN0%&49*^+vtYtAFwUH0Yj67%nq_@2l> zPb0j$Smu10Uv_><0m+92ijkMWV&FN0f9>h{sp{%UBe}&4WsYw0#p zsj!NM-9Tkj27T>Dj7p(k=Lf!cx$0q;k&lP(hR$m&ay$DWTUC8azn4 zZZ#dIP0Oix3mB105P8=w*emVt^gisZ*HC>Ozl(%rX!{LLRrn4}4g!RKf0geFDI?nk zNSXe8>)if0oZxC`)6UQ;z_~c^3LW3|OUfDi#0r@x=b|29MjHUmZ3Sxl{%NtFXwws2)@Nf3PT?=PdRW3$&g+OCx3*^n(t9tzqMaluYzriG=@Laf@@~ z04X>)j&neezhl^+b!jvPE_mZydd;lyl7Wo*M&qjuSx}r$ zL6e7rBNwMU8N6nch}t>}^jT}!?F*m}#c6Obf~m2T416OqibKoyUDatK{n_^&&v0Uw zV^YJo`E9siQImLCsnQ2t5S8_U1m9WNN@S(Ge^A3Ewg3u1!|;6hZ{YK+ny%R-C4?_G z$n|eSMGZgQWk~sH2kqK*&tWBKy*$Nk(0B#wymHSg&n7a-Q8LHr?U63DDh4RKTbIWV zIz`D^cK$vvjRTtKRs#>ZIns+1>gSse#w}YKSLNl|wRXf-`0_g1 zV=HGrYRk!0lZ1e31CT9L%@DO2M;Ou6isj^3VetpR3w6?m_P@TVmcN#@X;V zxtMYMUxZng{I&C-Jki)_F9Nf>6|nK|4+V>7VCFUcwm;LIcEEdM<*s~$=@+b`%HkC2 z?;k?50tRr0J8kUBTz!U+o|1=PX0{i#0!Pm~n@Y+s_Ns~dD4J^LXtkjvp{(>l?1!`? z3?vMv)?8A?v;c6-P_!Rd-2QN}lqjHi?Ici+6$m;{+jXu#VO_y`ZeB0ia!Gxz810jx?l&rEY`%cGNfQg#dwTO-vliqpF#ZVyVU2N?(4g^{^!WTQ3X*#eYy#F_mJov7c_0CA{2&W%hbuk@RvRhc-*iOl_SVXJ7e%!Id8DBGTJbS zIJ`fW^-bAsE6t8(@F|fnYoca^yDXz-M{@JIok-Q{eZ~vBuX=>aPv|*s27o_#dy}TZ z-EYaa7w3P+BiE>Y%b;ko9pt~O-ik#V?XWlc73Um3sy@xL{xI#81ycy9FO!wMC~qoh z0A(XY_CIa`1GNNn1T5dI2sbVL_s3}!LYT~46F_|$l3LHKZPG~!H#j4%C6|n^9rp&G zO5d_qDKnat=g}_TAVwmxKkn?il{6y*E0I4J2eaIrBQe#1gqM$2b>4ZS3Y;s5Buo)d7$n-a z{Acao6Y!5oLL=VED&GR{w6G^M0maUcgR=L8-E zYlD)}j;yRq)6=3#@#0WF#5=1sZB{K4Ts#3P3@|)8fu%d@_kR9t1N|^3u$yxz$}rZr z?LiNF^f@=f*;50CV0Ng7=aF4S|^Xfs&DQSJ)JR!58(1A~rb zII&+?0h_?2P~Hk&P)wWNMBTf7nB9~*&3mXmRAQBkq%J=Gr&nTG4#FN1m!TeI;6Cu3 z>900^6sV}}T_TDzkKg7N)*yO>?07c{D*DTyx;F6s`Qdhj5MtJj9QUMV?auaGVD_{P zfRq`|apg4SjWj2WE_0@qfe!Cne6R`-G=WICFz8uC$G>);8!)K1rfew;2o)i(^@2-T zOZ1iYUYZt5gPg_c1KNCI3y9CtG@6mQTKFrhns4D`*e+xk(s+g38?Hb$WR@mQtO(xBBv9|Bsu}hUr-YoB5hQ7%X8y-bY}1^pFafnc$re(q=?nB{bJ#6a`6079WG>>`P=}TJS?=f8 zfnA4DAgxf0ds5_VfcEY+;ooz^id&)8xnkh@TdSrJU1lJ)UB(4?+^<+?TmC!_dVN=# z?;wwfMe5nMG{foHU!NaqZ0yMTPzJojNx5&Yefta4POx=zW%aG5Rcn3n6Ke!odgW^# zP>;s`ef&!j_b1GJnRn54qs2-6e){;&rD2M;o7v?v4GXsiQr`Mqf zpH+s;S2nhUK$>&Zrli0Oar}7npPUvO*%aO`wU?F~Hx*0S$PNQ~zy||+EGxHQbLifN z(hf2Xw*+9u9?<3e)HEKSeIFHbT^|dpH2lA9PNe_S=G3oc&o!fR-h#G3ov7uTiu={n zZncD9wq{1voodci{l^j~HjW<6OUYZao_b4PVY{h~e$FLh;rgy8%fJHlR`e2h5PZfr ztNYb)k~DgF=t@mdac=$|KcJ28mItnq^YV=t}F|0amQ zYmt149Nz9d=cC6>A^?&`A;CO4(o@NgEDR}GNb>H<-QrZAc-Q#VKf7+|QrNRsN#>Gk zJy$zRodn&J-rEO)ER4=q_)jV4?`k(u(U($PgSvrgCetD*!~-ZIOUS>m zT~nekPXy$P_HQlnP3X0g*FAt^TOq^I1Qrvc*TOnB$BntC7Sd(UEx}&L87?|B9)q>HR{FkfQFq`7v;_%f&1Grb%Qw=!!&N_8{b~u0&K?87SPxdj44GRmDb5St^sbbDO#o9EYt^5 z-IA(P3n`fYwL#qZ2m)a>kU(h?=b%mv4GdsmX8=^00VikCCF}V<(;BGx;?8%l0jeRV z6IdU|*xaEn|8>2}t=a%_8~-Cv(whKC_i>nj;Cnmw9YOeg%_VAt!V^yr&=w;gThvxx z{6B5HAAOq7$n6$2$YFohFaKH>x-f33uMJK9B=-@p0ChM?1p)0Z0CYr^e$#2PJ(=HQ zZhv#UL+DW-L2zpZ(x_ru{C*kj&weJ%8}Gnl0V+YI;*7dYBHi8z8d{0P#UYR_$j5^Y zVa~Gi<>lqF{MIrIKco`a(IC~B*s@~JOaN#x8TdfPLv^ zMkN}bfM_}8SB3L(u^#sByc@PS)wfke-4B}TE!I|m?E6Z+8G=otT zV#6EmNZC0a_R}?>rGP&wa`KLn z#HK-yjmn0Uu@&_3{qqJbTS=nmt*2M;%CX7r+WT+&p_9=+J@6h4oi#SD`{Q=%k8apy zu>DZo0oA%!QP3j=G}o}9VQ+192ZY&7er{R-cwj?Sa3hcgaL)p)ts-;*2M&JV5@-M% zss^yA>K_w9_(-gd3n1$Eb>PiiM33Hd(lyJyxjoE8b^97fWXIzbmKvm$R;%h9$WD%b zwBz1(Fv!XI*SdiRU#cUsTT#_YxEEOhdt2LTu()dgSV(Z&@DFNwxq?6{zo+W7p%;0J z)69eCUtR)f-DPrevLBo$FSgt0u{u=qg4U)MqP9I!eqM`o-Mk}0vwr))IW0BZWq)SQ zb02>Fdaa40X_Ln%C+5?P5OLgvrg8T3gv0)HAWnmZ7mrjm=m8qi777;Tnt+RdR-u$u zayc4`3Ijk{=?9N&@CLTvX7GF#*WloCsT+g0R!M^HFwER!4zTk%&Q(Ch%uG``ozR*7 z-Jh$^Jl@);T{ggB_S9Z(yk8A0mwM-Xu=VQ`Lc^h6D3Z!gYkc0?8Q`h#Q2@<~QuoXz z{;Cv~F;bIu$t#HFcZ01vNzoXREjTOu{Ez;=aUdd3m5Td{kXujzhv(QOEHKbP5UimCj3FR)2_T3h8k142L z&@R8O;C4#|W@qLfKR^}hIG2CR3P#LuuccJJGQ!YUvz2e2W8$d?eEFWu_P;1MAo==> zDCX{YvkAtXmEP5p##(>21B=h0Duv_jPc*F4@h#xtCK~7Bp;$Nsn#OdrGHs``cvq9w z!I*%xPfUd#5z@B@bQx`=d<4hB-rx&zM4KJWXU z-#K57-}WBRcQb%xQ#;GeJtOpl8jmVRW8#HX@+sH9BVf5rQ`6t zhn>Dk8|2*AMROuos}a;t2Q~D@wHVMZL42r<%;2_X%ga;v50YVc(sP2ye)|w!#>mz% zcQJTd9`IEVwr$@bYa?Q+lAw&iV2~~he?nBIdWw9e23-%42|tzg8nyB09}7<-K5{&I zcIuf~Wj;Tl{D*pE=#J#A7V14{1|DEgc@30H_;cB0^$9)=pZh7~{N%MO-<#YWH|uPL zC*}$D?!>Q3vNp_{pDNcEK{JJZcpQYSgT9mH@U0wFgjRT8x=4C8yN2H4TMMTR0jc*#q4>X*?p`j}lDg#FA1neRd zta^PW`@10JAP#1I$J)PIujdx}vwT!szU=g!KAmsK-Vc1E%N8q=G(J4^aVvd=jL zh7jTB7fqE|2J|&KRxeInD>fHO3_3=kC3Z)`Ek7k+`P~`s?Cd=3PVTO5BZcNoJPP-} z`WSc%&)y~$@jBXaJ0FoitxgG`PVlL5sS|3K?p=T|LCX2i-{+Q9bi7XKBRIEsJ56Um z4xF}7GIqCSheny#jcE_lMCQvEH;|^6WN1A33q2WS7W1VDv_RbZOzao<6jYAgYJ>r? zT~%|Iwq~X6n!SuqO@_*^Aer8bpE^G!Lc|wdRJi0-2;mP@4f17t+bTh7VC&sd%hX_e z+lRgjvgowp7a)L}cj}~>tMjFIxT!@5^8=-9dmBmv!^;g4>4WTveMJVI_H%Y-#J$o~ zc*9=1(q=eK)27{_`~p|f#p#1)e5KqGmvthEARF}}nVBS4iUE9=i3W z(s9k#BnN|`q>Dy=78DMbcsBB748qsVtZ$;Ub2MPXTxs|q0@|Rm^+lbs3^7+0PxMQZ zg6WC(qIe|%C3xv#sE*^YEECo28v|o~@UqW~LM6G!fr!zioe4YnLc0##$L$e12by>K zOF6-Nmr`F_VqSHXzIr3_I)&nPDN~jQdq)j@NPKlN1p)y|0_o(DbX<yg84(Pd|F1`Z-?>(Q)3qyKv~O(O@akubKrveSTe3!}-0;J9sH; zG-3tSry5KUmg&`lJL~!2zrY-eM?-M+%u`*V-PE%o%6)sb>#;Ue>XMG1&1DWv!Gy9M zIt?2rQya^Qcr^4rY&;J1kDZ8!&|7YjG-2_xjIu?R1E$E=+p2Kj2J)iDLro@0>^hK7L5k6 z*6>}`U5%*)i(4!fve>!NyJT&??}sKtZ7{71A?7J?52$ebtnaDB}31jXm)g=SItb zl-JY4uR529cf=gJA(BV%6Z#`AF!CUMzZ{^ll5$;(q5k^$r*UKiLEWr7AEG|ay>rk= zTJDp{5L@9i{{2(<*)fK&o~}VlNrY*MlXc<6O0SU))k|xzhxYJfAN_}Hma5nXGN!v= zooQA=>8)@4c86cO^gxz&f67QIp$Y>!H|GRBC`D>Kh)>Yv^)?)a}kDgjn#YQF0E1jYj>%9K=^G`%3H2Jf$=t*Xo#@&N$MKgFLVD? zXvVBq%Jcyb)9;ygL={{1Tv`+zha7hBC;BgRTLhSE`)ShK%!6Y=hSbj#A@rs$iZ6na z!%$o}I<@BNIv&Hd&@!F9vV+0~l%8`#Rw2Z9d?cx8>O`KK5Q@%5g%|etBJco@YpP#v?StxT;RbFQ&T4_0Aq!HH|pb zlqn%-%ugEq@5HrEcbp zrh2dRnd=!w3f1QRF*5{+Pu+e%qgKC)7?}|d@I)7N&1USL<|bR;N^s&=5xzhatRG^$ zYpL%tM!0m#0c0X~>hHA()~U_fpVI+1piQu(YEVPu!*O-rX&0151QF=vbymiSEa_uj zNRD>{fvS;d=2T#0p82d1pf_T<8RDL4DUla|vUXl+-NO#W(`EN_UN%u35(VyR&Sj*h z=gthQ^K^SN=PuwQIRsB*C+#<%@`Ew`7OQk0@$yc`pyEn zP>4c-$9M;XuUE}5#PN>?HRp2u%aDs9z z&8omNiEjuH9|FdYW~8)7>gQ0t4XnraF)bO3wTJPgFFFz?;c6}qjWRBfUSyZ8g z@vMkYd^K(n{TSQ8uJ0v5(P&paUhal-zhOh`>J zYNt*Jyf2r+UJK-QS2FU=1Wb852n@sSd%v1^v{|DE4#Cu`JJsPf6qK%xZxSP2YG3Y! z5h}rtE+cC<^=+DRCvoE(R1?z{t@LRYwIw;8%Cp5v=+e^*pGaFj_A#~n{B`3j85L9T zt=`LZb=BqUTEw$ayFhjW&?-~@PLdsn!M%fj+RB3lg>+%HI;YK6N{#r1O(+Ic2}e63 zMTN^=7OvAa+mUy^J5}~1h?}Xwk#3fBDaB8qI=G%&mnM(wRl`;)A3!Y4ve%ij$ovwg zCu$Y{bqt*8glsnI`9bOGMlN*w*ctm?#dKyvlYyV3mrKiiTN-3Z-Qd|79+gd!poDW; zX{^Y(0RvLYxn)pMa7q4^68m*wkNpO7ioUBr(r}XUDI)g9AQ> zmbrRcQgYh8IpUhlBpu2~wx?}2%esm8+-h{6r}oE>2QHP&^d}ZHGiOK~Z=|$YwkZ0K z30lQRn$#9aw|^bdqF0|4FA*WP0~~x9E|)?&XC8tS(_vKg!Y+ zGK7}y)S2TH(&i2bZqLzYq=N>kcDY10jt~fqssrW-+Ye71yEa9i_*Omwwff6QPl?Em z*q%Y>en^?9Oylq)fazd}`c|XRG-3`Rd3dJ5#GrXDdpprOYB~e%#gce)OYzbf`kY*FEzgA77GPm(%p6}UK@>xL0PEeLYf0B6#72_I|6L?Lpz6dI;wYLVh)jxI!^Fr*FlCDSl*Ujqt zBa)pO@b{F(B_Ai`nC!U_b|*o*o+@#x@C)t~&k*U4Zf(VlByLeJb3h@7-(3CbwaA~m zAGwv;@5d#m!KqKl?z}yB`{3)$6MZUCY9P|R#3^>Wv%pfno}<|4KE!|4RYt?5O>G7~ zN^1gIxt-KT4Bx%{B@XYYc2l6|ct8pAYUM+WS<6Q2=JE_MH1m6(3fQ($61Dt1#?Dm% zMzPv}0V_l@WPfMa-o<-kZF#S8)msfhGV5*(`Tg&(o5gBeXOTsve~$hoT24`&wx%oAz4EVP-+7=ub@Cog5zG&~Ayr(GC~GyEf?rKsI|;KqK*OS} zHtIzWMFr&n=V`{RA<+mut$xCH?HnLsv$en7T|kMh{SG2nIqGj0BGPp%l*VqMqkbRC zdrKS?cqmk6P4j29K{q<=j<{RkfBgycN7uRff>r26&5U&74cVc=zuiPAJ@ykqEM7>0 zXnN8Un#O!%8gBK<%?pAO%fop_xkZr%VKC*%aC0jB6BnSr%hAaR75H`(6JL@)vH(;P z%dG_rs-Qk7o^;tG=v5`4H z;VmdAm{>Cw9n<2@++$3Jp9dA_&(k!8EU5w2!Fh$iI89+SP+_7fXO$jckO7B=V+PAk zTY!J76Du>3b))AI?OgPaTGMqhLR=|SbHsQ{E{8>k%G|5h^VXHJ?)nM~o$&WZl)yo?~H zh&l^pwH2)nN&6tA6(VVqoG=B|`DvE^+lBXNB4s7SraF8Wf4ADeQZ07&b^OYvrRF)b z7Lr;kA8s*sqG%{GH8r(1uPRElm4Cl6#c<5e(jJOop^1}%qC2vu{0ef<&yO^Ln~koU zNqrYo7KNZw;BaukhkxlIu1@KOn%V56q$I}v$0*M}9z#AfWn>=^!|Y$FTEcJ9V7)Jk zluihw3wy(t)(w8I)HvGfIae=rbO8M20~XKMZJi^^`kVg}ES1OYnSW_J33hr0m`tBD z)krdfab3~{ zA9d^I^Sigk@j8lezy6yBEB3i}6n!;2EhekHASjBwWL=P zY5R6}!~hEi3ikd;3s?KRC#k(T`c625K3j8MKabKiHSHBoRSR zd~w~L;6GHc@u>k#NZr2fWga(cDqc6ajP8fQNF0 zPm`claJp=HBov4*A)RSqW7D4K{{274A|W~dr?JQhL-QSoInUJ;XUYJeBBrM&C&fqf zQGf!`^-^OJ`MaEq2u&!Ba*yC(=Fi2bU*=-e5B0!Z-VT#G7jbatWsX-yNSdu)eji;@ z840aTa3~$q$?*Z*=@zjuiLfohwwS=nlF1tj9E7S#!3J}stB;zjY_#YJQW%@RY6z~~ zehvuruRQ6;!B1CP2?mA2286~+&MXGdi@>+{h zS4#)RwV60E+pszKYKf8m0LI?M;c{|>%jD*(xv?IPpDfkUU22G%*Bnd1;n;?TC7GZ{ z-&L3>bq)pGsnxxd$sf)2>>aj6d7D0(oTIYCdrmD>cxz=q^7=B7bnPI_9H8Z1m&Nxs ze;tShETI{9EP)`QnNynV)B#DAGv~;m%cCc`8ue|B(m|+`Qct94B|)q19a&;$1!a6=R{*Z^*+f`FSs3V$6WoW! zF&#_@G|xE>R6_3HoVyR8yFB5ABgDvU!2c{YA0imnpX5Y=jlKYW4vieDf)2y*!KnV5 z^_u-RO_bH}WRao{Kz1D}S7=5CpQf1C?bR@uO=7_Tb|8Br3)e+K_@)`2xsec%|mjgiW??J9rW#-$AdPBpcz-JHdBs$@LD?kg( zuVRE(O*7en;?z+-gR(Qfx`VCuyq+JB@bE1Awj^5ry{fjs6{^zAp6PGn7R%x~{AJ_z zsiVV;cm6N~Hr2UIVDx;IhBL}ur+QKz{AGBP4IG#+w%<`yHrV`>+MSY|d;x%y%WUB& zZA0Gr?E{B?Juy9v%g6khjP7aSf2idq&Bg-24tssvjG)dL%&RJq`zxqmk0= zPjo7c{^zL_`}+p}u$pS&{ZFwi1 z@(no+#s^QEF-)XPB?<|Tr?`ldy;>58F42aZIsUWtlmh7VaE4M-FhOCA!+hjRr&3wQ z1-d^y)sp2r#jD}K*!GOF#b+ege{%B--2$Hv?LWVsxJiDzUxxy?IrhPsZ2A-wH08UV zKnFS|7(yJ5W{w4uJYj>1r+2$ogpjU?n^p>s0mc_+kaGus*#1#$RaC(s5GtP&SrSNs zf)6kFQ7i7Q-_r)HJo8B&bB0Ms(rFUn87!3|ehuGYBS!7`abWh@2(j$`2qdq5qKyl4 z!|o(;s&YJ!dCse@mwLc#aU5F86ZWhwhk~%qM$u0^{p%jX7?|(%{t}t}!6Sf3Ib#Rl zYTOR~^NVZ#y0+9qz(ixc{UgJ zd1_|S4YRA^hiUL#qpUBWKYrpG9|LCq(0pS3t)O=oei!~QnG_=F!l!Td^&g&jepO;y2=JembmTLL=~k;isk%#Hyw+KT*DTT#rqBQm9qxmKG~x zqBd6kg4m#W#AeS+AxFrTk+(df#lPl|vd<`O(t2-kB3^i!g9 z0Nqg?ZrjgE;DW^7cDfS?mE>6Fo|Ug-Tm}UHY88!DQyQ%BW-~9(#WZ@tU~FR!BaV?E z=1qLR6S%TN+Y-y39i7^?y@x%)N@x^es!ORm?Tn2t>XN(OyInmav?*BR0&B2LAf0P(x?$m7x&}_afcx;MU4#O4S4+$ktV@skdY?650 zehZ{wCa*giCWCD_Hzyy5gW#W!(uv2M_Du>7z|pUFF{*+w`waXZ?Fak!y%syaPdv=v zg|i*he6F3?f={*GWC-m1h*uV^e8Mq~C4R%$Gro7j*v}JOxD~jGhoL_QibM{$=M$=` zN&847Wxg=qO&p4Vjk=WBsNoEm%iuoR&5m(e0oOC>B1W83y=(AoEMym{q_2c;E7)5< zadxLUp;5PBPA^M+7bSfv$IZsZCf2idnyEZFg!@H##8qlpi-$Tzr<~2(#%@hZb-1U) zikJ~_I;<%wu*qe~)AqaJmF4b?Rvz0_Mu{ixuEysrdss#3_p)YdvK~$b9}9NkCZnIk zK6IEn-xT3^xs5HjPi7gVqHS%e(?@R$~nLryPHeybA^r_!Z*C|%F zj*WIc($`Y&?>P}~?~_q*Sw`5_Sy3vk%uhY^CGqxoc4!31j%U;CvAQ#WK4NQ?4R7`1 z$n@WvwLPBFfNlYc^iB$U9mbwbilB}ga9MDcKo+&adq#OK4~yTu4B@wD7=m2#+gJ8q zKAiVjJa=x#kcwtkpgP&s+1BKjo>tDwS-Kw0e}I=N9K(t8hO%k8`oxF(63#T>=kJLe zRkrmV#(*(u-yEOGz^rETMCGw;zj-6nFC|QDonj`rsiC2|#dO~Q|EA7Bajkn|_IS7b zT7C>@xmAwI{`gfN8eB#3FKxWQdYJUGdWty^ai|C4&-7{gRIxdwIv4eyv*X{&GeWxc zO#IoZy1}b}!Xp%`-8_V;=uuXOufx5f`;|eS9A=8Gmcm`(`f&J<@FNl!Qz^ zZ%`kC(O}Ds^N^(uk0%{2$sYr~VmQKx7L3x?cq5aQevBbO%Qu{c(0Iiluyi&1hsJMg zNpPCOSf>KBm_Bj%k67Sd@y3kTQx%QcYc5^eKr$|1 zj}0;h?wqLb@;AK`GQ_39^w5ZxgKSKssL$=M!jl_dqrlY#)H@=EL9phq4j zP0=mV^v$XU6Qt5rbz}1>roApg)Z8go9pHGhu?_*J<~>VudhX7tzXCKhYj0p_YX^9DfXt(K zdJL~L%U4r>!-ylYM*=z63iBoWzSbFLJ%oqd3H8m`9xZ#SVkI;XqH!bF*hxcrZSp;1 z&LVoX{kPa3j`YPp?lYK_f8jRnKmLf4r_SsWcH<696^vS|duGSq^fZ~4MPSJ+#S<^z zL8Vezu0627^NBi7sPT)8P9loWAxp9O@`9C3`;P0W{8=#8;N5_1Qcbud|G=vF5au=p z)bGRBk2YQPe=poAqUoo$JEwR2)7j($5*SQUmFe9%@t=whXYk9GWI7r#Z)9>g zc9UI=>M{B{9BOQ0XFv%R90N{=JQ_qz_SL9|xX=uHb!pN*acXRMs5Il-&-LG_HefHk zok^^sh<22)Yp-&;eEzrhozkd<*?~)+8L*7p|5~PZDpHW-Pn&BWX}K2&cca!Q5UFwx zS`^%(XN)wvP2NfS!U&GRv%E~=9K3n?mt~e*v~B3yeB4={BGWZ;LqAT2a_X6S`}dUG z_nn?+Z|gSo;pS?n2d_F`F3KB`nvxA06($he27uwcFRrW8B8ftRSxYtb_xolud&W8Y zwhyzg4rv#p|9MHg#8BEaJ{jW6nvD>idSTdsNs@h}sGd>NT^*j@E4!aW@QI6D z8#kc3-`zNM0`7s~G8;T#uH+lX-iKw_I+y?0wnJx5lxF>i{UDkDFR9AQthKsVDE*Wd zZi_LL%Wqd%uxICCm_0XSVVLt?wDX2JaZj*y zf0MJ{iNxSr{wLWGb#TGAnEyK21*U5ABa+#{TqC2?{@FJ|Dyu(Tb350tOow4%qB!OB z;FJW(x}b_OJyIRa%|BS;p7#M8d*QM?I<)~0JpUZ&_Jh~(z5vyM3)4H*@wwYs;F>ip zzeas%=QG82C3Jc0FeC1kMX+Lk)R6qbsD4)%jX%?n!K&sk)D?eM;SK#X}Zxp2rUG*QR@q%D`9w7FVFl^xs9lI~KB37hN zH%GW&eR(4hn%?+Z*M1a!VKgcBc11qOw05q0nB6$8Gsmid4|kc*=lg`&m-MyLaViPD zOlAbmgh+}RI8Qn+h{@CtjKjZCB2(Qi>?R%JFSkib$MbC>bbMcW<4^U!qF06P=DZhM zlCaN64LdZ#VUKK%)bZ6Bz^1`FbQ;t0$w}~sdA7;uFxPmB8z-^7+wYuYZOy=O;j7^Efr-ZoyJ|0I&KEBL2!kx6* zdZl;1@k*tM*LNWbk!6imH?}CDptm0wOOas^1i2k~Oc+nHQg}+l)%l!7(@ZH7gTsb29 zYtrQLcou;!r($0&5_w^bH&Kj77m_J$HAR+l8Nlo5;r@CrV91kujdJb@w3%i#gN5y- z)8PYtvz{to{Z;|11_Hry@ux}`VQre-&x_~F5CUf|rAO^jBh_#IEmfltk8kTAngYEA zo&(>|)TOljh_LFJz;=|>_NK-z3W3`Cbk5^^v`r@NRltGR5UmCYNBXF>ti; z^lXU8jz|Es82KPP{zPn-99zk_@zA&2y(k6n8eo zgZop}!FZ9L-sA^yccr-(VFkoBMT8BKd{2x@oz><#k@)@=?7V-3f6tIjSLBX{qQes3 z;mS@K3;jTSm-+Iz9r)ipT2B@SWLex!B2*f7I&AW{S*}-=2X~9>V!4;pn+lp6=qFXZ zW|0GPmdUiZa3`{wpU+!gk!3zU8I85$@V;hpaeEc2bNxP9s}~JZSDC}>Af3FAHHQhzAGc0HuJHJXLQYZxCgu*@C4 z(}+AIti)TXvq`gnKpcsDjXGX(DFLC}bt=zvPbha{Qw9=KY=HSc*=iJ?ZU&#f{*ZiLoqsk9`9o3xb=l27 zdHN4mKnux0Cz}{K1h6~WR^P^OVG$Ae8_Kq<7er*xOkr3l)&%?cgsVGk`mO@xV&>G zL+UJZadc=qS~}0YPVa4~>_NG_N}4FLqXpbXX$|Ba1a;P{3GzxQ!?0X0fG>e?>Hr`r zRQ~1y#fUZRoYFLV^cAGXyj`b1d>I0pM>X13S=XIQf-$HsViUs$JZue-xi*N_w8Myc zyFw+~9=R4pEH4{MVfm~<$j(-R<%W)pxoBf$Ypt{EHYZMuof%+(f|_7;-^azB@bXUh z0K&LE!9XhIePvlzwb~FgX`%JAawETwNOR>u-_-8kArbM}hGc8A50JP}&e&ZOZG;Bq z8!hd*J{E~1YGwFkuI$ZM7Sb5FO?*eiz8>4$CO2vlLM88~&n9u=`0WKuuxB1O8cFH! z?Gv~Osie9@#WQWwniV3JvVTlt?}%=D?(A8Q#FaBAikGvbW{_Y*X)nRWI(JhF-hTKt+^rI2C8vV{^q+NJ_1(TqoyKm&2Fx z2*uUU6fsZM@{R6aDz~lY&=nn68A|=mvWcDlVy8U~S|#+;BsqZE(CV%*`Adwx!#N}s z=2OZ`zF@I|dD22(=ndR)H8L>gG$tQ18$N5gXVBPawF{P@o7!THGS)0t!hAVlxTxVw zv$~c{Q*Xt!OTACdrtW(|cC64-ENIjeO8>M;MM9-K0O6_3fOCx@X&?op;zL zRBAWF`CDWs)8XyMOYk!q&W3f6N~P-xFERI;2-$QbC~m+>WV_e$Mn{V@qvt(0>ImsW z6Sdk>InJlxDcLBD9*d3&x?->IuiN!z|9WSc-qF#|QCgepGruru{;+1GTWyD```+R5 z3{0p&99~`Lr37X6U_ZI0-@`{u6n?n|7pfFsR`v~K4G4)xG>lndtikHwQn$Q3U&gCM zK!MiVDAH5^RM*c>+VvHPV_jWs+!wk+{B`nWs$1Pe4vFLMYk6K7$_e3KF_W}M1PW86 zw|?@gjjDbVZJV`8obX888VoU3!)+-~~{TGNIe zAWrXJ-Xp)=xgg(c?i`1~uxf^m{pz0w z_SwDW0i2XnQGpYxopHy0?638M@wj<`2vI6P0yxtO`o; zK$`2Q{$sq=Xf#A8$J{3%W0v>2>}dU0<=;bN`()Ljg;@+e(}`z;YrXrCH*-c`pSNUm zGJ91X_!;P>t?P+MBOc9pg!X$}FdXgXrNaXRS3uxjlg;oli%bmAH!)^}Us38)OeY?- zkN(tDG}}@)I{ngy@}x(!BZ9^T19W4}QA-A3dn_7@&csS>%9emUOZ6YXs=1`qirU zN|OwFScqA`daQ8Vi>gla%-DCf%<`_(9vIA=A-!c;JtE_@ja)McWN>{RM)B(a^Vl=k zn_gGadmmtjxz4{F`+^rUCcraRFgSv_lZnB}zMIhU|#!e-q z7;-Bh=Rd+a5s$UmGFX^8H)TUuUWD0(2F|)}E5@aTsr9QvF)@oRrvm8(Qr3D}OBUqc_WZQ~+aY{3! z#dBN%mN-e(Mr(;#ADg>0Kg8~TOuu_#$ochVp|Q?>7JG)U1$~}9^(A0 zL;K@)&_?Z!pG?jd6h3^l&KR2=4`L#}-nXRdC;TG3T(2(e6fn8>a#r@n(pFTE$=T>Q z+nJdpl%+Z@F&A2L6~+Dmf3qkgs9Vi%_KQrJBd+Ar3$o&n_LAD}dv(U0ZD_W`>G=0- zhbMZgtdr38^5EH{$)q7}qR)|==+n~+t~9E56{4>3mK1m{W;qp%wMsz+w&`MS!3BdI z8K?QSk>~cce~-4|Xa0ZhO$7kG-`IQ6c1Ro#f&Zt33*>?=!GuPhX)roIgHWCAX!3v~ z?TLwl8Z1V==kUqO(zN9ENobFLLQVW?cnAdzd7@V-IrI3!oX2j5dU7BT(oa>jUWSaZ z>wZ`~1RG6nR00rx(=i1pAblz$CLuDnbR+XqfNpK-!jf?-u5E{W2qT=Hl9JUVV6IBn z1#kCmrzeeIb9+|lY}MuP0cHIM;B#O5(TNR3OnC1rRIjU?d~@}>-&NAZ)Rri^qYI$l{dbU zZ-6lmKGE1J*DChq0zK=j!5moezFqI7adSU^uTnZ;Vw;xH`|d7v8M+Q*f7p3=a%)!y znt(Obu65Z!%K8Z(<>?`(15hs(r~SDb{b2M9aKvB?7uF~}3n$UYQv`9cMg7;E^bjcj z8YK6{dI}Y7A&8|)e*zQSQ@&@q^}f5Cg1ejQsb8lc7$;zS;nB#(! zF5`nA&`rQIZuDSLD!GFIX@{e+O-_uNnf}_hxz8DJI4n(4`DfkI?ElTWCG7hVtFjE8 z34jd=7>gh9nRMLA{YNSnHZUEm(ZIYM>?;I?!g-u~5i0MgW!`K6TjZP`m%I^ez2fy> zb>OxhUjGWcJi{G-C)DOIGLPJ1t|fILE&@OD|LOlYykG&2mXW;teI;6GkK_%Mu$#B^ z!7Ew8Z6N%1JzjeI)W3NLg%^5mw=NJ5_M>-o)M?>cK2#TX2Q02uncu@zIxf8he}Ve$ zw4`@E8S7xBn{h=rsn`~F5Q!hSmbJKmI=Whcqm+_%peM zo!b)?_bB?0so~Zp?Bkt~FLTOopwsiA4{z!%{%r3<3t#BheW5ewORC};{YKu4#>zjB z{q2w$snDngub-QrRxyYZshj>!;X2?Ra1R-Mdli8(kSy9jt@&~M>E12`mqWM(gc<~c zjKbcDe83NpAV|%X9RynWw znxH6f7^Kq7NuUf2@e513WUOH(=1!wEpG_SgG_`@h&((Oi3vh<6m%%vvgC)?B-41WT!|ijrLL||_0}{l7b<}@aYDcpJN$kfx zhbw(7(r`Uoz>@O330UHauywJ^fKF?54ly<{*Bh7vC`z0=vTy-Hl7MN$XOjH<87OOX zk>n3MkN@MJd5-)ubm?$j@WH!|!ma=X1Mt-@Gj@ZWXi0WEaHc-w;XYi+`G>Q4(s8I9 z2(W++TN2=(!PvMiM2YP#y=#G|cpi91YM}nFbZsx7LmRved`=Lo$z_7oep)69QHQ}u zZ7KBqKf}c9*6}$lgdCh+jz7n>oig%A>n>-yZb-GfNEt~Vho>6808Uh#&^UOv+tDr& zWZgzyPt4~i^06|YKHvjW-T`x9zlHj2ZEzdx#<9m{gN5@>dCo(rJxkzqN9UF2@=v3Z z%E*oW*%ORWKOs5?Zxom1aE~ufz@^iFZWzANVxGqWQyQBB48`(3nWV+mfk%nZ+K9H* zMQzNvoHT8Mi9!J!hY|{L{8reN@#ICph+lMhErpXwoum%?>hwf@fP&omx8qNgkB)A` zjSJ~J`TMgMfMYh5yAg}=7JDk=#v{F@!n{OBDJE;SD!JF17h^w7!Rm_AAEr=#$M4|R z6Z6zE34f*V9IHNWw#S10SIni`MkRy3h3=hdLuWUvc`6-uM{3uTuV`stfCVVy6TOvL z+8IP-_4~Y6?)7tiWs+0*E7?S#$&uk9Cbk{b5H&4ko(ppN&;kWP;W17n`A(FitPeWi zob2UV%lhFbVH@7Zp0WFJml_R=SMPP@Amu` z0>V8ZC3rIU7WG3FaV0M77Pk^}-1^@_5FR-H3xXhr@+t6gb)Tw})E*aVVlF1Xp8 z0!@YhZoe56x4WP&s|q4lSh}|U>@bbd8<~qWvd!M!%J}n+y!zA?x<4#8lh~f5&s7XG z!}M|pb>fk{YVz(4L<=#lLz%}8a}^xQFW3*C*pgUY-avC#K}0xzVl+a< z>RH_T3ZkcYqnT?exsEUh6c;PlE^d`+7uZ_jR~VPV{}KkPZty`&7v#%wz#M%M%A(As z@QLL_lXlcG<7<>qCYQ?iz3HOfwPTg2bPhf#b;HyiR?OFbYHAV-)^e*MXy(dzRtnH4Ni9^Ns9ZSQxX&Ih#uwFbXFbEt6r~NF=TE!$^ znEPp8oZKx z+CnIcoB9$0Dj@WVPYWTH)owtVH9?eH!NJ(5gyfC*j>~-#bCJEj%+gyj$ZJwaY5qJP zw{zgLJvzdw4fg+DGCL>_kewIR%BfTVqds=6Xb2`jA5%;eL_SF5u}l?n)n z@;*E%OxceOFVxZUcNDGxs|T>|rzKcb-X*8YykURe%pE-Q4GUr2jm1rPQd(NiH3K(< zkUhm4P=0)%r5a$iwK6sO`_-NFqYgGNwv)h%JSzk7Mt%2AMN#nm!k2er80r@VWZquc zkmDfsl>lZJd$YA-W0rw02ySn$xL=bEuuyLwwKM6t$t5B1y!?MeA-sBe#bO>R6%s~% zHuzu{VeMRwhedi0Q(&awOUGrlhg&eJU2?^2r zqNf;hG|n8D7IDgGB9piiC6B~aWB#g#vcPS`DNU}J_;9>aq(SsJ_Ak1~D&W4L=$x6M zVRY>pR;ZS*wFtdM|^JE@Ice{_07euSHQ-kB2skm+Qb2MM0)+qnyvx zAi_r=yKbPyA7Q+6t{T^gB=uy329BZiXi`rl`&QENJAO_ywV@rNF^l{r-@XRuRM6H} zf=l<3mDYvu8zgV}-xrA1p)|7TQ*e(DNvprK?EEW*7*>&<~m% zI$ZK^yIwVgP)tk7%4TCgHzew$7`8R_7-yRdRYJ*!0?Td*?p zoQ8;Y;5(F&oPjzCXHp9-vdY2Lim6aL{)F1~=M0Tg9LIT&XKIG5GB^~NyFT5>B!H^% zzCIU5v8P%sBt;Uh@>)tXA*MHss@HA*gpC7Rnk%gi98pZsE96u}1^)>OK~%chEFK)j6ig=*VxrpwZDIc03ny*L#;LXKcJg29s18vAd+UvN_I75xKDOvC zImKs?H|eWZj$4VeG*ghnVRv#`3H&)ffrv58FD)8os|L6=?mc8tlFf1vIn!fuAXbbD zVJ<5L1b*dC*{UgI9l4r(&w+=0Dh18cDh#n@x*1-p)17fcHzE&ji_^2-qfd!{eZX2T zzQ@*h&v8C#`744tQX5LYKu!=s@-TlnHGrPV{MNXi`lL^W3(OVVTe{pw3w0}v=HBjj z@4;4yO!%Uh+5|5lLS1fbV=%le zScnrnet*_rhVOohOr90rUweWKyDRUYv>N7axX+_Pf2 zaWQdR>SxqBBms$c(4-~w;^$YxzFJU$xZ6+im7Xhnm|qQN;5>>JF6MSfz6PRVH)oE+ zrrGU?3cBr1nrl@qPwl058mQbVsIAvH3=_zVVgqch5(nr+mL>-;_dmbU24;d`H^?X~ z3h&79@*90}oiONmI^7|LP?gYoDk|Ks??C4ZqEp?R=jy>uU`;ky8(dC=^n9cry}@2N zi)FwWP;ValMeK`tTCvS(4sLj-38@|mhe3fU@Rf#sql3wDpU_Cs8EfHj0$&zm6spb~ zJ<^2I6;{o_wsST*2N=;5n-mhJs|#hD_!xdgtukgvehVR<`w3i7Re}4Vl)Z=HM>%aVdh#`uwCXCJ$S1R zn$RkA&Tf!%FE9@aci=p9XTbg-km785Wo~vNH;JsNrk~KBUNlJ%7v|ei5Lk2XM%|mh`))Fxo71P1zT9_n z@XQKHGv9GLNOIVU_U`O*hZynwe2Oi(i%$$|&&{y@@~TfL8c;(!sEgJHD zN?-4KKuW-l9-$Jk@+ll5y;ao*C+^-$Pi4vkkRVE$Mg*&I zyM%Y!NtJdq>rfySFs2s;x{Y?%^`Ia}J2U0!(FwA7y0ue=W?<%G86i7}@f((0-0j3d zm15A6w3LZhcFmyP;CsGIowAWDsw{dgUD#xfJwxKmT=#D}zbG|#4khu6$l*68hT{N6 z;7G8ccgW%g1qZLlr)AV8tYH$2HR4a3@W5saV@Jl>RvNRtll2UC^3E~`$PnbEaI(i) z#CLp|@Aocjt*x4Xt(=_@5dVi%lW2(@D>~Y~E|GMqLFn#c;r2^M;YOE#2hTJ=LAMw; zPfZoWX18qJq=uf=uUMJ7+bNk;ruKXhmwwL2^ai0? z;5#J~t}C>Ba=Q_1mFxQqzAjiCzfa_GF*KmcGGWp|qaOrRX<_I5 zxW+Ze>s@{7eVS}#ET4!L8T7kOGch+bTE?<6T!fJ4+ za2+@L8A2w|ViFw^{`T}(bw_SWZcg~^>G90^F@VDT^sBqF;Lf|KxQN-fRwRewMCd`#DtF~-uSC{%w^LqM zU@tnS11XAbR9Fqk>sxdqN*-mUya9~ZicOCaI_TE6*So)FllS;{otX&=rww_45F@?L z|6hCCx1FDhnKC=@-)&THLQk?O$k{@+sD?EjLCZcX0>r!eXR5x90H`4q_aXEhOeMX+ zgqhuA3w{XJDv_k+9p5$E&;BSE>ZGj>v6XD$Np1FdZMMX_8dvq$SJN@9ASF&f;Ga`j8EjW4W?Z?c9( zxPE}DQkHoz>wUWyBb%tdd4M^X;r|YzpP9wx(aB6AmpxlCGbsQe)B=_n*`mbBiUh54Ij;CrQCCNBG z0s9esF+6YpTf3w)I(9n6@+tdju0_ zgmGcW^fD^@n4*zEW_*=|Qz>Li`o|CGABsB_#r=osxoB!W6OSs0B%a`K1qjy~kbt)D zHClaS>ZGZZ&J^AhuT8hR<`l9S^T`FYSbD&~6x!-gb7O}a>|9Nl-?`e3cCH46aM`l3 zS8H}S>3{L|-tknw|Npp(L_$Mboe>v~*|aUVQMv(3;>J@3V@tC||G z&`G;k)#CaTa6Ec>CKKEm9*{Hq_#k6!_R+4zIS=-RUR`)F5Cy-kB##t(r!|3YoYkuM zLj78eb#<)S=X}&Rk+?YjbH{YalL?{y4KCh;nKy)tm-o#reX-Kk)}C`Yj%M6L3S#w0 zIn)Q^d?h{RJG9@8GM=oATK^&(Z*9J3%__yFAodYQ15UxJiRHJE2P!h1r;;tV9)(c- zdgN3Ccslme>V#2ig29s-r}5c7r;(zb?dzw{8u*J(e8F#73v>Z#1ynApZyWoVrAz7wbQN=c)*+RT};z zhuB(l^GEM+;&vujk>xVn0K*>QZDaY9EBYIln)^W{|A_>p~E`)Ml|^2P`##BELoLb{=U1gQP#D_9!O7Gdk49oC{_mZ#<8ZaYvu4(#XFkzjL#Jl%leT zG0sPOt_d__JXpP-Wv(0;Kd5Xp#Z@MR)QImES#@}q(~X4#XS}oO-dlh0Y5EanCUr-j z?%V>nB)b21oRJ>1cykM{@VhKSa~CY@c-gUDR$6l=W?TC`S1?OFp%K8^esE&Z+UD4c z4AIk>MCZpHuU5{ZQHIsQH(x8t7dmVKSnQ-%mFBmwi&>N(rWPW-oHW|Qx z0HL^lmA*ph3AAT94W2ea1D79fV+yhrK@W(wMRq-OlmX%0#1h`)z{m2Upb6^lSRj0GLy)> z(ylWYy+Y#RSRN>R7x$mhP6)yNrTot)k%0wR%>xeYO(~foq;2tkiT*nbBbd4b^_m|U z{2VTnC7lgcl{wTTnKPE8aGP z9J{b0;%{othuU!M6OIVD9E&IWd<#yTH7c6*@m``1NqY5FQ-}F=^mVG*T4q?cJGGJe z(8bI^h9~Cn*I&R3V`h)Np}jd^vqbySTvz0Y%~u>bB>z#TOiXapTwYSnyFZ*@Fsk0* z8PE{vaylLa{X9231gy@?(wgu4VRf8cjn;drcp{U7Q|$gOtri&m{CG%z<%*q!*ZP-;Ooj5 zsiwT8>u;36ZV5C^>EF@_5wt_xM({<`d@{!+8OQfh>;`#Fns?>UY2#LRr^;r!s@R|| zVr{yGB~9pxwzj~f!h^PgNPE&Y8h8Dbc+du_Nck>Pno#<}PiRh2tKRs0BK_c77=I~_ zza8UQ(kd3>`Xf4N7Ci^JGc@bUs=mP$+M6G3;b#Vp1^*d6q%qY2R+XNt_4+JQrV2+| zcqKEErm_n2}Hq|mC_FUjU*~0GsUfV|0gifGJPlwQjNG%tNB?ZJ2_rDWV{z< zWN}8PI#Mb8n7$DRS8lX88*hP|&F>rx%Sczgd>u!S5-abG-aCLnKmX3~GpNZ^DGH7d zwx4O0x~<(=MH?X1vwZP6p28#QoEx(Hcl7#Tu3Bm0twYx1@h#BawgF4Bq5?Z-_WJIG z8hzY#yA5P|pHipor9|dQK-KE8xCVOuKCIT5S6ro-( zDu{_*GttXNbmG?GEB$w7SJv|*$w7KaohljGU-&j^B=w9ac>Hk|W zD|+rbU%5vq7GR=k50f~(x47&1NN1A(7^ZZ0-I=su)G{<`zKOwoCv|+-z(AP-xu+H> zbG2lXQb*q54hBxF18VGjsjV4`9TdaK-xGH){+1E?7ENVK_LWGs7Whpijb^eXwV7eN zqdCbdXOxvdoej(T7H_kVUeT&v^y^4BOcjxyNJh$}^JK?-{;`i6k4nbLlw|~FY&9D1 zE-7FJOPCUGQZacthODL#cA<~85qiOm(X<8NtFZNo*3L12Buz>&-Lw8JKb{HmDN)=s z8oH@2B+4OB-?nuH1uO`fS>J>GRa> zXu4&_P6kv`sHA`QGB*w&v#dAlSCHP9d-1KG2~vZ|qJg4W_xKP7?1Iw82K%E!@fz|o2j9*gWYml)a=`h6nn}+Sp!yB_)T7nY zm6L$Eak{^5pxtxw(73vWY@|jJ9}X4KbCI2JY{+`}6R^wf>Wl))@_#8GtrilH@!K&F zJxu(*+i>#vckAxv!(EGoz25*b2Ba%6xBu0KqR2m(de<2sj$JTjIgG7T+CUwBeOU8d`0l@WSx6?6rJBH6 z2c7G)wmKT@27#g?WCgmP;b3GDA+XLAYy0c_=P8J&3mkpF0Y=SC`xq)B28yIDK+h?S za~Kb7gU?kyNI{MKIeWmvvi~j9F+-7ufXc}9_*wm3?*kc}mhf9jPEXtYOOhphT2m^5 zWQZgoFa;Tw<|X|UImW;ibv3cjtUH?NnX48)2MA@d`pCw|?>$%{2v{*lze_-$yFKGK zVC)4+TTs;Qo4Gq6J)_FJ|MJRt%qsDfEj3+P&2b;Yv1HY*1+g1FcGnX7+L(`<-vP!7 zo$2uPk53LUrd|&X1MwO-NYxk+Z_l5W%WJn*oUT0#H$|^GZCGNR zSgL5P19@2zj0uY9kDND{5l1-ud;ou}#zfe7z$|bQO^{X_!+yV11H2T%Pn=5!`~*&o zpW3E4y`v98hS3W$o3jh?)+$YMQ-29}>SyC>Ixj>Ef3mr(dn6_+Njh@_TGwpU#aMy! z{{f;#(0i1!B$>84>&eEFGgsN?1I|-j?KWqDk73*3i;9e_aP{6U{W@Z4WZ2ZT&hnJ& zt-poeYWeQy?zO<^dzmC2O%AZB;aff-hu;55z(?8VIuog~{;w{^j*kHCRm~8Y&};y) zHVwkz%7~hVH1={Li8qUO;a`DRwqIZ8lxNY}kbzy+_JHUc0fH49=&)!NgB8mLy8TYX zpF`}JRQ?7i6=ee3E+#}{=3^&6C;IJd32VoS@?2_B)FXuTN!^I|d9Sp%P_s`>{pwEMZ&-W55^CUl zFxwHXp$>}m}g3ci(}Osh!Fgph04E41|AI!LPDM6C_Naw<- zx&68UsIR6PAYP8Ruo0`uV;11N;Vk9*`Nn#KSZ^-o(QLxC_C|H!4W-4UFT91#Wv+Y$ z)@g(O8P9<{Jo}Uz6alIGPt0lef3emiB+~Ay5H!xOp9kzS=$8LGWwy2dlQLV=|E$bb zb8{w^2bPjDaW{mjcy1lJTTrn~&_#^_klzh9n+xz}3;I4#i!2^l zA=WAdtq0P+!1v6NGRZ07WGyu+5qeP5%}2dDvQ{L+7V?d(a_dsZZ@0Z^lA3vkq>sCwbT+HTry4+1n((B-a7zqJ7YQyCvrVK)fd z(}X++&T1mJ@PGQ&$p3GAYc&4$t#SQ->sw>`f8|?K03obaYI5$T4>$Qta6kHA$+fxt z2e~$1N1BSO|0lTC&i_le){}q2wZf8|V@Jt=t((*YP(gzzBOLXg0bB0MV+j;yq+3;Y zH8&M)SP!eHB!1_u_{?2sQ(j`zisPVqvGuanL7ocz2CMSmLY{p)cY|8I^n@QX!mFzO zCdSjsl7WLNHsIK~@VMb`fro)&9w(A(-dzi^d73CIP? z2j0_IB{S%xscSLpd=nz@H}qZwMZ~z3h%x%@(8SEP+=f07X1(#@;-GZ^ym}STcssoY zMt&WqcEre$L8`;VAM%jfj(|XOuGR+VUNbP(W{N1+D8iok2}(QL1Dv199$ir{EK=NC z8OI$cUXX$ILdJLYhvTygUA}zGC)E=bS}!AtGa(^JJy^E+Z)EE3rT-b33KdK$nvF1h zk8%QK#oxfxPci}a{}VEmR~GV_tC`f%|6Yu;tK|O_^8SMuqbY;3XKs85bRN1Oi6uMj5bFL_gSvInGba#cV zBQ0lu+<&uey~F$P*D_oQ$Ws$fxKO^32c^W?t21l$Bt?G-8S62{hX65eKl8X&0;0wl z2y|yJ{(mb*xevHwXD>2rh*1*OdwcK|2D&32YwLGAG#KOs2Yx=}c=2lK2tljc;4qh3 z;k`=6eJqD}&vJc<$7r1q-ty_mzB2d z4e06V(?pr5_2li3!!UG$I~7WjuMffrUvCEIO>`9WnJNlGI34rcXmjwLu|xw$6I(s>82yms`=l^yQlu^1sC zlDcQm^Im}Vb_*1A4ZLt4IoQ_RY%c4S|5Jx%_9y5kblOJGahbIXwLY>otD~ccT8?w} zdOFjNG5|;w+{mKbgouxAxr5!09zJ{+_Gq&KeNiQpQPCd7WcM|ta_8Mx(u7$zAdeB_ z{}&n(KZwvV83IP$&czfN5|0wbpCW?Ld9#NzR)({K zNO86&q|v*aw9v`ubDc1+d<8t17%7~*+i$YUz|iHjPZ2z`Qc>z&E_&xmFW%B8T!`K}LRF2B5+3WH%IiLTVf0_3caMQf@cFP}u^%Ela_Su8ziY{N`(ixewQBu|A=i7 zuN0dqb|}b6G%RrU5<>@g+el|%{9eKZb(4kE#eku6i@^_-e)8N2f243Dze#%4ZYFbu zVRZ>L#3vaJ+H)FveDGXQ=TaMPTvchrFFcWH^fFD}zT?W7K7pIslm3ov$@Rd;*m zgs-mA(_1$&RH#(1jKtjVEgIMPF=)98^a|RZZf@)Ku$yS&wJ)YA`~`Mc?-7wF<#KPF za%Vap6ZTTHxL3l=*jpg`IUmDObBJ!%EE+fFCIb;INIW#%7PxS(ZKtdFxzfSPSP zF39gdWSAt#`T&VdJnsCw7$M4%Hu###S}WM)IO6(XmiFTT(PJ{NtqWEu<6bCn^i
~FovJ<)WKm%}ZY00svHRVwJFoPTE=`2^n;+Gpo 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 From 9b99e8052af99b4d0018978125da51d7e6174a07 Mon Sep 17 00:00:00 2001 From: cmarco0 <146938645+cmarco0@users.noreply.github.com> Date: Thu, 13 Jun 2024 15:12:56 +0200 Subject: [PATCH 11/16] Delete script/JSON_validator/err2.png --- script/JSON_validator/err2.png | Bin 29500 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 script/JSON_validator/err2.png diff --git a/script/JSON_validator/err2.png b/script/JSON_validator/err2.png deleted file mode 100644 index de7a72e29272b7dc066cbc8c69f6c7d1bd655bcd..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 29500 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 From 8fa47079d0ccb8bb92867ff4bb9850f05e42a918 Mon Sep 17 00:00:00 2001 From: cmarco0 <146938645+cmarco0@users.noreply.github.com> Date: Thu, 13 Jun 2024 15:13:03 +0200 Subject: [PATCH 12/16] Delete script/JSON_validator/err3.png --- script/JSON_validator/err3.png | Bin 5448 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 script/JSON_validator/err3.png diff --git a/script/JSON_validator/err3.png b/script/JSON_validator/err3.png deleted file mode 100644 index c9f44734026fc206744d5529c5e2677ecbf51467..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5448 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 From 04f1596078fda9431cfd198e5f447d30bd1d02b2 Mon Sep 17 00:00:00 2001 From: cmarco0 <146938645+cmarco0@users.noreply.github.com> Date: Thu, 13 Jun 2024 15:13:10 +0200 Subject: [PATCH 13/16] Delete script/JSON_validator/err4.png --- script/JSON_validator/err4.png | Bin 4028 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 script/JSON_validator/err4.png diff --git a/script/JSON_validator/err4.png b/script/JSON_validator/err4.png deleted file mode 100644 index 9931df86c89b60e8021e59c32d7bb3165ee1207d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4028 zcmV;t4@2;YP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D4^c@(K~#8N?VW4L zRmB>B=Xk`*LMbaSi!b~NQK_)B6e5fCSkgsN`y*7;k08Rpet0V=%B&xG0VzC)$4hm( z{ff{;#iXJ%E6OfMO2aM|sA;7s9P}KX`PRFeZ+&ac%wBu1eeruASnR#mtTmT+X5M*c z)|z+!?VNMY`JYjgg7lkhOrK6;PVO+~ziX0{r!gJ>_?H~9HMwrrUhK74o*+C7}kNhfvT{Ohm3p8V=+oNoL|ao&9MP4mn% z&zKKC{4hDw9H>uKIEqppUgeDv$WjCkKKP*N-@m^Nd;a<7&6#JOX%)6Gd-m)~_#1D$ zVXnRQ+8!MlYs7i67kiInvyB-+dL?q-RawOJBl<4I5@| zz4g}0b(|MM>8IuI-V2;ZCVBN2B6Po-zbyHN+FvN#*S;Vme?@^pYu;GmC}SE~y3<^B z)m7%tKmW8ApuqK5;x5~_Z#P$7d1dmeIzw)mL9lLXCOkkw{QWKTm$u7C-owR;bVE)2EyL`}f;xjvqg62WuB!`V#iT z4?o!W`Od+4!IwTDf2m)T8+DhKKNfpl{l!50<$ltje6$(CS3U@}zficZeZ|OMQJ|3W ze(t&FtTlc2-FKTcYu0qLDu9lgg=_uNIC&Q{-6>;WnFa;-`|rP3W(V%nd+gY;wo_pB z6ZY`K58K0K+qP|1QF0Bl02zd^cu@v)Ja^{6pya~fL>}l|;0{iNef;sqHh(B~!qS$% z4-~beM}FwMSYbk~@%xrmuDRwK8y^aWYj~IT*s)_tXcxZpC2nLx{Cwx&yx>b8kU#NK zKg*Xdx9uq{|GfH(W#`VF_I?fq2-lGCl@CJg&letQUorAm6ey&;X^2ecX3UsjI}w(G ztAz6`1v-SwXP}5=ao*z;828)jt={|Xwf1YH^+@P z-e@~yEaZnlZR*si_NbOmKKaDTg)-fI^UYS?bY!8{_1SME-%j^_U+qeKZ%$4;=vk3UMvM%am5wp%P+r7LgM2uYOOJ#f~$<&`l(0xd}P%h?FnUA z7MERiS@JEee7^PvzVJ}{3dvtlgdWO!%a$#+vtTV?1)(URM@?gr$U^Hvi ztV%j`Xm>D*fwgeT#ab%zKtWVfPUOOX$P|0y#*N9@zX-*TH3=dE${>hLcxdbX2ALh9 zv^dAZyR>{Els?LK^ytwxUE*=&FX?5a56GW&Ztf-jv@cO=^@25T;^$!fJRQHUe4+N| z3lFugSouTN!%n65@b`ZG`gN=Qg9i^TN^YmY!9qazY_{q@&d z%Na$3vgbbd@y8#{$dMz>lqpkeIBR+f7cR76aPPhMn)lv&&ng%!#0e877#{w;_10U- z6@G~8rkif+mOg8Ul0F@A$dDn{qLJ&4964h10i;jb@4x@P{f&jo`m6kApz7@GwD)q1 z88gO)Q7$?$@vUCHx^f?o56)pFj~X?~+<*W5=C<2zGw;6pt{F6Fkh$T88_eFldn-yc z1lAS`48_4TT!@XIPwEcEM1D`6JZb9@R<2xW&s}`+#r8MfrA)}MPoF;K>Z`A|b^Oy$ zKbcdfPF3U+oBnUV{bmOq%0S#GKC!BO=>zhojd5?f{XwYyLU2Dyk~C=}1zD<-~2g;5Iky(z76s27#^uSV46h&z+s=O6NQQ8n) zHc=EsX+zZVRun~PLrx3jjh~3L|BF_DHyC)G%YB8eo|GMb7Ovlq&|40%`D@ksQ)8 zByycQxcKgm!M&d&4e=4Ldks4YV+qAC@rjI>WysP6yZJch&Xl;88In+T`9t-mC`y<@ zYu;Gm&2kA#dW~{fnst8+p{0e8%g_*^_yLO-1-UlmGFAMhxC*(|T+S+r5~h&yZl+7v zM!77_yFUg=BX4QJ=Q1>gQ2gL?nTn!jkOeGol&5PUmsx&wd8#P&p^)-M(Jc3E2M{UJgwMa!nuUCt_s5~hdpPOpCgp3$%B~urBI7YSK{Nyb9pMVPi$4bB-pVd# zA?r0$MNztFJD0GeQKrk%*!z8iT%LwphK2~mALBB$Rb9@ysLNAD$wz&gD2k%AA%z}T zDvF{g%|(^Bq9{rmqRLxQ6r~MO<*g`+(uUNeym^f)#^q;G%8tL)X;k^u!(wybRmpYh z*4ejdIMVf;RsSKsG3`Xz?YoG4LllvJS^cYr@}|IKib4VJ@AA9RE?X6)Od2s@(Qoq7 zKw-?9HOuZUW#0q`uWg2i@oNLkE?=`LD&G*X@^1vWmN)NT^FH^85hHR7&B%4Sxjbzp zdVBfX9bdii?!D{d#dS|0WYvF+UzY_n(2p5$y7 zjJAxra->1&vuVe@#&up53J=9E*Jrsr1$Hn>7^7r0R*1|zIGA;0xh^Fw;^aIt6gLdq z`?AvKJn0DO-@fwKBY&=Z(qS=hU!MGnQ>M{$r>`zCQWH5b9qc{TEA*9hPi^W;YybMboBD zv)jnO|NeWs)me5xQfc_}?%TJo-9;xm`-DY{7MZioI?KHD(o1%`J-aD4ZQ4}XK^O`T z#m^2xcK5yf^2>H4#JLjr{PfdLt>70dSYY<;+h^|^IB=kKJy^q+X*iAwsEfo=G1`tA6X#ci;n$sAm*g)LKlsWQN*~`U z$hM=S!?v9lUwqNZo?XD~F8Kddt@+M@V;VYeyrk@RE9+S$quW!eLu)a@_7{8Di} zfNUVt{(W0wNA>{Hj6dsBn@?4(Q>T;BPa3A2Wh4_gB7zk(-ST$^C=Q{bb3GtSfP9L`dZ2hkW zU-|2uzoIT#ckbM2<=l%rhGn^#y)D5 zZ%95NV)|FDE};eQ+a|0BRXb&Xkjv9DU81^;P++7j0y7Q)4}b_6iv}1y$vX#OR0w3H zPeqkMz4BL7J_0ia8f==Z{K@hV)|`NRB!5}B@rTOil9hf8SV(k!+9W<`07X&{=*;AW z!3+4#fg)@KjgVh6sa3w!$R~@K{#7si=T+WC3AsEi(U5>g6Mqv5_E7Q^}vhpViz;!c>Vx}?Y;l>{-pG#KyF`%d!P*@hg0vDOJ5=CZ9&zFY?Z6C88f_?lK>m1`cJ$~`bK!*-TKR0`C`%s1`BZs%=DGDUOJV) zR2i4KbUd-*8ilX^1$jQggD$=!19x_iSH615uNGp;S0=vnL-G;wL?}EIKj8>Q*4ub8jB=FU2nXeW zGUVF9g9mpD_d!{?*Tt0u5HEhNS%;N!%$ql_()sBy{L2v6(GVb=KmL7)dnt#c$0$q# z@|C|H`Kv`fz&*U@%0omcBaM~%i_ITvf~+l4|EzDiY5U>_U-@Fv2cGz|4oV(?!2xSX zK#B3d3aCp-yIx2>v-0Mve;1ZC;cRWM#>RFqcav{c@_my5L|uLnK(ZR iO54D@=d2+s#{3_S)hDldaP>|A0000 Date: Thu, 13 Jun 2024 15:13:18 +0200 Subject: [PATCH 14/16] Delete script/JSON_validator/err5.png --- script/JSON_validator/err5.png | Bin 4399 -> 0 bytes 1 file changed, 0 insertions(+), 0 deletions(-) delete mode 100644 script/JSON_validator/err5.png diff --git a/script/JSON_validator/err5.png b/script/JSON_validator/err5.png deleted file mode 100644 index 499614449a9ff7afbbcc42099dc7a8811baa2962..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 4399 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 Date: Thu, 13 Jun 2024 15:13:31 +0200 Subject: [PATCH 15/16] Delete script/JSON_validator/readme.md --- script/JSON_validator/readme.md | 209 -------------------------------- 1 file changed, 209 deletions(-) delete mode 100644 script/JSON_validator/readme.md diff --git a/script/JSON_validator/readme.md b/script/JSON_validator/readme.md deleted file mode 100644 index 00971eab9..000000000 --- a/script/JSON_validator/readme.md +++ /dev/null @@ -1,209 +0,0 @@ -# Presentation Definition JSON Validator - -## Table of Contents - -1. [Introduction](#introduction) -2. [Installation](#installation) -3. [Usage](#usage) - -## Introduction - - -This script is designed to validate JSON data against a specified JSON schema and additional custom rules. It reads the JSON schema and data from files, checks if the data conforms to the schema, and ensures that certain additional requirements are met. -This validation process helps in ensuring that the JSON data structure adheres to expected standards and rules, making it reliable and consistent for further processing or usage in applications. - -## Installation - -To get started with this project, follow these steps: - -1. **Download the files:** - - ```bash - presentation_definition_validation.py - schema.json - -2. **Create a presentation_definition JSON file:** - -This is just an example: - - ```bash -{ - "presentation_definition": { - "id": "presentation definitions", - "input_descriptors": [ - { - "id": "eu.europa.ec.eudiw.pid.it.1", - "name": "Person Identification Data", - "purpose": "User authentication", - "format": "vc+sd-jwt", - "constraints": { - "fields": [ - { - "path": [ - "$.credentialSubject.unique_id", - "$.credentialSubject.given_name", - "$.credentialSubject.family_name" - ] - } - ], - "limit_disclosure": "preferred" - } - }, - { - "id": "WalletAttestation", - "name": "Wallet Attestation", - "purpose": "Wallet Authentication", - "format": "jwt", - "constraints": { - "fields": [ - { - "path": [ - "$.iss", - "$.exp", - "$.iat", - "$.cnf.jwk", - "$.aal" - ] - } - ] - } - } - ] - } -} -``` - -## Usage - -1. **Execute the script:** - - ```bash - python3 presentation_definition_validator.py schema.json example_to_test.json - -2. **Check the output:** - -You can get different kind of errors, these are just some of them: - -![Error 1](script/JSON_validator/err1.png) - -![Error 2](script/JSON_validator/err2.png) - -![Error 3](script/JSON_validator/err3.png) - -![Error 4](script/JSON_validator/err4.png) - -![Error 5](script/JSON_validator/err5.png) - - -3. **Final result:** - -After some modification i got a JSON like this: - - ```json -{ - "presentation_definition": { - "id": "presentation definitions", - "input_descriptors": [ - { - "id": "eu.europa.ec.eudiw.pid.it.1", - "name": "Person Identification Data", - "purpose": "User authentication", - "group": ["group1"], - "format": { - "vc+sd-jwt": { - "alg": ["RS256", "ES256"] - } - }, - "constraints": { - "limit_disclosure": "preferred", - "fields": [ - { - "path": ["$.credentialSubject.unique_id"], - "filter": { - "type": "string", - "const": "unique_id" - } - }, - { - "path": ["$.credentialSubject.given_name"], - "filter": { - "type": "string", - "const": "given_name" - } - }, - { - "path": ["$.credentialSubject.family_name"], - "filter": { - "type": "string", - "const": "family_name" - } - } - ] - } - }, - { - "id": "WalletAttestation", - "name": "Wallet Attestation", - "purpose": "Wallet Authentication", - "group": ["group1"], - "format": { - "jwt": { - "alg": ["RS256", "ES256"] - } - }, - "constraints": { - "limit_disclosure": "preferred", - "fields": [ - { - "path": ["$.iss"], - "filter": { - "type": "string", - "const":"https://issuer.example.org" - } - }, - { - "path": ["$.exp"], - "filter": { - "type": "string", - "const": 1504700136 - } - }, - { - "path": ["$.iat"], - "filter": { - "type": "string", - "const": 1504700136 - } - }, - { - "path": ["$.cnf.jwk"], - "filter": { - "type": "string" - } - }, - { - "path": ["$.aal"], - "filter": { - "type": "string", - "const": "aal" - } - } - ] - } - } - ], - "submission_requirements": [ - { - "name": "Sample requirement", - "rule": "pick", - "count": 1, - "from": "group1" - } - ] - } -} -``` - -![Final](script/JSON_validator/end.png) - - From 90bf7bb696d87a77c30df188358c30d236c14e6c Mon Sep 17 00:00:00 2001 From: cmarco0 <146938645+cmarco0@users.noreply.github.com> Date: Thu, 13 Jun 2024 15:15:28 +0200 Subject: [PATCH 16/16] Update test_validation.py to validate a JSON file --- script/JSON_validator/schema.json | 153 ----------------------- script/JSON_validator/test_validation.py | 22 ++++ 2 files changed, 22 insertions(+), 153 deletions(-) delete mode 100644 script/JSON_validator/schema.json create mode 100644 script/JSON_validator/test_validation.py diff --git a/script/JSON_validator/schema.json b/script/JSON_validator/schema.json deleted file mode 100644 index 1afde2750..000000000 --- a/script/JSON_validator/schema.json +++ /dev/null @@ -1,153 +0,0 @@ -{ - "$schema": "http://json-schema.org/draft-07/schema#", - "title": "Presentation Definition for a High Assurance Profile", - "type": "object", - "properties": { - "presentation_definition": { - "$ref": "#/definitions/presentation_definition" - } - }, - "definitions": { - "presentation_definition": { - "type": "object", - "properties": { - "id": { - "type": "string" - }, - "input_descriptors": { - "type": "array", - "items": { - "$ref": "#/definitions/input_descriptor" - } - }, - "submission_requirements": { - "type": "array", - "items": { - "$ref": "#/definitions/submission_requirement" - } - } - }, - "required": [ - "id", - "input_descriptors" - ], - "additionalProperties": false - }, - "input_descriptor": { - "type": "object", - "additionalProperties": false, - "properties": { - "id": { - "type": "string" - }, - "name": { - "type": "string" - }, - "purpose": { - "type": "string" - }, - "group": { - "type": "array", - "items": { - "type": "string" - } - }, - "format": { - "type": "object", - "patternProperties": { - "^jwt$|^jwt_vc$|^jwt_vp$|^vc\\+sd-jwt$": { - "type": "object", - "properties": { - "alg": { - "type": "array", - "items": { - "type": "string" - }, - "minItems": 1 - } - }, - "additionalProperties": false - }, - "^ldp_vc$|^ldp_vp$|^ldp$": { - "type": "object", - "properties": { - "proof_type": { - "type": "array", - "items": { - "type": "string" - }, - "minItems": 1 - } - }, - "additionalProperties": false - } - } - }, - "constraints": { - "type": "object", - "additionalProperties": false, - "properties": { - "limit_disclosure": { - "type": "string", - "enum": [ - "required", - "preferred" - ] - }, - "fields": { - "type": "array", - "items": { - "type": "object", - "properties": { - "path": { - "type": "array", - "items": { - "type": "string" - } - }, - "filter": { - "$ref": "http://json-schema.org/draft-07/schema#" - } - } - } - } - } - } - }, - "required": [ - "id", - "name", - "purpose", - "group", - "format", - "constraints" - ] - }, - "submission_requirement": { - "type": "object", - "properties": { - "name": { - "type": "string" - }, - "rule": { - "type": "string", - "enum": [ - "pick" - ] - }, - "count": { - "type": "integer", - "minimum": 1 - }, - "from": { - "type": "string" - } - }, - "required": [ - "rule", - "from" - ], - "additionalProperties": false - } - } -} diff --git a/script/JSON_validator/test_validation.py b/script/JSON_validator/test_validation.py new file mode 100644 index 000000000..54ea5ac21 --- /dev/null +++ b/script/JSON_validator/test_validation.py @@ -0,0 +1,22 @@ +import json +from pydantic import ValidationError +from model import PresentationDefinitionForAHighAssuranceProfile + +# Function to load JSON data from a file +def load_json(file_path: str) -> dict: + with open(file_path, 'r') as file: + return json.load(file) + +# Load valid data from JSON file and create an instance of PresentationDefinitionForAHighAssuranceProfile +try: + valid_data = load_json('example_data.json') + presentation_definition_instance = PresentationDefinitionForAHighAssuranceProfile(**valid_data) + + # Print the ID of the presentation definition + print(f"Presentation ID: {presentation_definition_instance.presentation_definition.id}") + + # Print the name of the first input descriptor + print(f"Input Descriptor Name: {presentation_definition_instance.presentation_definition.input_descriptors[0].name}") +except ValidationError as e: + # Handle and print validation errors + print(f"Validation error: {e}")