From f502dfa992da095cda5ac88ac4dbc90807f7f8ca Mon Sep 17 00:00:00 2001 From: FadhelMedAziz <87381601+MohamedAzizFadhel@users.noreply.github.com> Date: Sat, 14 Jun 2025 14:46:11 +0100 Subject: [PATCH 1/2] Bottle Framework Implementation --- CHANGELOG.md | 83 - CNAME | 1 - LICENSE | 21 - README.md | 160 -- ...-4ea55bac-1713-42d6-b837-636097e71d6d.json | 32 + index.html | 2097 +++++++---------- main.py | 262 ++ requirements.txt | 1 + screenshot.png | Bin 226174 -> 0 bytes stixgenerator.py | 213 ++ 10 files changed, 1317 insertions(+), 1553 deletions(-) delete mode 100644 CHANGELOG.md delete mode 100644 CNAME delete mode 100644 LICENSE delete mode 100644 README.md create mode 100644 bundles/stix_bundle_bundle--4ea55bac-1713-42d6-b837-636097e71d6d.json create mode 100644 main.py create mode 100644 requirements.txt delete mode 100644 screenshot.png create mode 100644 stixgenerator.py diff --git a/CHANGELOG.md b/CHANGELOG.md deleted file mode 100644 index d2e9fb7..0000000 --- a/CHANGELOG.md +++ /dev/null @@ -1,83 +0,0 @@ -# Changelog for STIX Bundle Generator (index.html) - -All notable changes to the `index.html` artifact (`artifact_id="f8b52830-61e7-4dcd-b9f3-809e7d8ff123"`) are documented in this file. Versions are listed in descending order, with the latest version at the top. - -## Version 8b9f7a2c-5e3d-4f1a-9c2b-3f4e5d6f7890 - 2025-05-19 20:53 CEST -- **Added**: New attributes to `x509-certificate` SCO: `issuer`, `subject`, `serial_number`, `validity_not_before`, and `validity_not_after`, with text input fields in `scoConfig`. -- **Added**: `SHA-256` to `hashTypes` array, available for `x509-certificate` and `file` hash inputs. -- **Updated**: `generateBundle` to include new `x509-certificate` attributes in the SCO object within `observed-data.objects`. -- **Updated**: `handleBundleImport` to process new `x509-certificate` attributes as strings. -- **Meta**: Updated `` to `f7e5c3b4-0a6f-4d2b-8e1c-9b7a6d5e4f0a`. -- **Notes**: Preserved `goals` for `threat-actor`, relationship constraints, SCO nesting, and all other functionality. - -## [Stable] Version 92386760-6add-4294-bbdf-4b3b40b4fe62 - 2025-05-19 20:25 CEST -- **Fixed**: Corrected syntax error in `generateBundle` function, changing `if (key.includes('.' yok))` to `if (key.includes('.'))`, resolving the "Script error." runtime issue. -- **Meta**: Updated `` to `e6f4c2b3-9d5e-4c3a-8f1d-9a8b7c6d5e0f`. -- **Notes**: Marked as stable. Preserved all functionality, including `goals` for `threat-actor`, relationship constraints, and SCO nesting. - -## Version 7bda4770-1c15-4f92-9978-155f7e71fa11 - 2025-05-19 20:21 CEST -- **Added**: `goals` property to `threat-actor` SDO, with a text input for comma-separated values (e.g., `Financial Gain, Espionage`) in `sdoConfig`. -- **Updated**: `generateBundle` to process `goals` as a list of strings for `threat-actor`. -- **Updated**: `handleBundleImport` to join `goals` as a comma-separated string for `threat-actor` imports. -- **Meta**: Updated `` to `d5e3b1a2-8c4f-4d3b-9e2c-7f8a6b5c4d0e`. -- **Notes**: Ensured STIX 2.1 compliance for `goals` and preserved relationship constraints and SCO nesting. - -## Version 1301525f-336a-47eb-81a0-9f95f3a4756c - 2025-05-19 20:11 CEST -- **Added**: Relationship constraints based on provided JSON, restricting source SDOs (`indicator`, `malware`, etc.), target SDOs, and relationship types (`attributed-to`, `indicates`, `related-to`). -- **Updated**: Source Object `` to filter based on source’s `allowed_targets`. -- **Updated**: Relationship Type `` to include `observed-data` (removed exclusion filter). -- **Meta**: Updated `` to `b4e2c1f7-9a3d-4e8b-a2c9-fd7a6e5b3c4f`. -- **Notes**: Supported relationships like `indicator` → `indicates` → `observed-data` and maintained STIX 2.1 compliance. - -## Version da7f8258-086e-45fe-9d8a-e581563447a0 - 2025-05-16 15:22 CEST -- **Fixed**: Removed `observed-data` from relationship dropdowns (Source/Target Object ``. - - Enabled SDO-to-SDO relationship creation with basic validation. - - Supported bundle generation, download, and import with a modal interface. - - Used Tailwind CSS for styling and Babel for JSX transpilation. -- **Meta**: `` set to `380d42b4-f491-4f8b-b825-df384aafdc08`. -- **Notes**: Initial implementation lacked SCO nesting constraints and advanced relationship validation. Specific timestamp not provided in history. - ---- - -**Notes**: -- All versions maintain STIX 2.1 compliance, with progressive enhancements to enforce SCO nesting, relationship constraints, and property validation. -- Timestamps are based on the provided conversation history, with the earliest version lacking a specific time. -- The changelog assumes all listed `artifact_version_id` values from the history are included; if earlier versions exist, they were not provided. -- For further details on any version, refer to the corresponding `index.html` artifact. \ No newline at end of file diff --git a/CNAME b/CNAME deleted file mode 100644 index 9d78e48..0000000 --- a/CNAME +++ /dev/null @@ -1 +0,0 @@ -stix-generator.gurra.rocks \ No newline at end of file diff --git a/LICENSE b/LICENSE deleted file mode 100644 index be80c0d..0000000 --- a/LICENSE +++ /dev/null @@ -1,21 +0,0 @@ -MIT License - -Copyright (c) 2025 Gustav Alerby - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/README.md b/README.md deleted file mode 100644 index 92f8d01..0000000 --- a/README.md +++ /dev/null @@ -1,160 +0,0 @@ -# STIX Bundle Generator - -![STIX Bundle Generator Screenshot](screenshot.png) - -The STIX Bundle Generator is a web-based application for creating, importing, editing, and exporting STIX 2.1 bundles containing STIX Cyber-observable Objects (SCOs). Built with React and Tailwind CSS, it provides a user-friendly interface for cybersecurity professionals to manage threat intelligence data in the Structured Threat Information Expression (STIX) format. - -## Table of Contents -- [Purpose](#purpose) -- [Features](#features) -- [Installation](#installation) -- [Usage](#usage) -- [Contributing](#contributing) -- [License](#license) -- [Acknowledgments](#acknowledgments) - -## Purpose -The STIX Bundle Generator simplifies the process of working with STIX 2.1 bundles, enabling users to: -- Create SCOs (e.g., `email-addr`, `network-traffic`, `file`) with customizable fields. -- Import existing STIX bundles to view and edit SCOs. -- Export bundles for use in threat intelligence platforms. -- Visualize and manage SCOs through an intuitive interface. - -This tool is ideal for threat analysts, incident responders, and developers building STIX-compatible applications. - -## Features -- **Supported SCO Types**: 20 STIX 2.1 SCO types, including `artifact`, `autonomous-system`, `domain-name`, `email-addr`, `email-message`, `file`, `ipv4-addr`, `ipv6-addr`, `network-traffic`, `user-account`, `x509-certificate`, and more. -- **Interactive UI**: - - Clickable SCO chips for editing, with single-line inputs for primary and additional fields. - - Aggregated SCO display (e.g., `user-account (2)` for multiple `user-account` SCOs). - - Modal-based JSON import with a single "Import" button. -- **Bundle Management**: - - Generate STIX 2.1 bundles with unique IDs and timestamps. - - Download bundles as JSON files. - - Copy bundle JSON to clipboard. - - Clear all SCOs with a single button. -- **Customizable Fields**: - - Primary fields (e.g., `value` for `email-addr`, `protocols` for `network-traffic`) with single-value submission. - - Additional fields (e.g., `rir`, `is_multipart`, `src_ref`, `dst_ref`) with text, number, or checkbox inputs. - - Special handling for `x509-certificate` hashes (MD5, SHA-1, SHA-256, SHA-512). -- **Accessibility**: Non-selectable "Select SCO Type" placeholder and ARIA labels for buttons. -- **Styling**: Responsive design using Tailwind CSS. -- **Limitations** (current version): - - May produce duplicate `email-addr`, `ipv4-addr`, `ipv6-addr` SCOs during import. - - `from_ref`, `src_ref`, `dst_ref` display IDs (e.g., `email-addr--55555555-...`) instead of resolved values. - - Potential runtime errors (`openModal`, `downloadBundle`) due to direct `onClick` handlers. - -## Installation -The STIX Bundle Generator is a single-page web application that runs in the browser, requiring no server-side setup. - -### Prerequisites -- A modern web browser (e.g., Chrome, Firefox, Edge). -- No additional software or dependencies are required, as all libraries are loaded via CDN. - -### Steps -1. **Clone or Download**: - ```bash - git clone https://github.com/your-username/stix-bundle-generator.git - ``` - Alternatively, download the `index.html` file from the repository. - -2. **Open in Browser**: - - Open `index.html` directly in a web browser (e.g., double-click the file or use `file://` protocol). - - No local server is required, as the app uses CDN-hosted dependencies (React 18.2.0, ReactDOM 18.2.0, Babel Standalone 7.22.9, Tailwind CSS). - -3. **Optional: Serve Locally** (for development): - - Use a local server to avoid CORS issues with file-based access: - ```bash - npx http-server - ``` - - Navigate to `http://localhost:8080/index.html`. - -## Usage -1. **Launch the Application**: - - Open `index.html` in your browser. - - The interface displays a "Select SCO Type" dropdown and an "Import" button. - -2. **Create an SCO**: - - Select an SCO type (e.g., `user-account`). - - Enter the primary field value (e.g., `account_login: user1`) in the single-line input. - - Fill in additional fields (e.g., `user_id`, `account_type`) if applicable. - - Click "Add SCO" to add the SCO to "Added SCOs". - - Repeat to add multiple SCOs; chips show aggregated counts (e.g., `user-account (2)`). - -3. **Edit an SCO**: - - Click a chip in "Added SCOs" (e.g., `user-account (2)`) to edit the last SCO of that type. - - Update fields and click "Update SCO" or "Cancel". - -4. **Remove an SCO**: - - Click the `×` button on a chip to remove the last SCO of that type. - -5. **Import a Bundle**: - - Click "Import", paste a STIX 2.1 bundle JSON, and click "Submit". - - SCOs appear as chips in "Added SCOs" (note: duplicates may occur). - -6. **Generate and Export**: - - Click "Generate STIX Bundle" to create a bundle. - - Use "Download JSON" to save as `stix_bundle.json` or "Copy to Clipboard" to copy the JSON. - - Click "Clear All SCOs" to reset. - -### Example Bundle -```json -{ - "type": "bundle", - "id": "bundle--11111111-1111-1111-1111-111111111111", - "objects": [ - { - "type": "email-addr", - "id": "email-addr--55555555-aaaa-5555-aaaa-555555555555", - "spec_version": "2.1", - "value": "user@example.com" - }, - { - "type": "email-message", - "id": "email-message--66666666-aaaa-6666-aaaa-666666666666", - "spec_version": "2.1", - "is_multipart": false, - "date": "2023-01-01T12:34:56Z", - "from_ref": "email-addr--55555555-aaaa-5555-aaaa-555555555555", - "subject": "Test Email" - } - ] -} -``` - -## Contributing -Contributions are welcome! To contribute: -1. **Fork the Repository**: - ```bash - git fork https://github.com/your-username/stix-bundle-generator.git - ``` -2. **Create a Branch**: - ```bash - git checkout -b feature/your-feature - ``` -3. **Make Changes**: - - Address known issues (e.g., duplicate SCOs, unresolved `from_ref`/`src_ref`/`dst_ref`, runtime errors). - - Add features (e.g., email/IP validation, confirmation for "Clear All SCOs"). - - Update `CHANGELOG.md` with your changes. -4. **Test Locally**: - - Ensure `index.html` runs without errors. - - Test with sample bundles. -5. **Submit a Pull Request**: - - Push your branch and create a PR with a clear description of changes. - - Reference relevant issues or artifact versions. - -### Known Issues -- Duplicate `email-addr`, `ipv4-addr`, `ipv6-addr` SCOs during import. -- `from_ref`, `src_ref`, `dst_ref` display IDs instead of values. -- Potential runtime errors (`openModal`, `downloadBundle`) due to direct `onClick` handlers. - -## License -This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details. - -## Acknowledgments -- Created by Grok, narrated by gbyx3. -- Built with [React](https://reactjs.org/), [Tailwind CSS](https://tailwindcss.com/), and [Babel](https://babeljs.io/). -- Inspired by the need for accessible STIX 2.1 tools in cybersecurity. - ---- -*Last Updated: May 13, 2025* \ No newline at end of file diff --git a/bundles/stix_bundle_bundle--4ea55bac-1713-42d6-b837-636097e71d6d.json b/bundles/stix_bundle_bundle--4ea55bac-1713-42d6-b837-636097e71d6d.json new file mode 100644 index 0000000..ea6fcac --- /dev/null +++ b/bundles/stix_bundle_bundle--4ea55bac-1713-42d6-b837-636097e71d6d.json @@ -0,0 +1,32 @@ +{ + "type": "bundle", + "id": "bundle--4ea55bac-1713-42d6-b837-636097e71d6d", + "objects": [ + { + "type": "indicator", + "id": "indicator--7ffb8cdc-efa5-47b5-9a09-6be37a614fa0", + "spec_version": "2.1", + "created": "2025-06-14T12:24:06.780Z", + "modified": "2025-06-14T12:24:06.780Z", + "pattern": "IP = \"214.5.6.14\"", + "labels": [ + "C2" + ], + "valid_from": "2025-06-14T12:24:06.780Z", + "description": "Mythic" + }, + { + "type": "indicator", + "id": "indicator--8305e123-d956-4f7a-b82e-d3df4d759da9", + "spec_version": "2.1", + "created": "2025-06-14T12:25:05.324Z", + "modified": "2025-06-14T12:25:05.324Z", + "pattern": "IP = \"40.14.5.13\"", + "labels": [ + "C2" + ], + "valid_from": "2025-06-14T12:25:05.324Z", + "description": "Emotet" + } + ] +} \ No newline at end of file diff --git a/index.html b/index.html index ea2318e..b768eee 100644 --- a/index.html +++ b/index.html @@ -1,1343 +1,864 @@ - - - - STIX Bundle Generator - - - - - - -
- + if (!currentBundle.objects || !Array.isArray(currentBundle.objects)) { + validationResults.errors.push("Bundle must contain an 'objects' array"); + validationResults.valid = false; + } + + + currentBundle.objects.forEach(obj => { + if (obj.type === 'observed-data') { + if (!obj.number_observed || obj.number_observed < 1) { + validationResults.errors.push(`observed-data ${obj.id} must have number_observed >= 1`); + validationResults.valid = false; + } + + if (!obj.first_observed || !obj.last_observed) { + validationResults.errors.push(`observed-data ${obj.id} must have first_observed and last_observed`); + validationResults.valid = false; + } + } + }); + + displayValidationResults(validationResults); + } + + function displayValidationResults(results) { + const container = document.getElementById('bundleValidation'); + + let html = ''; + + if (results.valid) { + html = '
✅ Bundle validation passed!
'; + } else { + html = '
❌ Bundle validation failed
'; + } + + if (results.errors.length > 0) { + html += '
'; + html += '

Errors:

'; + results.errors.forEach(error => { + html += `
${error}
`; + }); + html += '
'; + } + + if (results.warnings.length > 0) { + html += '
'; + html += '

Warnings:

'; + results.warnings.forEach(warning => { + html += `
${warning}
`; + }); + html += '
'; + } + + container.innerHTML = html; + } + + async function saveBundle() { + if (!currentBundle) { + showStatus('No bundle to save', 'warning'); + return; + } + + try { + const response = await fetch('/api/save-bundle', { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + }, + body: JSON.stringify(currentBundle) + }); + + const result = await response.json(); + + if (response.ok) { + showStatus(`Bundle saved as ${result.filename}`, 'success'); + loadBundles(); + } else { + showStatus(`Error saving bundle: ${result.error}`, 'error'); + } + } catch (error) { + showStatus(`Error saving bundle: ${error.message}`, 'error'); + } + } + + function exportBundle() { + if (!currentBundle) { + showStatus('No bundle to export', 'warning'); + return; + } + + const dataStr = JSON.stringify(currentBundle, null, 2); + const dataUri = 'data:application/json;charset=utf-8,'+ encodeURIComponent(dataStr); + + const exportFileDefaultName = `stix_bundle_${currentBundle.id}.json`; + + const linkElement = document.createElement('a'); + linkElement.setAttribute('href', dataUri); + linkElement.setAttribute('download', exportFileDefaultName); + linkElement.click(); + + showStatus('Bundle exported successfully!', 'success'); + } + + async function loadBundles() { + try { + const response = await fetch('/api/bundles'); + const result = await response.json(); + + const container = document.getElementById('bundlesList'); + + if (result.bundles && result.bundles.length > 0) { + container.innerHTML = result.bundles.map(bundle => ` +
+
${bundle.filename}
+
+ ID: ${bundle.id}
+ Objects: ${bundle.objects_count}
+ Created: ${new Date(bundle.created * 1000).toLocaleString()} +
+
+ `).join(''); + } else { + container.innerHTML = '

No saved bundles

'; + } + } catch (error) { + showStatus(`Error loading bundles: ${error.message}`, 'error'); + } + } + + async function loadBundle(filename) { + try { + const response = await fetch(`/api/bundle/${filename}`); + const bundle = await response.json(); + + if (response.ok) { + currentBundle = bundle; + currentObjects = [...bundle.objects]; + updateObjectsList(); + document.getElementById('jsonOutput').textContent = JSON.stringify(bundle, null, 2); + document.getElementById('validateBtn').disabled = false; + document.getElementById('saveBundleBtn').disabled = false; + showStatus(`Bundle ${filename} loaded successfully!`, 'success'); + } else { + showStatus(`Error loading bundle: ${bundle.error}`, 'error'); + } + } catch (error) { + showStatus(`Error loading bundle: ${error.message}`, 'error'); + } + } + + function clearForm() { + document.getElementById('objectType').value = ''; + document.getElementById('objectForm').innerHTML = ''; + document.getElementById('addObjectBtn').disabled = true; + } + + function showStatus(message, type) { + const container = document.getElementById('statusMessage'); + const statusClass = `status-${type}`; + + container.innerHTML = `
${message}
`; + + + setTimeout(() => { + container.innerHTML = ''; + }, 5000); + } + + function generateUUID() { + return 'xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx'.replace(/[xy]/g, function(c) { + const r = Math.random() * 16 | 0; + const v = c == 'x' ? r : (r & 0x3 | 0x8); + return v.toString(16); + }); + } + + + document.addEventListener('DOMContentLoaded', function() { + loadBundles(); + }); + - + \ No newline at end of file diff --git a/main.py b/main.py new file mode 100644 index 0000000..9c70c72 --- /dev/null +++ b/main.py @@ -0,0 +1,262 @@ +from bottle import Bottle, run, static_file, request, response +import json +import os +from stixgenerator import STIXGenerator + +stix_generator = STIXGenerator() + +app = Bottle() + +# For serving other static files +@app.route('/static/') +def serve_static(filename): + return static_file(filename, root='./static') + +@app.route('/') +def index(): + return static_file('index.html', root='.') + + +@app.route('/api/validate-bundle', method='POST') +def validate_bundle(): + try: + bundle_data = request.json + if not bundle_data: + response.status = 400 + return {'error': 'No bundle data provided'} + + validation_result = stix_generator.validate_bundle(bundle_data) + return validation_result + + except Exception as e: + response.status = 500 + return {'error': str(e)} + +# Endpoint to create STIX objects +@app.route('/api/create-object', method='POST') +def create_object(): + try: + data = request.json + object_type = data.get('type') + properties = data.get('properties', {}) + + if not object_type: + response.status = 400 + return {'error': 'Object type is required'} + + if object_type == 'indicator': + if 'pattern' not in properties or 'labels' not in properties: + response.status = 400 + return {'error': 'Indicator requires pattern and labels'} + stix_object = stix_generator.create_indicator( + properties['pattern'], + properties['labels'], + **{k: v for k, v in properties.items() if k not in ['pattern', 'labels']} + ) + elif object_type == 'malware': + if 'name' not in properties or 'labels' not in properties: + response.status = 400 + return {'error': 'Malware requires name and labels'} + stix_object = stix_generator.create_malware( + properties['name'], + properties['labels'], + **{k: v for k, v in properties.items() if k not in ['name', 'labels']} + ) + elif object_type == 'threat-actor': + if 'name' not in properties or 'labels' not in properties: + response.status = 400 + return {'error': 'Threat Actor requires name and labels'} + stix_object = stix_generator.create_threat_actor( + properties['name'], + properties['labels'], + **{k: v for k, v in properties.items() if k not in ['name', 'labels']} + ) + elif object_type == 'observed-data': + required_fields = ['number_observed', 'first_observed', 'last_observed', 'objects'] + if not all(field in properties for field in required_fields): + response.status = 400 + return {'error': f'Observed Data requires: {", ".join(required_fields)}'} + stix_object = stix_generator.create_observed_data( + properties['number_observed'], + properties['first_observed'], + properties['last_observed'], + properties['objects'] + ) + else: + stix_object = stix_generator.create_stix_object(object_type, properties) + + return stix_object + + except Exception as e: + response.status = 500 + return {'error': str(e)} + +# Endpoint to create relationships +@app.route('/api/create-relationship', method='POST') +def create_relationship(): + try: + data = request.json + source_ref = data.get('source_ref') + target_ref = data.get('target_ref') + relationship_type = data.get('relationship_type') + + if not all([source_ref, target_ref, relationship_type]): + response.status = 400 + return {'error': 'source_ref, target_ref, and relationship_type are required'} + + source_type = source_ref.split('--')[0] + target_type = target_ref.split('--')[0] + + if not stix_generator.validate_relationship(source_type, target_type, relationship_type): + response.status = 400 + return {'error': f'Invalid relationship: {source_type} -{relationship_type}-> {target_type}'} + + relationship = stix_generator.create_relationship(source_ref, target_ref, relationship_type) + return relationship + + except Exception as e: + response.status = 500 + return {'error': str(e)} + +# Endpoint to create bundles +@app.route('/api/create-bundle', method='POST') +def create_bundle(): + try: + data = request.json + objects = data.get('objects', []) + + if not objects: + response.status = 400 + return {'error': 'Objects array is required'} + + bundle = stix_generator.create_bundle(objects) + validation_result = stix_generator.validate_bundle(bundle) + + return { + 'bundle': bundle, + 'validation': validation_result + } + + except Exception as e: + response.status = 500 + return {'error': str(e)} + +# Endpoint to save the STIX bundle +@app.route('/api/save-bundle', method='POST') +def save_bundle(): + try: + bundle_data = request.json + if not bundle_data or bundle_data.get('type') != 'bundle': + response.status = 400 + return {'error': 'Invalid STIX bundle format'} + + validation_result = stix_generator.validate_bundle(bundle_data) + if not validation_result['valid']: + response.status = 400 + return { + 'error': 'Bundle validation failed', + 'validation_errors': validation_result['errors'] + } + + filename = f"stix_bundle_{bundle_data.get('id', 'unknown')}.json" + bundle_path = os.path.join('bundles', filename) + + stix_generator.export_bundle_to_file(bundle_data, bundle_path) + + return { + 'success': True, + 'filename': filename, + 'validation': validation_result + } + + except Exception as e: + response.status = 500 + return {'error': str(e)} + +# Endpoint to load the STIX bundle +@app.route('/api/bundles') +def list_bundles(): + try: + bundles_dir = 'bundles' + if not os.path.exists(bundles_dir): + os.makedirs(bundles_dir) + return {'bundles': []} + + bundle_files = [f for f in os.listdir(bundles_dir) if f.endswith('.json')] + bundles = [] + + for filename in bundle_files: + try: + bundle_path = os.path.join(bundles_dir, filename) + bundle = stix_generator.import_bundle_from_file(bundle_path) + validation_result = stix_generator.validate_bundle(bundle) + + bundles.append({ + 'filename': filename, + 'id': bundle.get('id'), + 'objects_count': len(bundle.get('objects', [])), + 'created': os.path.getctime(bundle_path), + 'valid': validation_result['valid'], + 'validation_errors': validation_result.get('errors', []) + }) + except Exception as e: + bundles.append({ + 'filename': filename, + 'error': f'Failed to load: {str(e)}', + 'valid': False + }) + continue + + return {'bundles': bundles} + + except Exception as e: + response.status = 500 + return {'error': str(e)} + +# API endpoint to load a specific bundle +@app.route('/api/bundle/') +def get_bundle(filename): + try: + bundle_path = os.path.join('bundles', filename) + if not os.path.exists(bundle_path): + response.status = 404 + return {'error': 'Bundle not found'} + + bundle = stix_generator.import_bundle_from_file(bundle_path) + validation_result = stix_generator.validate_bundle(bundle) + + return { + 'bundle': bundle, + 'validation': validation_result + } + + except Exception as e: + response.status = 500 + return {'error': str(e)} + +# Get available STIX object types +@app.route('/api/object-types') +def get_object_types(): + return { + 'sdo_types': stix_generator.sdo_types, + 'sco_types': stix_generator.sco_types, + 'relationship_constraints': stix_generator.relationship_constraints + } + +# Enable CORS +@app.hook('after_request') +def enable_cors(): + response.headers['Access-Control-Allow-Origin'] = '*' + response.headers['Access-Control-Allow-Methods'] = 'PUT, GET, POST, DELETE, OPTIONS' + response.headers['Access-Control-Allow-Headers'] = 'Origin, Accept, Content-Type, X-Requested-With, X-CSRF-Token' + + +@app.route('/', method='OPTIONS') +def handle_options(path): + return {} + +if __name__ == '__main__': + if not os.path.exists('bundles'): + os.makedirs('bundles') + # Dbg is true for dev purposes + run(app, host='localhost', port=8080, debug=True, reloader=True) \ No newline at end of file diff --git a/requirements.txt b/requirements.txt new file mode 100644 index 0000000..04016ec --- /dev/null +++ b/requirements.txt @@ -0,0 +1 @@ +bottle==0.12.25 \ No newline at end of file diff --git a/screenshot.png b/screenshot.png deleted file mode 100644 index 63e2ab890c6aa81599e535df1069fa6f42fe31a5..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 226174 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�)jty@%4 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�NV5xy3T)0~+ek zwV)XSOkttyQ}mCg!3s}TX9#Kv+H~uT`chQw!hUDU2AS;Rm9-qvQ8Zuhm93{-@=Xj7 zn+x2y^Wq5|hNmw!PVEQQ_dqh=K)B;`Lnv>y_oX&`VMbwCDWi7~QPIuvxSxNO2XPmw zp*Y^TPX_8T0gmcINl&ru!c@YU*y~toZI)1lvC&C@41I7YAKw+YRt(N<)=oR~Cr{zQ zxaZG-aQMOQcG34eF(Iy6_s35dYUkQp>BuiRxE=xcP2swv5}-r zBZ{uU_}U_SoO4*7ppHmM>rlc$@z}ZqSB^nEI3C1k+Y%zVMK=r+82bBaM^{_2 znK)Nz4LTnwB~r^Mw35m`Ai-z~!tELUEOU}Db2koOCIba~>vn;@ewSJNLq0=Bt(wn< z!~K=RAsz0shO}AZ=7(mV??xF4zLgHAf;BC9jWJ!Rke*61qKz^8)Y11GtuD|?kaVjx z`l8dL>b;ebX*=0(!#ov1Xs25SqxEh$utiUM$40M1dARwFhmA?^(bkOLxZ%$H*?|08 zY<}7}t=&||40*qLyWvBlPl>!eMPGJ;iFhT_B_lqA;t?|Wfn++Kk6 z>5n&l_E)iWF&YK0e({wO$hyvIU=x5=-b5=30~RCq`()1R+g`MygY{>f_Z;(&r@&k5 z>3N3f2~H8=Yea>=O$zZvV}lk+631us_aZyJSv`LE9eksG9unNC<|&?w$S^Yry%hCdU{0K62bxZpDY4;Qg|DREM{(=jR4G zvLSpXo^(Qc&_MH}7km%?F$6adJ_&&FZb(undU`$l@83XUMd!MFZEJ&bUBG`e#BufD z-TUhRu9LIjK)A)2LkrAKUt=%K)~Y?l;&XN6a@@W# zRqGPf9#!}PR9&joOyF`|MvLck@rDcsP;7yD(4i+`%66_9#bhX_H2F{``3rM2=eNX0 zKa5^b=0kr(tM;t-`+N7`2Os(VnjYwvSsZ8`dc_ur!JEhp2K?J?oR|;S9s5N0zKB9s zzhm`fxy4ip@Hk(A^VdOkz$$tG%l(IsGXPb3>~5wy0m%)0ba+5w2Ip_aHEg)?|h{+1F!i zerNJ^Bmbdz+(gc3u?YfW!x>TyS*Tph6>Q}!k_2}a*B*G>1T`f zXpK8+JTwDbxDvY#oJw~Kb(k(WKBq~^a5EA58n9djD(n__+65y5!3K3cr_Qi4^9yaNnkQ=Y!3c za-^aeAg8nKIfGV}AWXL@^y+G3qMSt*LB^~jiat#Di<5L7Ftz(a?z$%dTDF`Q5;m1f za9oL)ujE4_o+QAXj`bC|I6X`TT*lszyU6kftE|fx)eiE5t0NvaK)P)#DlwN3r7Vcb z3nl@MEX7ckT$nW?dN4ik-4#U;RNHA@=e@Y!cv)??C6Mjq39uq*z_+H4=XDS;)eFaS z;BW`HI+d26jCKC#1!}%hD!@iZXj(IWTqR`;BqVwNJjln7~^m`^9c#s zb9nEqfEPzXwLm!|5@dY3kM|8(R9wIPYeMK#afue$xbQ@3^jz)w%R%MymNNG#uH6Ik z7pX0Q>A-@zA5&l+J6r+|p?pC)Tw<({ZJ9XDV%(2qGM(bJ-qQERcpxoQPV?*`VQAvJ zG==G!N@`G-rNm~02nm-V?)-djsYf^HCKkW@Epr+5l{>_Iu3~uond#mrZpO`>s%rI& z+I2>A_`lLEZ=-i;=^8zRi`+jxGr$)5B?RxtzojLQuP3*^3UKLDBk5xXVoKMfQX*s6 zO(kfR3zC)?wd8;vXGNDJrasu26ZI$Faxv*mBI$}_<^D{W4?M5k0I%XKQo%rld*95b zYs5wLcwH_-NrnA|01BC6Z$8nxjZOw8v|AtnOPv&_=L@eoj`QU?Ckip&2lsQ>lXU5* zZk?L}xIfYL<5E7;%cTf04e3~+d{Oy9?tA&qRlF$#mMymvvgzGxVf_qR)aVjMaJ_;? zb7xYnF@{5@MvA$@@=BmRj54G-U%7{f1rXPxX`ZQmdmH0xcQB4ZJxUcoMDL#$RH`$V z@uCxS05Be+vhS=7ooR2-xh)}LQi=;0HTwQykv}g7luh(65$s}#;~20C=1d}R&V3U# z>R1H@&d9GE&1#vfI9$mv!A2zJg71QV=}GX5peIntXr6%}T^o`)g5l6*Q&1cHa-C#0 zm=tFu#bl-~UJBNdeHb1=uO8!mwZZPZe@rbLfFq3wv)`DO1i{&;uFI1pV*kgq_dq64 z)M9rmF+v0@dag-Cdx^tV!VBYjUH7*W!GSsU8&dV>Oq#=MNbP~XDwBz1-z@yqRJiTU zGT-Te%o0P{mD8Zu@FxO-E*cx(%76m(#<~4Z1^R#0xtmnF?`-8ycJ;Hx2Mk#3R$2Uf zOl6ub_}BoEFwtVVik@GA6}Ep+7<_(NEheDifA7H~vD&kJluyGkzD-}W32&AeZn>*& zwZ}Z>bq)uafdU`_Hwkzju`GHw>0OVv#|;6iDb3Ys?{l3&6uov&BD-=L^*U8Q&ZWdq zj&k`BPw&wm*k@}GE}e!DApU%Fd9a6y2Kx|%cKa_Y0Q^#c4h#W{c{)05xVT3Hm)_5k z(cwmm5t@}K`Wn#F=^yxUK2slpWJd`+W`h(k)_vdfC5-{JL@JT{Q7Bu8PG*nYrHo%V z7$e&GaG7D?mR6m05ZK`u2$ihpYbV8q;nIVdx~6obc>q%p+nTA*1hTGgNj6bm@$0wo zQj_+cN(!ZPiHMbfCD{_|CL|iw94sKh)JRB$bP*u0iYbnAW0sd6yeQUSE=5;c0AG@` z2Gt|~-X^obklsukDKfa$o9~l=vTHc`%Yp=ZME5IXFJwsLqi4=5440}q;B)kbkP7)e z;m7Al;s+Y(3zzM(7$ELOB*KzdEiZ4;C>PWSC#qn=Ds~nmqdvVDjs(tn#)1CL9EU`{ z!74j~jbe7oY2O&l+eQWT_2Shabav1GH=uyC1C=T?;bWQF%;I+XU~CKI$SPLK-=(gi zrq!rGD8)U?rV?Til_K^7N*n#d@*f7`b!TQbKsTJu5WinSV)*+W=*2EiqORz*%6<;1 zYRJYdc zOsSwFVbE8{f=mVNdJ(}j#SMf<0M6*R@stH_L0i!Rqi3>RQ-u!tk|XX-2V7X(FM6Dc zI@c4y`T%FugVkZ2?2D>_-sGQg&r6g8fAqbD3QkU%t}13zyLms*f?1kjT(4QUf&85t z7*)G6^?D=My>5d>g7f_# zbLZ~sK*Z~TMT-HC@uG0+M1fyE1-nD&KI(dA2r<9>V3u6EBQ}s4arkhn>+jDZu^Xf~ zsQ0d)?U@PbNMoWVcSxRn{|HUa6GL6vzgOY4C&2)0=Z*#6=Qpo!dVv638|;Sf&mY5| z@eXt#uvk#??^nPV>EDjXtTEK%7*QB8^quV|;0B)7=uxEq^sfUlJvnuy{_tKJp#D9x zl7erFH*vu9o6GC{=eS;vE>MLJ;8Nqisu0}p(3+y`);~5CWQ$va*J}hn!i3-S=@}R| zk_UtXaNp$-)Kw1J61aT@@5uG1uL{R)_^|xj-+D+oD@{5Kmg{nZ7cv$a+6z!yG!@_$ zPM;}Z*#91q|Db07!PIV6BRB^5mIBKxM?Ew0EhewC?djYoqC_NJv}RuKqkk-?|4X+$ z%Y9XX2u}Jzy~XAE?16ATH|K}DPyRa$Xra*XJ~i*W3tv7M(B&Qd&Oe-Qw40XbFo`Gz zaakh%jN&B*jz+|IxX%0g(-X{B11EfpwjoD>rz>^zAvCFu;C2icWC-tIQu4OC{CBEf zh(SxJzwtRSdF;)5-zOLYH2G(W;1l@YHKc(J zl8dP43V)FgqT@GTkTXhO<$i%ruU!@hs^kbT8+4}t1MRVa*S|d+XubaB4F6AacvKs6 zlnYVK$7)oaJ0O&AV>rIS=i%1>zczsw()}uzCDaS13tY8l9z+MrV*&S2@YkQw+Wx;R z**4Nh>#!WZ2yO?9agW*0_njW9!)4!JD;~iZOsHTC$KtiWjAq3Own+g+;11lFCZw1} zA;tMgt(x+v)@d&?IFV!J|FH%1q)H%ZXJvY-+V-TK_2Dkj|18jcXhpKT>-@tLHG#IR z^rJbrvBM$tU0o;-1T~BymT99z=u^L+HNEKn-X-6wA-QXDrFV3_H2lB=ol=xxl-E)S z?bbA@E+|PGr^aGQQ5#7vsianI!3)?qtuJeQ&Edk~ug_0dkdzR{-}^&o{QGiL8Z?IP zp3UyOIG4vJ9k0t_U`)A@IPeh5VsW|tdI^gaZg1AHhQmUo`?X_AgmC4H?$u zj`(NSOJj=!h&C73pm^ve&k0EK+cW(9@E?>%5Hu+7)u)hb_}?|4M@Saw{(-F+0w-$W zf&Zi1{~2g?XbLp$eG%qyJA%!pnXrQgQL0c!g^;MqzTim~(f>0y>?dPm;86XL1 zH$il5699KHQ|UhVkBG5^hD)6%$nAQ#j-Zb7)-{9DP(V>` zKyBrY()sb90Z#_HRf(#hWf1;%2IvvwD$l9lJ!A%VF^TK|#NPIJn`C!qCmA3+eYwho zMjeq|;Vj1TG)j3DFabf>5J)dF+8AfWVz8-ReTxq#=k}c?kRHD1E`r;!i9R{@GEbSRS+h4!+B@%cl19(klw&_&ZjK>2r zWa169MY+{|nmLPY{ESfl-YGwTHlZCwcn-G)UpyiMmw}vjI^YuV7#hfCnUBSH@$`yg z%1*cHuikRiCUvUC_M+j&b#-bqGBvz}eap-ztNX>5OszXMo=7W9cQKj#uAA@x_w;W_ z)DuF!I3-Xo;2Nia20T}1h*<>}zApqCnd}h)5ttzV1Hg-|HyPvjWdS`X{roPH5hh4x z`h-C)Aw(wn0GImWaKIlsmkMM{jvp=cBw}VSSH0R>q<kA0!QCsTMDmy!qjJ zdQm<@B^n$z&u)YUMLggBayeYjc&;bX!M5|eDKlp%$G?tW0iccg+%8RC?{DAlh3R>` z`Yq&V3_O$OC()(W6wE|wekxt+C283T8EAVT5*%A>s;T-RD z0deNuV_s{aZ?Vs9DD>MxU$fP^UvQnApd?+K9kzMk(y9201QERi@r%vI`x z88oZXPKw>CQ7Md1#>*{5l?%0!T^zRhL2deZo-d@Lp?dr4V*#KVh$${Vna!>z9nr<< z8b%DiWx@8)^A*#@=VEEq^Ss-J0Qrot*}FV(Nu*Pqub*oQ5CxevBg1xE)4Zz_g~eY{sU`0X_(nzjLFQ=%2a^+ zi9UWjpN)(^8pt8e^hWUrof#>-!dz&L4m)4!j7<6Q{-Y1Ia)HKfHNY9=I&iwu9f$Iq zY^of0Zkdl)d~v5!`3wqL3Cy^k<>&Q)%BCn_2#e9I4cgqX+oMwJuTEm^H%@6Zmh%mQ zR!bBH9Y9?xY=Er&c=WVbsrzm7%VJ-<)BQy2$l?5nUcl9##|Qqbq|H*-h{4tF0& z`Ai9MP?#Wt$7!!0xYkCX=Cn16&H0iup4V zvN!nAVJ)+RUW6A-?gd)4_i8oBahFD4VMyn`#2Q&`01U{!EAX19U73+`R%oPhEQIES3oadXe}5z2$zJ& zE(XR}{p{0T>CeDvc=?uuLnHFmor(Fjurw=}{nY6TIdu{H^#|x3tvsh}Wvjl_=%yo^ zwc-38?qjUV-GG^~qvw3Q?8g?40XzN}k*lO|vWs1^#pix52J-YWK&o6HI5}bk@b+3; zmP~E?0i>HPw39MeD=Ldmml8dC>((u)lm)F?XW_Om@?;=i`n`iZ)EO3u;GHl#;G2Jap3>F>VnMmj=R9m! zBDGk~ml8dUV$rH0dK%eU-T9f95}mdT05Q_YM6aIVu~VU&wuLs87#x`7y6QIi3LxXs zN6rvL+wA-n9xN~?z`HvNsshDMegtoN{5!=9dHKiBmd3SLksNZj+GFSmHb!BRXHtGD zaD**?t7Y*+FWl+5{+#>@tRHrJqDZ(ddjpx0gm5$F{WD0zn`-Dueg?W4Rez`L>0JaI zQjXn~)-N+Fi}~C!k5Yx`3N#ff+eg&Y&3F!hQL+rwc!^wExoK|_AE4{2r#VUz8!?kh zM)dbjR~lq?6Aa-noc&XfYQ=AtX@M?ffLc_+*ei`7K2@)5Z%fbbPCz4vonPxlei z#pC@$eX%~$sYDZG5)m@JrGkyV2G!&8yHzf4olvU{8kIQhQAm7!MiPIz7brfG1VFlz z3K?JjVLF3O6()@K&67Hm z3yc9yZ`z+m&4fbs;BPyk1{x5{eXhgncw++O;TfLcR$n_bK^;2HNGsL`x;mPXJj_u97m)E>?tK1V5)1}ceF8!(fw4Hk~ zcgBky>dR6<;|pS0EzUo^$X&7xey7`#1{7-_V1MRsT1<_X0xafbm=RlnOC*yp6JX`0 zA_R4>fLM{;#<=R>t5}&Jp?p?#9I#go236iFl#V*m;S^#thR`<2MeK(1E0YeV2ur>- zfBt8f8W_ZmWWaQoUbb7mX0h_bf^PO4GTL7|N)}KzO(#bxz7$F=WrmmpFT&}%H#!5)kaZSiTW0)qCp_H zg-GO&SmOMM$@!mA5M09m6_6T}K@mjIw)61uWsvoJ>k1mX?X5p!y#K>X;=9k<_9qwM ze>h4&NF&5{$zV2zqzZgI&r-@CS4@|9?N3O~giS3U4h|7WIau&bdayF!clufu3fEAe zi%g37shnSN_R|E&;>0l7F~N>YU7KifK-pD7$@Iv%K}UX8qbKqU>B%5O5?X&n7{hHz zq~E=+XH&a~!XaU{)cyF|uo8F%7(#`{@p=#9*9D4l{&ID7L0R8J?yg*3xRjVIAORzv zht+&I4jkGbJofGMRWyhgDlBy~aY4lRT^mW#NDTMUC~(A4s^iXYx#7IAx8s7T20d{! z`A;*`@)WZ{-Jf$mr2-X!IKj}K_~{&_Y$8M$=Nkg}BH;yMo+*`$PyRkQ4Qh zYY`4J{D&m)K^Q2+qHWcU^TQ2we1;Tt9C|ge^Q$qH2fA`%mhSGijemdI+3(oLBem1i z3)=#Vz0_y%^vrYy7>J>|pK`Ptzp!hB_@#R9H>V6wI_*(|;E}zhJmOOlU{LESK_-$pN#Ik-gvqBdlJ(9wmYdVHk{$t7(uiJG`t;IT%bOhQU6=E1dcR8o z2|1g72Uk8H0hzR~K=D5+uti9|-E>);=h6h{0A(PcleV(PWMZ&X%|b!;&8ccpI{yr@ zFM>$k1#H+PAX$MD|G9N|ZsyP9e<)@w$oc+&{t@nce9wNIs%e0lH7S#od#`?a*O9P4H~5EicmqKUQl86j1&Ou@neH|WKR&>% zxN8u{1BcJ`_yssiAc^B$T_&hEr2uiA7(Otb^u%$}uM%858Fvp-dH=T?ckLy9VgS>c z+(BIY2O5Wk^A%#GgEW0QcWkF=-g3|wyzhlLFSaLo_VB+iL9`;*j7M;!>$^C(ixcsw_kX~oyj-)P($|o2+(_y}Ss*Aop*&oLmG+4OrCjPun`>4n=Sbd(OVMI_5~f+Ddvz%-0J- z5RH3}q5zqfu{uw!RNgvYxv-9RAc-CTkRPF?i-0->Ul#vm;|bB}8NTU?85&G`N47eh zN{K?m1JxRmZycgh7|q&p*O>)$M^icTU;@CFlfL zO%*c%(_OwTH2p(0OVqx0jUzg*$6;WV{n}>e&f~}XAYCWa4S2WIE{BA{sB>%=YNciZ zP@S(oXe8rRYeTs&)!8gjOG26gJcha_8xiN)dMuNMYU_|3_4ZPxYxd5aY_dJB-1mXP z^e5uwvRfbZJ3U-0WOX^&B~J&5ET?`w`-!n3dmW4eM&}jpsFb%H zBA}aWCkfaBKV7Xn5RbW!@q;o5PktaYY4Tqf1o>GWBHXlEAKg)`l)yf*Br_yaK`!a7 zd~r!krM7QWVmgxW#OD&YJgt_qH)6Q#{D*^&oEFzPoe~1a0c4Y9osJ~`LcaOJ2lXOa zt;EdO_EG+0WPbCBl8oEGTd>=YEyt4tKGGwBjP~o)r`C*`OBUmSuj>~8zhUvX3^>1c7rLZtD5q}+D7zePM!AEsqEaY?y@}w!m25kmn}(Y;Cozxg z0cf*2l}l+pQ`hxr>?>?8OXubPVec!WvTD0^?ZTp^C8d!r0Yx6VL3n7T8|elMrID7F z4hiXyFz7A`rKG!&hBKG=e&4sp-ec@v=hr!7I2bRlu^!f1_kGWK)znE=8vNcqyZ`K> z0lC#inhb}{n`X3Ng=q{)0J|u{(JF&C(Alqwy^S6ktX}fO?;Bd}ndvCHubF#{{&*YO!YJ*yC2V4*<^1xncL5B*6ScT)!bs0_PNTSS+%3%d>1qD|%VdQnt1 z?8-286NA?C`59sFTvS4xvu1%4>(W5E-*~N$-s7}98KmR_6+Gq(Edj{{K>;m@0mJjP zj*6iax;{pRyXqQ+8iaT`KhE~Zj()^iU^LyA?8;4di{xl&`@SxpP$?j2!Db4EnQ?oT zhZXh|>shA*h=d*pss@T|z#~`iMH@7S!I&P6PBKqoYP@{4Mn$2cfnu{e-!rrW(2Ove z$osKF)O1J8oydHPpMj74@*-l5Hr-dDV$M=5$I_~HlOQr&EL(d%VkJ8A;AZ|+AyJUr zF(ajmfidd|uW_Fi&MjQYF;>{y5Pro1jwEyTalAlpw5aH`-Gh0yjvj!8wU-R^Mn)RZ zqCa>vYT4M*e@Mw&2uRdkF->qQ*SYN}C>ctVgQL&rgUt8H*U%p-dvcc3SYGFfZbTBx z3-wSeG1&y(JAL7=bFcim?YJCUizyDO2+Cn24-*TEdw~=T+DWe>*8P>-^Y4CBVEBu8 z5jf-M#~@IAudcw}C1%_&T%ZL(L{IPYdn-U>6!H5rCTco!VQ+I8Mf{`$Fc!K_9$m(D z;@v~;@wL$^S1VSmh1RGZ<&3c)-P}1mrGfkeVqT)aY}GAR3SH|I%$gRp`)Z{gFKMa= zH!M4AD0yte654Hg>H{`=R z0-C8{$D1OIVzM{)o;|ZgpgU$c{|kSLp__Y14OD&Oc2qB(0wbl$wd3 zn#K7Zoj@zfdIm<^_6qyKhC3U7A>I=L=L44gVv4MqbF+TF*bF{w?7@|A{>jW{() zR+en+V(D-qqtcA_CuS80mcGyx?co33z-R28zhvDD(+QIe^skCNRmR1C7ppFnI_q+{ z#~FZS5)DKP^S&*SY$=EF>SLxh-1N^`DobXP1sF3OE#hYa-^rJN!}^nA6+x6zK%2dE zeIN;CkHlKu8gIA?38hJcx5&M|+LF_)LT`*V|E~bO{aC{QLFZF0vN{{iv;JXj*Ig=_kmw}2A zyI)vW34e9IJDMdq!6zdLTE6C)vS9Hy139iiw-;72jLZQN4al$LF4 zq#N0}YTbLKe~FOKPW(N|FO#l7_0?)4d(&aVB>_q=cV&_hRRf`@a6C7w0jWdUF`#)!Fe(Z1g)MLDv*+ zvgse~>ojSbsLXv@{}3qC2# zg%K}J=dVDulW(s=_hN7=#JB*)%Mwy_J98S3F|bVRp2dV?+Q`QUrcztcb z#6Lseo4rF{juykKAfMg`DbeFa+UAJBEr6&-``o$#lMa1f*5TGC!1&G1gah7fYpIlt zW{u|W*IC}!SqlwgRid%*5%W0K(kzJ#!90EXbY9(gi~of7!;-KtE;G`8yjw>x0Afcf zo$9yK90~|aa)9gcOIWD+>+gGlIFXRcXNw1Ou zNWnL*S?B)R*%*88x)_YDP*LvV02ys!Mreeb2+mOQAca;x>laEOy6n&?X8g|cDVp5r zYgr1(G*f%WgrZTk9_Y7^m4ek7U*w*!lWYTx+5ttsyo2CohI<%3xTDsszplnZb&jc;RyB=zqCxJR_;-{{G4KrP zGItv7-&SApAYeC0gB;omQSnNs*mq*~1Z$z{*y$=0IA(6nS~;e;&K`qSv1dM_^T*Yx z@K(GMLis4BCYH56>2nOeC5LGzIRrYI8|O;|qiZjzN?FwVlcIpIN#!)_H!*sMO3ZiC zI8MJ%q`LTAsXl+sOqXCQG&-_l1;O8K(*xP4DbmM^(&I6MzIBi$T=U>kTWpWH<9HjB zA;Snk9>XMJPjgXM5AYEYUjy4~r3#(`B`T0ni8W0;>g)10l^?p&(c>bx;T{R5A28FA zi{xA*;%>5sF;fzist0pHdJQIn-KpaOo@(A@1gXZc6sRk00jjk#Ks^QEjXOH*JpDDr z-tppIfBQIZYe4cDF^q)5Mk_0-SiTkykCz$gH_wLC1*`aEJ*XnvwR+TJm?m_8%o+gZ zovOphCTxPPI#2AKL3ujdT{S~Y|F(z(D4@iAu<9c-dAO~1UE&9MEGRJyriF9kNyJzq z7*s{CR7rkjUl$x>^*#|{Y$SK zP*)Notund!>>u67?VGO=g6UiPm+n8k?oZ@Y8orFKatW8l*Jswvbisd#BBa5~-^4d? z!E6}`=Y3dfqc5ugLfsmV(T^TgH|ae>Og{3EM6iK|wl6w9k^;;e53SL>G`kJqD zkzB?8lNC;L1v{g8HIu3eH_ZBTA~6XO)#5==a&#CSYgfE6U&l#uZS#rn(Jm@LU zhx0(&>Rw^LZ~2~3w({m9{0w`DR&f$uI8TdwEXz<1B>dfURSQLZu4oCyJ%gZ zsLYM!Es$7KV}Z98J1-b@8;@YXNm^E?afRO1V!Zb9B=^%(ar~aa2t}k&tEl(GDX}tS`o0*$o zmmD{P^d=`ZI77l0Xd}R^aHKU>bE6rA2*O~E=sIdU*d_jv=0cYPlz=j)=duZoTafq{G4we0B{8?{{gkUnX$hi+nw`|jkN?b2|ar`*np zFIIfpVWa0mu;ftGHLx3XD8axQ18mBbvw^;B>y8b<+s`>+i|21_bVd5bcHqi}~RokI(ZT6D2|3|7JpFf6M- z2I4ZL(VQ9Ne_get##0Dqq6?$!r~3N27B&NEmYxg0agXVgC{(}~0(Qyo&m+EI-bVT1 zgkbW3JTg>4**vz{0>B0~RHAR%l}nf22T(*Wrj-@Vcqexx94FN!(MYDt#+^mAowt|x zSt@5mfO^sfL~c^*Q+Bp=1S~dyQPG#NigPgBa<7HTrx55X2uJxY&W?JX+M4?*x33w; zT}9R#>Gnk<&vHy%a<8t~qCb!)U|{UQ%NLp(EImf@(0Zias>5$%(Z0~>NDYhfx3FlZh4^cM(EQ!xp)D z-Kb>F5g&|20t!xAj2p3Bq5U6B%`>IU@GfjG4(BmFIk6w41L*KQE($m$Nv_q@vo#hnpqb}>So|61a4QA{WM<9My>SK&T(RUxm$w>vHO=UGYo&^^s zzKVJ8LHya?*FWBZT9@uuNPmUrv0#>FW|9LJ&m)R->1_3!XmQ?ImO8wx(r1)+joPDS zG-v1y{f%utSo|pZK4NrW6Vl5=k+Z-@i36m zH5Xhe1rCYsT_Kb90mCC~%wQJ`VAH%4oV4b(>i4Y%J_bvxR#*4QJx<3viM_Pn_Y9=67A zY9sl`qO+*l#_tS$sBB@1r01T8R(9>(sZx@xRAXB|?~nWLzJ5{hSrvb58h---??lM* z@Uhcr6EXc_^5gCNxGIZ71`DtKyF73GOU>#&8RWU!9KyYomz!y1;^}+t)(34@Nn11o zqa*yiA~xr`n>Q_OMM#Laa{X%Os?oK;p598u(M|O&=?VJcI^%Mm_>rB42){c^Un+Mv zTbm};6qo3M-CQ@SIg&f5a!ly9$V*833CXjfR8+A0ppqBdkx@~^C8Wf7e|4h@3`q3v zKNQx#z(^0#=YP8TRzid@ok8QyE3_FNyCI|6iWq?ybzhE>hA-xxkzbAH!A`I@u>|&P zwryPXNR^8z#5ueuIncKdh_&ejJd5VaEv*{g16@q+AIBI@nla0e#H7ozZ?IGfK&n{} zm~C47jpod0pU=(wqRj5QtPe_t!RfFxpihqud}I%uMPuUk@#%Mx{bR>3Wz`3`rGBh7 zAH0&KTwY+F?qq9GHbD`P?xM0w@c2vf5SCxZR#)`iO1Y&n(1}I8F`@}iJT3}3ucP}& zCuwE5@LnR$O`+p^{*2#^|Gs%um8y8Y4St)S%ny=ZgWEx=)KZHv4SUkvnu+7+%eflt zO~Xm|$D1pGRV!z;-<<4{^B8A!pof2T3pPUX*M!(7*#9fUenNhZum@@HPhA>7Q0v21 z|KD)bXZA|%8DFc`l#Zb(?)O9c;V~u7bDEwLb`$XyGI({Vb}O_jH-K}2hS_+gHHxXn zAhYF(J%MGOw?S`*=#2T~PkGU6vr4{dG2i;mdyI=*);Fz-DYZ0vm?6~#3|<$2X2l)h ze=JXG8m-^c`Wz1HWe6S^SjN`hec-0F)>PTHA{M9!tRN$EI7=Td^-Mx~ha$)nWPZ?| z{-Q_~hACtn7p0t8-N!V}C&q|n-CP3nr}5VvYvE^n(&aW&-6D+cS<=hN=mZ{XUp8+X zZ}T9Ls)B-~5u$$WpDgEMHwoBy7SG5&pI-QRUsOcRH}=VM2I$}mrU}IkXcq>PKV=W6 z1l1Ny-7)i<+_NFR+!!n>6~V|^iBCPQzVP_S{HMzW#sEDJu0J6@Hwr!rG^BU%jTm${XR~Tydx7We)i&KItZbB z2!kfhkh87}-raK)gB@n%qA7Ww2xIcfZ4JSCMCFrfD-Nbv?+OubU z^%x3%u7bb5@fxlEaXW|pw@f- zl2T=J4(EIPCPf63(42c(f>D(CTw^Bdl6%KTd62d8hf;H!EHY5$_vQY)ZK|KzNug98 zTtyL)T9|lFDOWDlEgkQDd$PchJVgW_(U7Wu&OcE?w0CmV(({}%x~HsPk@ffJDiyad z>y*>BaQba%rB=|i`CAec~*!4z{cr`DyCscjr&?%zFPm zjLE=Ip~6f5tv6xk78}7rC9U>{y z6tupb@DOx%q4v*tiq$~ZmkA^`MbZZvEgbwA5`K@I1_Oy&#jkP@C5^}~ad;*5=@nBl zP^aq%<&tfyJr1L7rW={-@B;aof+_C^xUavWktJrC$7f1Rkq9+adKxD3_1qe*cI8ge zvI=(;VX#tA=4?t^4A*7MpA6-nD8 z#nA!NalMFmRR<@=DOVHhsS(3b1J2#XnH2ca(Hjtd6eP2Qm%Dv$GsR| z!Ep{B2$H+YD-2WO3mE97eDdA!cZwE0X@e0Yi`h`9@ z+5QI`)eN5!?u$~c`6d4CS(x^4r}|Y6UHA0blz;~0N~X?+tM*Q)<=YfL^t*Bma{)$n zCE+zac4lp;Px6zrP8Z1rJGj!?IQ8TCb|R`?2kX+w@9G32u;N?$->l$SVyHN zWIRgc#w!MAEQ`|A8q1#Rr3X*flDyQhWhv|N+ae&m(VvWYK8+D;Y4^Ag@qu5tE7}&% zyE`6IM{|T*&4yR_F1VWXrf0)e-0N#36f8A^CmA|MjmI5xMd+fro==fn*Ylj$LUa(? zjz(%`j}=%etnt2M(~kthG098lPLrQ$oYwQa28?qG8`Q?dYMRzkw) zZJ4bVY8I*Wwyz<@sz4-QHX+jZoVht7M^{2eF$=JsN2@^e2jYaVVH{9)Ga& z&dOtgh(j*fmNagU`i7u{$E-`~RWsDIm{L_zZ9TPX#J^*&1={KVdP%9U$z{;2EW>fP z!V)ik0Lynzi+HW6o}#z;k(sojhRx)oLl^rg=iUSjy!|cANEld?`g`d|R4gW`RRNl) zrXS|@FnNr1Qg#yPVwMIuy-}C!C+O7%_aS3~l)++4RH327^NtW}yGg+2y_4%0qxNF- zj^doP1drm+vj|4^)yh$NAfn^Lw=8*0c8to_Ol)E|^8{VmW`PMFB?0VR8=D<6 zBFs4AM|Q-nxU|FmE83B5noiNdL%7-4CA7E{h-gCbfZqR_enq*xaewd~oEwDW_HMNdYDoatJ=h*`* zym1*EKF%v!E0c*Sew4?=+R9y=YB_PvYja^&d=0t|Ptlm35m`Kt3VjWv& zyzqv0&GnmS+%yTI4Dy`D8}}@>^0&=b_YnkyO_4ro)nu|U*g^(#a=Z0af{vQM`@-pYN-9yr$LgP*M$CE49_rFA~oJ9(oBO^oWnjoeaCY^j=u$35pz^H~( z?k=2i5vRqCPb`sRDzNIy!#{zL2k!eSGol%3867wwun-Pw`=)#_m>61$uWWTa8+mw| z|NQCysz14Hhd>8fNALb3376oXczW-IHT?r*v0pxL*!d_eqn2(dpb*1SV`Pc->CAI^ zMCF6?UQhB*D|b2)fg=bMgeNC^5`1+cg8F-8+IkTmK`rhfikpsY zR);@ADoaG|`m^FX29j0wAHOc0hYuutnlJ6IXpIj33FbP#FDD)4i~pkH{!`T>S9?~9 zC{Qd&8$6Id_IU$-#C10^y*Gb!Cnd-&%USsN^uJu^)c>155<#-#{%;FDx1F01BqHA) zTRsb2c9B7gp=2}%9UR_61GkN*IL_3N2ucGX0;-Z|J`3rM=ZN46LPHYEtS1zq{g~?i zppugUsulSvmn|)}JP5vp(Wv13P`cuTdmk(YiD0KK*OxKv)N2Urf-7W*_=F&qlM0(% zHWDH0Seu!48Bk0*%nkjgi|8vBJnSb;L}-kYq7HFi*<3*R|Me9i4m$rQT7`z3oDfi1 zu{|pRhe0CDed-Q6zpezhm2qA3_xcMD7}7CkyHl~-wzkttR|I*G&rf<1))7w8c69d5 zWPevOD)@LI%Q>KZ_rGa15WP*KB@IaLSdi#G(Lmw{pt(tw2u+jUz+;lGpZihFzS|M? z5a8H!AOkx=f0p4|n#*Cjc?&WnUJlzPo%AGsUd}QG_=%S1d9#WB;C7#poFpD1)*US`GMi9Hi8J@^O0!$@%7z6nz(Ny{!2)^{)``Vat5ugz}$)jk*4A@M0CC0 zB1*}43pP*F(ZsWy=CcfUCS25kic133LXQt9IT`|&3YHb&u|SpBPV=H~p+9eK=E*~Y z7?|_Y)a!8e@PYzRbJBS2#bF3%s`S-bLo#l?aiFpJ%$GKy@)2${mI7f=`rei& zo5@I7Fbm56RVO1@x^Bme3YXS{u-1rNn$~{#lJZ00T@jKdsQ=^ zB+R~hpDY$A4`bvZ3??e%S`3q+>1VDS4NS4?`R@BmrA4xLxk^Fct1wz!WwH`4u>OI} zqfrjLM(6p;@vMNmu<}YSQf}0^?S|~cf)-rTCPTiOScH*stn*)jyw7IHmZ;vZ zH-S8gv3%GPowLpIS&=RAsVB0ocAvs0dF``k^uCwOVNW>x|3l*lCL)Dhg}g$hS*K(h9wHHf@~XVLDpp zVRH;O+3+XNAj6Jm2@t=hKr=-6BgJ?6$?3(;U!z5WfAdP@6RHn0JdaPWZ~Wt`lJEKN zt}62LG+d4tyTDG4E4`~&l}r9o;|r*I_KG{Wa97nT-aQ>BUE9xoAqRQk99FlX*9AQ zD!;$_h}UkGBeb-be$EyHALHx&N#qa{kG)xcH?**s4`GVz)o=fCO8;-}-Pi>-+6 z-^6=!=@)*C5eKKdBB}D;0s?}7u1;9Fy0YBs{zi1J_9s~o1Exbqqc|#9WiXsR&7|I# z&ofSM5v`1*5FnDY1M^=mc7<=6$_-a+zbAkA+SIn-Ekqq$rJKA}jJN<0H$Z5*YzyxI zkD^J+&PuJ1QW&|OsLSzDmAF=2otUKZn6%W)-v2%6DA4i$HrzRtFF&DU;h-57U$YsM=(l4W=Z?)0vN2@QTa_6@Qc- z-<|>yDw;@9K@}7uDI@NC&AiS+#EB_Mg|cycD1>e4dIXzFPv4fb2y>3sr`O6l+TP$a zsvC>@v`r`c>eBN*qgPSRcg!eMz`a;4`a!@=8Z@4r71Xj}&k77%($-WcVCecAI-_>Y z0+RHzlP>ZxrRJ$gD8IqBV9Mrqr!|0OO1(*d<*?gL4T9NQ)Y9+dcV-=Z2|2UA^<2R9 znOc26dy-7{=XQ`HIfZX{aekhNmH!L6b}j#Aqi;M9Tj zTz|?;ze~5VTKr-Ia{frCKOrS3VbCFy>0_<3r|~clQ*NRmAQcgMLZZf$zGN+88Oc$v zg1eFtOliEcnlRToxWN{Z{!gG3-A1eGP-7`MytsW-=N~_HsH5BBDJJzZX+gc}_b2H2 zCq{~Q5tIB~IOf+V?STR=2zd8TDaY`Q+T8)LGq{Dx?2ib=ksv)|LfIZ*sGD@7SSA#BVhVr* zi+>2OvyUnB2$jUncoiYwx~(J_9MKtVeMMLn)u^CFJe=x(o+|g-RvY)|K(Pd#Sa-VA zL(mH)Q%m6~!Oiyt0sd0 zl%uv5oVodiZL!q4nK;4sZuHOUVq%|&&HgNkc*NzH?u4~}(zeLMefhj&h>%#+ zpO_lIP8d}Jo{3|tp|Z=5GSI;zHJ&UzBko6=YS{YPH6Aj&w)&BC7`%MG3)cTYg^D|W zpu!(jP0^fLJ@5kS*X&~8DFWUoQ-6z9mnQ({*gC5=fso@pM`lkaXlRaustN-w=@<4^ zMGaS4WkzRt-Z$`0NovTZe2D~Lo$^Qx{66ZjOfn1|9ec~Y-;{``4`$74*q%h^%vQ+p-m z!!(|O*mrXEvoG=BiT6|)$|KC_yEhlLDxDt4^fVq?kmpxcruB4^znpT(-M@&g)mnH! zM@RKR83{GO?Q_ir$(D>(qf*jOy7y2;0}G7h5LVtC@rS8-hsPOuI_-rP6?%A8bxsmw0l}$dA((w9C>OG)tid~o<;hw>}_NPPn<5G?FIz<&x z7)$m0r15$W_wTFL$=m)E4R^0kC>mJyPFQTSpczYIRubInS@rf9a#UTC<2{t05~XXn{O;ZeNX>l=G@?07zD^n}m(At{JPR2QnHtZZxYHXJ^&?)C z<==h%Q*-!qf$oCnzd2XC=Wge>8oj=A^57Rm;9<+Yw@>Q|M;~51*DqgSFj1lM$?<&p z1&%%%xhP?YP#X5{*G6AHlQ@I;3E;v_>ZY;LH~;h2_`t1UkE8j0g2#M@3p_=%LGX(> z0)Fc-sD1>?uV*y}d+xMMF=Xs1fe1p{{@eEL$05%eI>~VkBXvZU@_*q_OX7qccAftB zO{c&*EuQUdr;cVgX@2qGM^UFu{1eXf?6VyCDIWvR#RMTwnp~wYRy~?E9npQ3Q|$lh z@=i7&v^4yPx^_-CPuk4~m+$NH&VG5UcJj81z>9zWUnuteU*#1MhgB}f}2>5xzy0P(XZ=+gSQyhFE<)p`EhIe8fCJ|*jUf!%ic zU~S@}faj6Fc9k27PBAS70GHR!!a6k`sUZA%0|sSM!vqjxbrq(|A%@E^T5H`;alid$ zI_Lt?uG#4PMXvM+A5tL?>DDDcWcs@WhTMBM+_s_>eK-8E@5q)l_%oip=d$Syc>}b^ z@payql)WW2?)#z;0-ioPURSs~3{I$`9e$gaU^0?|&gVVR(UINsB0+P4kPwun0tLjE zf1kW6V`K306CXVLc<*EZLJYBPRKV36CvW0_AG}sv-O!OExu#0cs2SH@l3U;SB#pX) zp9EcV=RD^^(Y5hYRiyWv?qlG!ro+Hv`Q;(!?207t)OL@fsyBZRU*uixc${Y64%*$W zu%^(|T19o3p=tbsgT=<){*ll`xEPjA>G-7wv*)yU@NKO(A{|oIQNS^ zH6YoIf5(<9e|-F4s}NMHJ)=KMymUdbprhO}JiJ)QV>^Ad*km{ahAmPimjv*rX) z3do$@+h(sAg=)U1RwC4Z4380p5T-(Ndj9xe$0WljPjf9si)^UY+Qlc7OczduPr#sxc1E#zTlf-rO4W2oA;f5?PmMagjtn1F6DW@V^t;JujB z^qbZ!Hl@Bs$|1h8{dhaxUAgS(6Z?CkUKp8TL6-9!0Iy+fRh%A zto9!wtbgV)J^S22bINC{Q0~;m$)@m1;uMzDv&v7&(A8!n*33X}|IloiBq&wTLm zwThOwNC>+1Htnn+*rokLXk;WknRH|sg&`#mrBQk)18;G#`Ri*N?@g4_Z(=Y9UX9{2 zC!vE7T;38lF$hu)`3;e~#3wNS4xFXyY~oVf?cC#Si5!br9Ihd|HG z0qd&b4M#OLqcC^$ZEA_wSE2#yDd4>8h8Do<=H5%E*c^?L3_Xa0u^H5flnSOmHB~uS zAQPwFGM?RXq6<;pez>j9X#%k|wd)Ku@4odrl9LEI`0w4gB~D8Ejj>{ec<@oNqyZEW zAKi|+rx>8A-jmm}rqayS9)YbBqX};< zV8Wha(we&o^k7sGgLix`o*Yje7vOwJctB!%a%2pI!1`pG(>4FIc%MJTd{*22xY zj^!&ZxvnXVlDmw1$3)EhSsz@tE5w+ODx?Xvs1IP9fEh+t*A4cH7r1Ewird`XFp`Y? z?I_8pcs5?pHc+?TU&8Md@!UvN3=VTBja;xE3BOBNw^8GJ{4c2@O*_o$(p&T2BM;HE z@Q(Q$SPgO5<4Su7ne|B%ay&iNrZXlJK*UWxymfJC(oyooKU#pR%Kf@+yfbYvQj`K> zolh}+8nFVrM8tiHVG@NY5P)0DJ*whC!8T;Rmws`ChNeqjE9S=Ybz`~KL>H)yQHd)~ zDHf0fQvxJdaSL>w-E`XZ>V$aZdlo}QYJnYJsch4(vPt>_TV~=r`NX;0^SJshwF)2+ zbG2)FwF<5)BUPoeSW+#5;R35wjG7s@4I1AnG%HF`;T^{{Ca~P7!pg+IK_W=8@~PYI z_%*Gr%i-$)m>uP%Hno~%HCm&Fnc9UNsFld`8OyVsPT;xE%dn3w z1`=cceK7Cf!33Pvb2`~oAz@S3M9(O&c0BSkvDVkGFLlOjd(YH7o{2mrc(o}1DcX`~H?{!zcTN z2=DuZk{53fzfHhpQkMn~ffj$wM>5{-&4yQ}k@Q&TV`k(TU;daLt z<=TLPKuE+<$QyB=RPMu(giRE@t+JgHcRKW$SOUN5Mt!v?5qBJ@L`i+H~Uol)@Y4H)v^`R=Gytite>QwnWxCT+( z)COUMVjsM|<4kXp-Ae*PNe7i`XOo9y44zdc`E4P0N+hs!&C<)whYtrIrH4X2n^LW;+vKu2Z`}v6G%VucZx9xRbP8ku_>yX@jgT%7*!YM1k`o*Hf+}c}Q1|dW5cf zQ3jy(KX#5eY&K%@IUW%Y-?)NAJ1Z>xu%}J9sXGKcRhp>UY~QKzO($SrA`jJSwJH|V zt5;V>^H|#A_{EmfpJnV9HTJ9Kh^2@#+P+)ko9}gqoNGmYv_2%4iY~XEZ&ygQp^oB{ zb$-&p2_){~eGp5gWSTjy)=G-@blf1#O}x|pm#caOPN zw$FSJ2|akyr^Z%t46TwPq%Y`)b@imn(OSh1v9Y~bu%YV?NGP3-tys7$rR(e~&J@82 z0CwMDtma68BDuM@nv&2wZch2Fel8J>8iZSAWPITud z*L$N>b98oddSg9W_TihW5eZt`H{L5}DtZaG(QTBNj|h9H=62JPn_ZJ&j1NjRR9V|E z)UBhZhvVxmbp)>?f42KN#o4oG>ExDU*|tdiOsg+Oi0I}wntdHI%@L=yDNQu(NiL{)IiLkwLSuL};Ztm_I@0tL~iOo1T-LN>j z(i)>}h`7yfv*eldLJW0PO+v(h`)BsQ_4;Ebq|2l5vHsiHApKx+>_1~(Zu-Kv_AFk< zTMNqX?|ba7+e7s+kKrnN`uE-z19?VBCN@3R2cr&cgcIAc4cze|;pd{Gn@E#OAYWjz zo>+nCWHHbuq`iC-*w_I@NUEp=?Mqsg1f6P^WKq2}$F%Ot^xYE>gv)m3bqrQ<7fh#9 zIBp6(a$bAU?aSdBYiO|%kyFr7<+`mud4>C-$*&@Lt{GHK#9HfIp~-}(XR*;+s3yP<}3iOP$i=p$W6HbR= z*IZ+^2Vq4Qb5w3w$%z{;}UQtijb{vg6h+be&)1`z3w{-#wuQ)T9b8CJAe(dZ|frV4DK@f$$L29QF|-J{g?3e%};7 zYX{WnMX{yQmW$^(P0m{TV&4gjRmbFHq~xs{_oP6P9J}5>_6TXHlk#w(!`mg0ooU3> zBF40z-y~>`AC?)u;3t?XfW%uNdBQnxFqc>3i8&y1-hM-d%+b-&6U!=iK)oYl`#DJ9EJR#mO`LF>l zJD{<=DMO;Ut>}~59OMB^p;nTj%n#d`*i6;*1Cjh>mUo{_c;-Rwh7m+2q~Z%dwhg1> z9(MhJf%dCaJSxfep25j9{=2Aeb|I~O5%xEi6D@@_lzeQcOQR=M`~e5DR~Mm7N)Z;5!DPBKEW+Wy_w+Z5=cdDYBE?*lMx|ql2!z*SPRGN z2ua3;_*W%e==Ct>M~V*9k-LmhVQDG+dTBtGVk#)l=+E;6x{ce}SJ=PUA&@;Dc<&*A zWHMP`WzO0yL=dQ7lX@t74dir=D;Gc*UjE!!%Yy|2t zFO%n`LDHxwAx~|!mwsl}CQ+e1a$IIV257T?lkmO%A%({ByEq;#G3=$O7u*n_q-v9L ztzW7T#rJ@EPeFAgKVzIv(^=$7JNTjS;|%6ip1#roWqQ+3qePyVdjs+8@=@53CKnVHkl*mtVPFW1h*@+yh)mX`9ES!#NI zP)xnT_B|tghE|fH`zbx$v9wHOXTuvFgCt85Ru56kh0>LwM@nxH(|zOj=Zev5qeOwk zQ_3;1)i&UUO-y5>&c`8W;N0I?xlH(%tPl}_=ZU%2`*#+>X~;*&e~NfC{z0njgX$Z8 z#<*!ELM9cxZ-olSs{2#w@D!8P=m(JsR1l|W5A#uk z=)Y0J@=KP-s;EtmE;jXv>}B|>xd$v_2JjdhFiuDLzbO_VZ5PwTyf;dV@vt6xnuJNy@PU}AKHY&;L9p-`^c zcbI6}Hk0|Y>+Lz+h^7!4F1`^UZ47V-OIIjN-+IcG*ZJaVc()6?bglj~L|`bx>-YH=`Cp*& zBPHy>{9o&pPZp*F0`1|qzB_k<*b!(wEi4xt*oUVo=-L&L$QsxQAtVq)@eQ z`|{w9m+KFX%v9P6N{UpTXz@(&n`*~IFl#WA{jy!^td8^V`{kV>8sIO+MYpj^2<{q6 z&#P*mT6;&rKe2jz6`Ai&{jk`+9!8yIDNy)!;+2u?aDI_EV`>eB0PhlM`Y6WWSB89^ zVm+XqO=jh90FwTeI9}<=I?2?=6}2}~!P-MXE4*UdbW0H4vQ99}W!86b>1jgWl?O_hiUyeOn3`ul0E~zXvC{PkQB5(25|G&ff|WdsGHb_aDFSH<-qb2m zn4r0A_ymU`QGk<^Udnl{Jy-?|R!I`rcf_MUF0Cvn7wFUNz6)trc#_7ik~>sxKrcvL zr~OSd;MFZDhItdMlsfs-1UJF8^YAu7fO3kl0z?Z15jX#^ zU4K_-*cR4p2{IVF+0F-Q{7eQ}$`oz!G2XISw`UB#L`b?t&_6P*pwSOXpSeVLrbDOf zRu(DVHaAT^x&$(bBm?=amWk=!i3VJkjZ*{1Wpe}*KOLh};0Q&yZeT2Ls-3PH7Mm8S z(99HP-0SO?bM@?ph3@BmN3$zqx5#_yapp@8TQKckDk-6`!go%e`U+=Io@pzUZzrDN+Xe7l!O^ubWB(`L zUN=WpN$QytnQjqQdDF|{JLxpO*}!M^D!-Jw-IFSHr;7F}soAp(h2+XhBl&v#0h^mC z45|l{JdCOk_$mc0Oma-=nTI|v0T1oY2#&Aa$}dCew&~WW54q197P`v|{Tt;8F$nVr z*uSf*F%Cp~+vzt1o$n`tvX|)aXn#dfSdBg(XV>V4Pq?6#dez|^=`%~d`?3>#)$ST} zs4zUX0Nt7PIOD-?>I)rjJB-)EG8K!Iv(V(dv9W0%jq*mGh*sVD6z3M$7R?nL>^Ove zY@Nj~%hcG0XIt+_^m8o4u1-vx6xzXbuWCQkwbZK@5;$q{+Y^N3sHJe&cVbtP>X4}P zT@tCE@d6bKCcm_ARwQCZ2l8ue<_WNd?{|=!3w8T>^eCw?|&vmAesjRwtunh zPwb!YolNl8F|{?4@gJ^aUY#;`mW9&4+l8fxIIg(}i^lOa z6XyS&4?IJ4%4aHe##aj=Qt#^n>n*Cg2J2LWtQ0)a z*1Z{B?@#>kr_MM~!okMf`|j`PKZp*_U;LLD@0}cUC2odJXa1aeV>8(33Vl|fgcbV2 zq!=kg|8?gfWG{d5UsD|ZunJY;dZZ`I>%USCCl3d{is-@_8oaZbZ;$-3r;6~MtjouN zKcm2T&LZ104{Gs0s5j&(fByd$LMq4qJGai{p~LpF7N5)JrSkG}1#nc&0-CqEJ^B-w zxTu_^Y+~^eo!AeQun7zpQBD!ZEDwCUG|-i7x6mhJ+EozVH3&$Q2&|(dIJy)en=;ec zFCua8;)M&{zaC!9RNtBp116p!JHD}V56rwWr%!WdNJkZfLCi$OuN66nGe>lkO5nB2 zVY6y{&>FP?$`8oUr}QOYrzx+fK!z`U)5KmuSn0{}aovwMJhvgIdk>=1Q)T0#Jr1{2 zV-{H^-wSyhya&IUe0PcjoqCb6LzGerRqF&)Cz~3TP6!vr6!hxTjgF?7rsEm*ovBEj zuL6epx5j`+s`b36SL;pgDR=FVw9;kER~y6+pt?(ih|-@pEf6F$yA{*l`|$}SFaEIr z#+55c&EX&9A>Y=VkNd(u3VCtHp}#_TBUo8e=68G#kyrj1HiF$dy!+p%HeE06gOENZ zR~2N4CPc>x^m+@pI-~=621MJNyGHzw3m(q=NZ6yphW=sw)gq&gYWc(d91W=)^^*56 zIzr+3ne*8nT|!u*9_H4l=8;ZLEXfdYStfyquk*$EjZC=}ZH~W1-=pbkyxtMKFbV-7 z#FBv$$_Q$}E-)BRY3eO9VXq?Bf!SankxQl&yWY}a3+Xs5$LbFV*!15D6&8Wc^$wF( z0eYo8UcfcD;o~nCHt?wy%2`q z%jNseOII$jMoN367_BhqEzEr|eC$_<6S>zdn|6|F!egR6xBl zHdX~$w0?(f`w;mx%98MRl9N}3*LyO++x-Bzur7^+Ok2~DY&s~=$Xf*j+<(8&1^&I< zra~eDv}@rD#_<312l(73Gah`g;xfN?qFX$5Mii+*T~7AE|Dgsg`Q}fHWj57}Yd7C3 zv1`Mh-3K8J(L$c2BmxeI93R`T21LxA<8^)+c}@gz%vyXF@1-|=#j(s_ey;M*Dm*xk z13(1*fZKAXheAiE{2K|sgF^mz-Bb;4bEe3eZY^7e>WUy+R%4ItD;z@ATr;9$Rl8?6R+~-V!~$cvZP6zw${UtVv#hXvR+-`%Bz~?a!$dt19ei z&HBuHp&?T*^gFby1%CuQp0_qJ7r%T~Nzu7pt- zbMPrkcXSsQsJga?00cT06O) z1X2z}vgiZXW^Y)i2A{*XSCBHF5lWAw2ny+6mX2nl-Wn^*WDce#N_T*qPx-Rakyq}z z^!Utrt1p!99_6w;6B?;5%|_iK9jY-Zh-qwA@`F>)1Hcf*MZ^zTsq&%juXF(MR@XMx zCBT09+qQs&Z1GJrZry*awY==ys^~Qd@$!`Cm;*&^kFWIU_T_#ID_)a2us1&!DTNZziE#>Uc1H7 z2<22+>XWBxe^~$?5bNRvQsY8{>1)?+XN2r-f;_n2Bc-6J9zc2X*GcQ|qi&fJ?J>@n z2Jb)VrxfuyO?rLnhWd{rB)DwxcN(#mj8jf=<*9yTiL)Dm^CnX*_u^`Dwt8Mu25wN! zI3x(N(QAiunshusSR=RBs6qu<9!4@I2}9k?C>r^=tCTL>$5QX*#sKf;{TuZcgkBl% zX?cY$Pa(-A-w)h~GfA`kA3YK%CcERSH`9^H4=EJ|MjcYqEfMM@!Gxx3+;*dV79OqJ z_mQ-rCnxtqf~{M)<;jTERP^dP-^(HSwG}q$`@BHmz?)MuaWTY=?eI zTQqxis77CyMqJ)%u+V@wsdTe|@IMw$l-(DhmAdN(b(HbBP}N7}WV1zk0GX zp9;F}3hP!r!Y?Sad5PEhC5|)~f)?f^)eWW$r>rwBGuk&5yk|QO`*v>g8stQ-yBo}r+RGV$!U44@6zMzZTtzV%AH+G$74mHO!zP3OG+hQB~4sG5D$2T-|t#LOh`5 zwhLodQJ%+O4?R*7Ldo3hEFq(YqC}&klU#Bh#SM~vm9qokTDNpCn=}T+3~9}m<61Nt zgDw*)Nf559Q*go8GCEtpo|d-+d`Y2%PG|dg`gk z%hRODPdu8{M1t>xTU2m7Ge-x`|b>BOk z@sa++qt4O2tg3!n`HIDfG29?E*R`3zUoMYso!OjP=x02B#aBybsDA8{yb#ZWmp;DN z1?bEcwl0J(M~)iuqvigQW6zKiU+=#?@i(wlLN!R|m4Fx+VBnX_EBn(@TO$M3jRo$H zjaJtwVYs_TWlBwmq+GK3fJ?-fqwG(Y2SilO;wv(mkxZ4F-;zHZT)C0jla4{3AFfNs z5-%#vIHGGCNTv7G@+_YyK{)XQIWWqbyu$vU=U!I#oW`R%`*STWIxRd(>779qwpt@}V-c|OgRcBsTuE`W$7 zG)z(50Ni^wbIWgw4^OCO_h-%H6nA8=v(tnRmYU1x)XH&vkn{^Tz;KDQ3=PsIl1Sypw6UV@5iwM;1X$4Nv2!XP%O{vFyOECd+SK80h!riXDFIPTfnrOa`} z4d_{By3=K{YpQ;(lipktry}T2QhxpN(c;k+QlN}}eZyR>JHSJ)Wsn_k>`>dIW4<>} zD}Rz@;Zu!nh7_Z5;Li{ZX)L-RA}EFt_I!Er=kC_S!MAq>u*eq3ldBjtYl-?u@2>Cd zID|f97NnMok!_`%SpMi@gxmbtPG{49QJ-G!Rv@u8yP`y(b@W1EtqPZf;l<5BUYV@@T(C!`I!LR|c|rI`n! z@z*Gi1Jf?~mEPR`)aS-ne)YELH5s@KJF^+tU-AuPwwmm+(p=g@UMrT8RGJ_lOdyZz z28Kk_@mKFxSw%xN7_V(P^eOnt5{0BuMfO!%FrubZmulMb;WeQk>q%eQ>19sSuJD<5 z{i|2rXeRS6K{C+UE&yNpxfF^?4BD{Y{wf<#H#y5=(5Wa_Y<(bNcm%DPoj*ehAS>%* zb*MDEBge2M!O1ZZbOIAy;6M>k4!$#k9zM4Jl#NLbBDP{=*BmYi-F=-CU03{qTf{#( zo4aM<-TRLP_90!{n~PAws{{A5913cs{KT5iVsKJ*WvS4m^c)vT01D`U6>$#3BwnPR2BM#@Rd=PO?1yI1ttBrRZ$LY}3$ zxLo5JDV}NHOk2Dpk~B#jK-_#kzj(1v=CNT$F2tuK%;}3?7j?`pEM#GuNZ8Aj z7%?_ggU*C%vG!!+FwLeI%f1ke09Rt=&E=8X*j1k(jaLyEcSL(1ve~&1OtjU0wE0>W zI#NDEnqED`;(qXgT0veRfj@FrQ_z-I%5ukRjs&V@J2{?9))M(;EypIKrGY1t*?2FP zC!#V}Tk;zi_u(A3C^iIFw*iwxL1m>tKVP;o_6%(5^9Q3EVe%p0wC4Kl;x(?M_AK zc-JYN=Q?h=AinxwwCI-D(Hr}jc#B@XMwyB=jB?SufrF*r&(jFY^jTGRza5nVzaC{U zl>CFF)z_B&Q;NrNE^>PULpr^Xx)}oi{r#2GrEkWCS#8AFEwD?=F-68f7T1f}2U+xN zzR8i6W98;qmD>W6HmNeiI;Fne18MErMrQ9I1oydz{>A*KiR5q=eZi++;{{wIq1rn+ zWyh}stuEPHjK;D-A=^u(W4*-t&aVGruw#>L)DhzU4OrkrAPFkJ$pyw~A^l(*;}a`2N{9C3M099w)A>|Y1EhGN82#;( z$Xu-e0<-rli{+!rlVZ$l)iJ9E8n>_bf5?!E#oPr zCSMX=`N$l7Op{bKCBD!StA(O@t;_jk!JAJ`_CUD=CpA5aX&s~zRA8~oCiCRr&593Z zd)szB1>z4iPiIo;!&-MXV&EkkYmVZlQD7={*z|1@19!%zf^TqwlRr6BBQ`*%*9D#!$?Qq>vtx zBuD#UkLU#WQ+h+fp?JMNan#q-Cr^fI|IBfQ5v*%i9)PrZvFdaOXY&UGucM#W4ZgK0 z%m|H;=zG4lx!J$?P(!Q^yb@vC>r1o?Vyel@k3nOX}ED=tSajaM@*5l@G0r_P7^?1*fz+H)bGA}#qKys7&) z%{itwLmQRdiE~()8_>8C-zv~|DZURF&LUf9JO{qTZ5ZXFvNNoY!KC%^iRI!g)*kG? z$SlayS;5DpWuL}e7Y}eX1+N6#1}L4n)30}TnN>nRcpI60n3$wqg^g_N&t+-Y7?=*q zajVB#fTO%&qeWj^be*!d_>od>o5_}0yGxQOKfdg9Sw0)&uk{jgSkBqqefRh{+r|V^ zH3?|VRttdzS`jIkX(lEg+9bqf+2zHS(kTptPn1`#SZU2IGQ8#;=6EwUjIXG-UJ5|t zGzFZzWTSuv`d?*v#HAA-B^3ek)nm#XmM-3^wrWBo8n^r%w%aPd2fh;Bh**W7CHOm{ zl!Oj^V-$EER$#2Gs3mA4?up1@y_C2B%C4^F4B}ARpp%kMPB0f8yc5(abS`%72pMKA zwn}|=5wj7SjIRsI{`pZJwKL}_HXC>{8L({t36Y^2?Fd1bF;4og%0~kVxe>-@%+oG; z#&u!SmE#{ibC8Di0RC|cym=NzJ%puzsZeQ;DW;SE#%-IZvze_p@nLd*IRe+PqCLE> zi;eccz1XT>ZNCQY4>Z6W9UaA-`;~8KM#eS5(_U@z%*?>s=w22LsIxqHYaJtelbZq| zL;7$nf^6(=WxCC%L(jmF)Gk5@v*7XMprhAM{d1wJKZJf)tzbC)uVojA~`L&j-IgGmB znao&-T7c$YXFQ3LZG`+ckipC62$h=S+yts@%#ov#NL<1<{mBh<>;bW;`zp^!pXD5h z(O7=H+z$4ilpmW?m(L33s2WpjYt(z`#oo%`oQUL0WXV!zQgJX5BJgI`ay?uwdE-X< zrE|pq>+kY=k-lCtnUMg=Xzsb*cI0`{a{(Wk|R&raQ9b(-y3#f*c4P@M1nl$64TX3!l&)=Vj$yw7zG z(xv&o;+QEqZD-nyf5tT|CtI5F$lq$*cpI)(>wbI{5ATzre?7$flyhTle2~4HX(yk0 zIes~rT> zmCTKXy>sFQE3>3dy%~3pZ&v+ap2$*1iARya9^ zzwd^Tt%-Ll)n&Qmd&~gwrNhh*Pfu((C3Q}tPt^bFs@^X5X*Mn87SN9=G8Ny>e|d`d zV`k~He^f=La(WtYP#z4Q^m!R?e%6NSi+X;;R9>E0c%UVhq+V_DUE3m3%$lCb97c<_ z#rIE7zb^U2r<6_a7oy!PDozv4SCYv-F7>7{`10qdH~L5mO7R6T^$77 ze+kcbrKdwuq?ZYIdna1}xJgd;f5e+5U{GUh@06GcVkFhy-%;MrWqYJXTE8VFM%kbc zA{_B0=tDMAbyZ)C+m?VzGXM2qYN47>XVMv_DO>ww)iz3Lk%58`*8qr z)S3|O+KY=gA}I-=ZM~lN+fQRSEoO3t>T1xJz9ETU9q(8V6W`hqurMhr%^~D39G;mv z^@H>f8-z9)A*u&^iI7Br%mu~9F$*!i>EYRc5mdy_3yJt81>*$#jz0WWkl0~z`HnX} zLMup|5DGMYSoaczD-wQ(gxVs*K0ZWW{PP(a3VYay|FHUD94J+h4-*foAL7QqH7`Ly zMpSWibZ?N)cOB64Z|6w6(Zl^E4t~^*Yj{}ZK?XXgDUIEEI2Wj-H0YL?1T-LYr6(Wd zDz&zRZyjzmUr?hWb|1dsZvT3Fh^#;C(2=7+JW^M{ZY_(ptM5F7+c+hkW1ySDh$tiU zJb#St!#RZ<7z1hdM3R9Fs@=^yxCnXF^mp$+Q7FJrtcggo^4&$MO zx>MIB~OZEU|y+5UHoC30*G49uWXP*jUOpd8rLnjG-d39&mQay}0H zt6xV>e3O9vV41;+i&h%r!SWiw;7CLB7+g<;wZwT3SNFEq3BTSfV@$15%Uu2tq<$1+ z9B*Jth60WIW)e%HPs5cdyr zSsHZy8gzv#vH=igLb0{)VlQ%8QXEv9bXsOD=>=q|WlJC+*h^fyrlD`%>{>Pk>E6z9 zTp2HxuzsJp#C7DbY!P~;{GFiOf%IcQo?r*na$1yc|2h*PArgtCQ+j<mIXVS2q9?fG~4MUg>N< zLDBscJc|&K^{$rZSNPDtsR*DjRDfb&sj)}7=GDe6s<&0ZwI$Rze{yRLVjQ2Kbo;v6 z9chF7AK9vfr`&%1dR$>YPosQ-v+sq*GtOLVqk$5e?t26Eac){C@NoW?N!$b=E`4~h z8Bd|neP=%v&$+_2jv^Kp2Fm*rMAXVR|xb2vRvs z!rAsTO)j3oBTqA%s6IH+Gm=@8u|Dh|@CcH3J?${xok~c*;NN}a( zlAR_(n~ir)g4kB`^d(2%^FS0Bk1S+cmBy3%N|O{ERzNGz*Ph!&2|w!i<^&+xT|H zZH$XhS{aL!LxW5LTv6X^Ft+S}{kRKhOQc&n`cV|u9G3Z=RW82JXyfy!sbVt->?SH$ zhiC`)^xe!b>bVv|gh1$QszTyu9MfxbF?00c=lKGmIS6}N$B7<++b|ww=g_-kTIX1|C!Rk z(c_tJl_igWzn_G#KJz#a*62LD$vhM>xeWy$NLW?#4X7sxoQ4wuniwK=MSYx+a6;QC zReC#MxZ|Ib%EWT!4s^z@9buDv%?7P!S?mXIyH2Mk%)@U3G}J%gPhtU z$x2jxkS-=hmR)B115A)6sVuqJQbjOB=D-Y1hE&?DjckYoi-Ef-6{$eH*Sqk>BiS` zNbkD@UgJy-*`9H;zAA4>{Azg&kWUFNtI_b!_cE1J!xHJiRRshDO|+vAVZmWB(=htk zL7v_b%T{Qq@f0+jI_XfEyx)Jn>;s6fBcp!&_|bo+Y4_C*^U3v`L$fr_4sH zGWEiHAj^c#BBtk_Ob#d>D&DKcrY$|DJ$gMI{=Q5(XBb9Xfxkwa>@BCQHdu!wLl7Yg zFxLP=iFUdyIN&qJ3KiEb@OnY&wk$sF$$lD9bavYRsYgIS4A?LH_<0@Ye4oFXOcPTF z8qnq(sT`USijcCK zX`J2ny5q|^pg%GzQ<{S028rn29Mu2_a^o(qTu1M#!`fCuSQs50rhSVCdW55Ads4hW%(*e*No)8Zpl5^v@`@yT{wJ}3s`RZ{* z1VJ!)0fRT-)CbYOk8L5y>*`bZQ?B6wLhA6$nw0|`to{W$lXtLwQ#$-uLM2@`4XwfD zPxnjnzDGiLGHe2rwCe!t*m~HXH`3JE37G=U8N_}!AopuwpfE~LF6W~UjuJ#q z=j)nPpqPyO_RpnD?QuM!eGy$2jKxIT%oOVC>V;g*H>w;*N`mUlK39<-6ll!4H6nm- z@7Jd7e>JIfo7Ar!SF_K*j_riuP+u;%<&FdHhH`&Q!(Ox8_9VD9`mXZn4&28cMk6?x zS3|*L)cwWgYr7Mv+uwRPsVAHp$4QSxqJcAaRFQL|-tRqHh~z*rdut3w`=v#&4hb$? zkOF4GG>v?N=*_o}NBQ*>70hPiSJSAFn;3k3<*vN~MgH|kr!AnAvcl^wk;CEfr0rLRk;c)zMUOJA-Z;z%y z_U}noLr|GF!Y>@6GH=2x^EBPOLxR2sFd{If{tn>9>+kz0v9syaxN97aVS~|6jfa zTXY;O3@|SAb%AW&iQcRy1G`Z05GR0|dl3*XAL7wM)f(}Cci6xFf^su(H;|zkQo4DpC5lCekXh$Tj>%^dAa-~c<1iFf%(T9elps)<9W3ay9fy?oY*su> zPDj1}n+R+Q=9jD(Xk&^D5rw#%Y3QKVb;M!8srNsdi6U49z<`J7k{b&nv^@?;zRYcU z-OK~e$5RumvO~wd4Yz*TUaAUL>~?YvdNo{btHR{4nOIFwy%kI*APu;w*O2e=A|N0@ z)cO|XmETx^-1aX9ZPi14qc17)<>UCp0bZ8`HQ;&&Rqh;;k|659+iNgL*^_m5&`TT} z$%j0OeN+ZLpx423A~V!}eN)^6uxBZAtF<=lJtuH)8jxt$avGE@5`r~rHjs4#L{_W) z3ytfm09LsVXtGBeF+vD#p6L0HhnHD5Ewx=D{ObT=aLl+PtbXvL;olA5MH)a^?}=`J zP&6WT1&_!c29=PIlSS#rVdA}#aE(L5?t)HP{`aCKj+O%kYwa0sxG)HA zL=yq>{)>GYGouy{mqR0K{^AKjj(kc)ElTNrr*$aNZbEl260n{^Po5m?chiqq)8Yq* zC?VT-fD-xyz}L(W`Sxrmtn(r}n}I%5BhDOqZ>_+!TtI8j()?u`~poJ`Mu3#v3NWZg;h7}1n29qTNGmCONkYr3XeI{Vh z}yI{lgSJeR?ai+feszI{RUN^T0WltmU$h|4_*eK0KsC5H!{-anU<>#Mja-TrpPjndERKZLTx7cX%WB zFD`@fO(t#5)_o+~o+8b%+Ie->(dKKj+d~)Hgw_algjq?pB@=Qe0Kko(T2yJjcM9;` zTJdYZ=_7JIA{i8-|%sk6p zelIeh$n0t*&?>DrUfG(e9V)Vr0XBqmz$)J=cbG3otil}DFe^C0q*vv2KDOBRdw0S} zWu{i~!YYrY)^Z8+=}60}%QY{e_VUbb8WrJCsg>ax{DvR=pZPMscADOzZKC9N*~fvj z#sJ9ShJN1*Ic73nFugGDUpI-F!q=a^-8N^nGgTm@e*x+07pMOaR>%Ikl=)V`);xj{_3W?;wDTuY{Mg6({m4I$5N`L6P~Jm8gh z@mXFP2>A|39e09waXK#vI6tx@)3Wl-eDs7VhASECQeQXZpJz>(U45Nbg86vsS2H`w z7Pzv2E{}Ww;oduYR*-S`m_~a-rKPj0Kj~l9OEFG01=(h9u4DR~|sCJJ4 z+nMV62%)aEMv%={m*gh7+#Qwen+DM`=l1?+l5v4>>=nk-{XC3X`+4)B70U6qu;(5; zmFY}EWBpvdaI>5npcya37v8t%KRtt`%%f>1?0f>B9UqW*S{ z#x04*HZJ?SE82gGKK(eD{xsF*X+1f}>9uUPXyfti;Ux;4oBn_-rQXg{o7Cy$1c?{?eDJgcf zn$K_o)K8|AF41LuF7&zMj;dI0D)?=63|Bt-)}7@NIfouNL}fGqVP=0SX#P-`$%8PP z@nt=V7G|k1u#D6uyF5&I*>5tU5ErK1tI2x*v#dWbmxeqP_hiALLLSMeOJvr?L_vKA zKzByDuq5}R5)|e&N_2RlJAx^#fQ2=qukG6Hvh($U_)$=6>RM_OcxTodN}knChP#(P zoDR?2;9UH~y)p&_@?v6YM_-&akToa|(7FRY4kV3v zu{Risxp4u3&0}CSy4|Qw)we#+-qYhuL(A3mKD=&{z3BxXZ9VR==EZBDZGEt>q`GcB z8KA?z?^i2P3K(Zeq}mLA zxH~y&Di?L(GL2S(cU_kVh8udU;FA>LCZvo%)raOLyn_XU+4stq^>8o|C5}epRzTf? z(4DK`4^<()0~99GS4Ie-h}e^B;Vd#LY4XWX6UwVR8d4w>*Jk84C<@D-sRLfZf+pX2 zbKw>QjE!!GP-p`Imn8U(`(J3pEeCavwkHVq!~|5_O^admt1o_ECeaJ@49MZkL(rOS zbPHeRv%`;1xOR@>228pYI(Qs@PZv zYe29N4bLM@kCx}Di$wh@Xy}DJ6Aq?W%Jhyn9=X;irWbguDOBAYzJa_q4F=9IK0Eol zh{W6f12kPz*k$RxWLky9fTmb(XVEIC!=#-0h}v8#$76p>(jUmSTDlwLVn6CE6q%}+ z0%a$?jmC_%O4pE0`0XYsM#IJa7EwQc051mSe60(l%;R2_R&R;tcM5BXVi0}S1y#Ys zrZtWA_%W-aRq5a)*kPcCL**+-^FJb0ym@`C%-_EpL0UlkOu@sea zDMO726NkdaD1P~7f8mXhiwPM^jUhjS^SmYs8*Sv5J!kgi`2w4Z3xt}``#No z828*?56I9}1+L!c25ZQVQKot(Yn-_uTdp5JxLgEiAx$4FyjD`%zvz=0L3qVYQ|05J z9hBgCAzD6$mTMmo?@{|_YqAVh3X1!X0arjnz~w&C$+ACI`03_#cj-c^ z_^U##pQYnkf+%wzU6RR#RN9_FNyap2r?^hG|D{%HAt4}fn7a#TPgtYU&&4$%V0J(H z&MOY9L~rE>-r!R;`tmlZPKifaCX9+6*r=aroSiT6^gMEr$Myu&ySU}vwg&*SZ2P=H?Pr*0V10MkH24%R6_dG@@5|NDC5r=PIHeR=(%p#J!C*d>BtBXWi_1(9`^H`0p z-OOD(__gvBnBQ4W>I09HY)7`8j`?~l>&Jj+=PswHGsu#thid3B1SY3yJcEP;Pdwmo zo$1*=;R*ucJn|b&|aLN3^M>9jZ`4g(AI`x`-#W~O|M?S3)-+YiW zn+EaU2b<6AzfQe)vnPcnon7bN%+qWlQK1_bn~Y3Oe|rn5Cxg}IQOyx@32fd#r+Ba6 zii6|9zJP9pqf&}w4wJbuQfVvKDfQedhWxU7T1NK)Wtj}-d8Rg#e$5lnTa8WDr@m04 z-i(-wPB5}ewivfei|#XIGVyN z79u>k+LaActLiyAa=;XNeIS@GMIlN}Zm-np;Ju|_aG#<*L0_K00mhVJAbb9doTs^+O=~l^Pe^#@A51}jN}shdUy1g z1IFSs`Y#lV@5jqnM1L`UBSSOp2~8#aq4<^xHIFF5#IwYL{O3?0jyp2&){>Nf{J&cU z5B#6CL|CTQQ^6w-F#6!2aW&IgfRLP1v2 zkwo-$$>&%Ib)s+`;%Gf61T7QSxH&F#b+%LCG!9uPrY|v9$?n0B!<7dWuTJA!MkT8P z#vq)};d1iBTOnacW_8w14i=8Bi+8syO4TZWWLD^Fnumqe_rN}4_}hR(y7aH zRRHopz*B?cX7FO&hsu&YrB*`H0E*;xuo!Cu z#QV*sr?FD9`*-Jo*cYdNYUVn40*K8H7a&R&;==w>^Wvsq#6$0{bFe7yy%SMKzjOy# zJ1kZS?aF=|UmJ1!@u>YjpNw5FWFj}jxS?XsZX&B<7)_Zk8)(d2__jfmDw2oxc@0`B zpf*4mvH><9yk$c_t`+G+1D3*J2OmQR$*%gm6v?iGgPQ}3gw5A^b6J!@J?9kyMreDP ze;+7b%tq1zc^87nhMIwU2#`$jkRqH4_`9&mN zryU3xZl@qvw6E>a?6LMs!uYanv$&iZz(TVc^)Tu&obudXzo#CV2iedKaRWBW%$MVns!NCg#b`> z$zS{{$neevJfu9!19yzk!xss{rr`Od1hm8SEy6&+CydQn546phmLr4VOxpG_d{#BP zCDPN<>l;JrCN zrk#G`8j!HAy)@_P+_Z6WKj?QoXmrZcDVGME%DufDw@MSEoy4K(pAw}qp#2z4d^pMG z(#L4pTM-D+z`lxm%?d)zS-sgg)+W2ZY`R|8yV<5hCDTju} z#@4FxhpA9*YjsLRK{Gg-ZJM3O@y9Dhy`m;9pJ!(FbfAk;X6jWxvl{{Mwb2jlrz!Pr zn=)Ir)5aSyy=-a?ad3D0@qgWZ{{o=1+MKDHQy zeIsf|tFVrqI4^wl`^hu;tD`TuP?wEVJkK-4T5nm$k{OKHYg2AHZ=YKXWKUBl{Sbmn zDbcK=AY`#O00J%*qDh(eQfBq$IURxISYa7zwHFlJNU#?G%*S@lc?M2SHRhU(Dx{(o z&yUYc>oJ_=LuU(1EDltpqiWur4dtk7d9a_LT(hn$nVtM#WE)F4-=KbK2oDdB>iYHT zy@qT<@`_J|vBI7_c@p-0u{S&Y+!fB-Gke$dLCKEYosEtTyu26m$OFn^l5W}CzO)C2 zYNpOSUir6zR-=j6iTt`0{p7zpe1==t^L*=3aRYx;|26Th*0taf6GIH@*qN#HBjjrC zW+qFz_GdWea^K&Jt(wh^1!aSwH%pJ^O?97WMXblSeAg}8EvI=r9_w+>-p|ET>C}BC zkHMcWw=C9W&W>rM-0?$)yblb@RJHa6wW#jcdkjJ@uIm%0S3h8O#>yvu&#|Oen5hLS z*7=ca^=H=&8)_JUhdhF%HjV~zo(d|Oz`1H}mre+t%3sY}lKThlXMYHuF6;$0OapK4q zc_VreT%&WQa_(Ryu)W(&7OhN>j<`k*1s?K6av*Ff1H{~6#L=2pUnqaoA&)$DFVNEb zD&)h56YGC_>DtQ0ey_#tD$AMc)CZr2yhIl8xFtl<@!JeuEko`i(nZKsO< zqT;~Ul}2r8;LlXaRq}|`^ew*g-nBg46n~M`IRP=G#XGNc%NGDCunb^r_&F*H!iMHt6& zt45l`m3)hb;%rotomEXCwbFH~x4&8Yw4n8Y+v&eyhVn6K5+i8Eqsk)kh&+yRup?;Fd-3S(S3Ffl#W17|X zbh9vp91q;)zpR{$zTpzo^TtCaD{($rkJ_I&f^WG@rRL>NK1#vL2VI7mIGouyk56B3VOW#7dR>{}Iba=1?Dha7*Iuq! zt99T6rmz|}yV2Zr0HOGAm^k;TT3f$GNdb@sgmEJet=Khxt|@=MF4-B@#h&`ek?kO7 zu68gt+v}wr=YubbXNef809RIAqU^dAk=NDwfc~ZJ7wyYt89ixB_>lp5O8r>?k(o6D z>Do+JsCqYdu-JH}%_^sOL2Ae^B6?s#)F;J$DW*Ct!bOy}eD-b}<(#=QOE+^KE8E zeYJ|}L0vtMJ*>sfnmzlVb*DACfwvP}i?!ynp9$4<$YF<% zd_XU7MMe@tf$_I54!H-w%wm@5u_iYg_pL+MWvXheqfjI!s`61JFzr(7yX-6lw*P$c zHP=(tCw*=6_B}XzWEJ~qw`|=y1vW=1fmtd9O4h`0ytMf`8j)`((F$Y`If;AUt1(ua zD1%`VT4&n3s&}&cNbT;I^_I7`cBQV#u$gwzcI7y&-R^8{l4Th#vPs5hNFZE#Ug*>D zW+?jFh<{x3!H>{6xu@-RJwmm)w>om~o0=GXn0BQT?rhuIPy3e?EcTP}tM21Y<^ z{#qMjA<`Qd9C)15?Ulr1O$N!dc${CBZ-JMmz-mlS#mAtJ)92>Rn>=n*n<%l5I_-YF zJVG8BOz1U_`ZlEjXJ4ZiKWYbFeFI`-RXTE(;?E&+)zeex?0JJNLsd_wg@$ON<9J$={qp9KJS7{V41R6C#c6ghZ93}J(l;;$Y-3E?W_3}Vns2sk{GQNP=# zgQoE;VD9D5jT*hEW?Vlb=cDsK)TY6G*tI8jnD5}ksk@tKx+(7 z-sMF-f(Kc_tmIH72BcLJ1N5aTY`Xlfr(YcphNtXnsP=imQ_8gA#2wi%*?>Dd6)>Tp zkDOkT{;M_r-wwW$)6ef?EFOCsQFfw=im!Csw+Iu)+9LkdKw@a1yOIRaW2BoQBA(|1 zI*%f<_nirh9Y0I^tH;MvJPzEOxjD=hTUlC~C{W+dVKxNLVr=A8sVx2)4iBVUe{7V z;_%OeU;WRwo;O%wLS6oq10twTM$|XLj(z!$o&Y1E4-ef<4a+%>bR7oB3Vj~U!T=TM zQHbQ^#M+$xYZmtr!Ojw4gl;A16~|Fc69k1LVgnD?z9p5uUXI9Gq7-Es5Q~ABqtg}txwNRSWm{)VlY-*U$K$x zbU07D;xIn?*P3}z|N1jUt}tv2i_{eV^XLfs)^nj}WDTZDlO>dvysuT4xAoV`*A!qr zUhUt1s_B98_vpgHM&yB!=1T%(NQALZ9K&mGdcQa9k7}lH0_;!Y_`VnC7rluSqJjl? z-#G*9GQDsg@9!Z$ax{?uj?LzR>-0!h9+N_!r;h|{<09Q!MNMo?f|o{n>_gCa3Vw&eG~_g}*f&7nhj$+Ku3&xs0tB>9$~ z2w4SJXW2LqjHoH@K!mJi6aHaC(3?X5Ub&okgFzg=4kH^PQo2wc+Vbu(T)<|$ zsDh|Ke}3@>R)tew!lCsM3j6T#`&A9pAjiSFo*oXN{c8t%db&VshE>efkVRF7EO4fX zd-2dQ&*RV*QVou@=cv_o_@RdnvvyH{1@+1%O4wKYPp0!xwKnzRY? zTAtpQLjWzb4uB=3eXX4r>G)|_+B|RX%MMUJ7WLVW1l$LezDqr!y40OJuOv5ZasLtm zvv8J84xt|VgA3W<*>sCHq0754bghL5)4NI}N}?oipoJ$??-Tw?HW@+`f<}`Ohd{jW|M1bmaunM$cO0l++g2#6jj;5@sZUaIKXk z{Z?#WZc1zG8>#Q3RxMVwxlxz$-Y__f*hRSt+QpdQ+_F)vb$6SdO_ebQh;4ykBlecl z02Hsy1UHa$aaPnVsELpQ;bKkqL@vuFi^80|_t?Ore<03Wnd9&E?Ag5yTpi@(KAg&T zn($&*0@T-i%ccX-(Eb{3a?I z8fjr+;b$yAIOU6dQMbmy?TfZp6sE}HQ{b#9OWq>woexB4q ztzBAJC_G8hZMeun$%J>9cyDrq43w?lkg&RzG3r%G{ahNNjnc98>!~cSSzj7bkOnHj zzE(EOeD`hB{BvY%R9iKi7K74Y#wiQT4q44Md2NoqFm82^go<8Lknfw~v^LWP>Lea1 zX`Jg4fM%!nHfftS$J}Va*%Gdt+7T6NS#j$b&J}VX^p&o$94fKsDx6&`uzr7RvD30@ zg@$Ck?@lIErpVfqkNxT0wmWkvn#(G0V>U|P-Fw}=Fj&WBskqN$v!~5{?vhm%GlSYL z1=Jymz!BR1Qux8hnvh&A2*c^0ITPkZ=8WjSowJjeGp(`JF3pC)#o_6RP7)k*P7BQ? zYVW!|-o2ahxlecFSMJTO$(o&1*Yec@=XSGbjuk_OHmzdkTrV%L6z9A5$RnQ_6yEC~ z7?J-G?=ULADVy_iDIs*p!!l~9o%1PxvO*zuy6Kx{VT$S^C)>TYFH@UXB)gI8^J{7R z`;Ic@%N2`LKPEn|Zp|jPHsaGtZ!Fx%S>&`Dq*B*+OWjCJbX}mwz&;xZ*3+$t58lQj z+haN7GCm2jQ2UxPQ~mqB^8N=l7p`1kS)1vIpplEw+MNH<)0Qyq#uU>!Tt23)w&<}l z@_#)r)0V8o_*ue_kKqvzgzt_6-m&G!T~XsvoV8SdGH2?&)bushuX6aVm#MZ<@JKWV zYRgH3=SNv!Gje;w2)Lzfr{-3sEOQ2n&6=8Dq)&B{@x6G{n|s9W%g|-P_3=G6lMYhN z{noRYO37&(g#ho7eyY7F6BVT&I$AwewErzNidSnyf3eRh#GjCXMu>%+{3c+q3caO$ zBbYcXMgGW$CKHg2uBT@0Q1j~q)>_1DT@~u`)k>K7fe5}$H$MAs*KdA$u+{p2){%F$ z=o?4UXB?rn7oF+yFDjQS7;yfRTpx~#>U@k$Gbu4Kv8*Fm_d`YcJiq|fTpVU}xz818uiL)$lW#HjTkbLKqA~@< z7i2-L0jYtcclRMTipGeKJ}D_l8QA|x1!Sz!@c)=8==PF<&=tf)ZBq|K{+Id}AZ~_t z!EkigmcFd;9u<&_)xha3OhOVZFLun4+=e|TxX7P9d?x=C_8iOcHX&Zi%G}U_)i>ce znuQH#^MMV58PXW?-Al~-nUOkJc0m!?BNRXCiTPS&;wz;zG+yrRZQjhhy@E%to)<@` zkxFLVo>*(zQPqWu_;%X+yejIG1RlkHNT_zEtz~gAF5Kt%5A{)a2F5x1lFdn!oGygM z#;LO0LoA{)#C+Lo$&Hs$*L5oI#VSVpDP)Ql*Q@&Wde4dGBt|k8S44N*=qQdKUmmGU zmDtGYdUaEDYc>1Li&AXY@%^2t%I`IDga!kheQ(WHChJ$1zpxe<)Sum2@22lsPjI0E z_oOrdi&?zQ4X4%g%kS^c_JGI4Xf@>)o87`}SJKBdHt+>r9*ONI#x<5>1&Br)ojFpiuzUmCoj z{5|c`^oY$@alYt+iw34=df&chV!Jbb)oH?;ICp46Cl5#;wGViVY1IZztOm=J^2%qf znfB*ZpCjWO-p=nZ-uY=!V7jITK}z37Zf7F3EnDNMCz#A3z2<#RuKF#QOKWA!B+D8{?K9hz2@8>jwL%=}N$A@eyUxST$G8|IWmIm1#&Tz3A{JOqK zJ#RsqF`+OmP1w$(NWN;&DBq{%39fhcyNX>zo&m%xVZVMkBHnHOy`C3cS$3DofkHGl z5$ci1_(##*wKJIKQ3mK*>GBm;gR)+rIWzV}L=fa>Wn$#zMa<37ZH@13PG`TV37==L z34MlTRhXw=X8oAM!nRb$c|NtPz?h+Y|JfzvBwqENFX*z)Tf$e+>aRxmbsYZk>ky9g z{g_s-kY*`Ny<^{SD9A9$)$G^HPXBYR)xt_!m5JFzotKBsm^GAN?lB|gT%W^V9xc?K z>O2XIq0A72PZ+zC*F%Oc{qjKJ{^3ooa-ie%U;E&S8sV^$ualEMqel3jkEYkKFo@ol zks>WXnVPO89J1$-Z^E5628SBL?{jA=_ei{k(_(8kO8YE83@JChWt3*#gm@76PtB~L zMAq*QPh?iv(X*-wf0O|@O+aSw0M|n+7I=Ra;iHHcgT1j(M2UR8UE3SkwLj~ z0-Vdnc1EnWU|BFYkUE`3HDMXihim8+(7mTVij@zEQsTsF%ucHpP&0%6*cBJ9%+IS> zxaOf5)Zc&8cX|WwI;we(A3|eROi}$tEZ)e@$Y*|kxlqPoymE%8Y3o{a6%w8yGZ5ke zBB|V@`30(Zwwl7CIgnA;3@j-Rx0?C?(T$*Uag6WmpOkA0z!Ns6Owk>rh1qh6t8*#&hoUs3zf4aVGiOeP9(;1LE9p{Fi>sVg{Rb~qfODm zV;AqtfBJhC1^M)8P)$YM03S}YuaZ>ZWJrOMtgmkpQEnph))_{NwgdAJq2#>EfsE8+ z9fG%_IXbRX!T%hCsC6R+W>-Be%J3e~h5@M2BAM|a>!0c5pfyN+1j|5^OVUpg$n0gcgr=?J<{$Pm}4Ie|;@O zTpb&UM~?jWw}AHi9ntOeW43#=NB;HG|7_y;zXmHrYYZ4L4afIys-)n#iHgS3Rb`BZ* z?}yD}{f4@h4)GO1L7B8!s>f$Ho=#O@lat7oA3VRXWiK!m|6*Yw_+fRSeaLzlSI?EG zhL}GOI(+00aMQLLUSmcJ1*^yN3X-?h^LO1DzOR`)e*2oDeH63P+E30$vL#eyKj+#VcRhckX)B`e!qp69OD zecku&Pyxdt^mH=pz7^=V{O-jcybm)yn|i7E}WoGAYWKLh432FRPCf5c-W zcx=nT_Kp~j6o*X8h*knikE>Rr?l}(fi_HEPluG~}HB*xlGn7OI7piqVQY5OJIlWR5 z_>V^y{ts}9$1LI23g5m*{%$7JC(f<*)w$RQ&#g6Y+9 zQ9)y!xwRfkvLzD7)i#qeJ{rb=+wI~EjD=*w0&bh1z`7mj$*paANA{1u$sWD+H_!_! zXVVsy)SJ6?pAXzO(A(|`b_RTO5!?1(dwc$AGa2yvbMG*%=bD*DyvX0frYoRIvqz+~ zdzVC2`L1H(iTzj0wcG|pOdK7RO`)redC1TPMFOTA<#p1`skYooxi;EdTz@rL@5XQN z@{Ny!dp>e*)E0c}OlOFN3`JvXpm@fJS$MQim-Rn8kl6HjF%+Kq7{03}UboV-g<@k_= z&L`^xKBi_hj24+kOWu$y(R=+vCF4q+TSs#Qx<9NDm#6}aUmg_9U(R-Q%)1wPRfzAE zGzjXUWMly&C9Cf2cY?4`~oxjMn=|OlNA3Z z2R)KnI(b&PweU6b#Q8c9&y{op{KJC%ibTJpJ6}F6F(6|gP5S=re%~IWtVsot2^VqV zmk36fm_#3Zgh6cMxS!q3n6%PvhK@sk?s~Eo$jowj#+&FWxsQo!!|p~<9bN&Ybb)?(YBSplyB)QiU>Wp|R#v#UEi_&uYNiQF#$M0pb6zR>MR_kR zPbfuNUHAiXf5}a}2#%<=f6>B07r+c-Qx}({xj_oN1*{hI&0?ElB&wWs_$UsNvG3Jj8+>^O4;#fYDa~q|1)l1qlNNxO3+#9~ki;JDHeSd?48vlJ)P0CV zBqC|OAk#mgk=hKK97!kc*!7$*8~p8qMPD}GnTn!_OM2@gBSOSmA$Gv2&>+KfXznae zoaH>q@d8Q@1?e;Ag|}Z^ujCu1PRu=?4qYNYUe-kjMWTApP= zlwjLUw!Gnyo$Cdu3HOhNxo1<_Ava&zJ^<-G{4%t=Jdz$n#`PjTlDE1$jf;}R;B+?Y z9(*n)KHt2{5~K3NHEU8>=@sO{b`0nUWEr?&6Dgej6#A&=%>#N@6x>vO_3H(8n<##_ z8PVxbN4}9zN2>WdjM{ZXJlj0&4T9~BvB!dHlq3%b1U-PVpSb!SP9<{_pv; zO~W}(`wi|oZ&y#4=!F1Y+haB2#OrZlaK)6F2)=zG&YtvRhX&1uIPbk2n}cEZi}`n& zqUXMZcUxeSy|Ll~tXCZjxpmTwX*rm#rNuCHH!VqqxMz@a_MJ{MJAabS&hKWGB}}_e zXrG|UYT`LC_R?W4>@oGJBg{aXRh3ZuCbJv5ci@wd^$fqNPpfXB|Dju^qE2cPX;ZYx zbcXbhuA$sQtf!Qc-n*JBMsjXh;}@zqO_r_=&0pEx?#}nKTj74OHCg5MTN~}|a2;AL z-`Qz5jdq3Z=E?kTxQ2sfq=UtnE9f<9=9}yp;R@|0=ZqFsW>p|kqnnC zsQ6NgUDZta`<@q(`iw(V{>4w?ZptWfH)V}hZRxz#q~I;3qX!_G$j{RhE3JD_h%tkz z(;5YvetT5CQ~|U3kn`~H#>_Xx-n`D_Fx@B1v7Tw~`$+rL!*rf7XW9rqGU$542$`ku zU{sS&_2VDX69PI>1m+3MQmza-o=80#$rf%AdUF5GZ?X$j7s;LHcuFmidUoPu90EfU zzJ#A8rpa?vv660(gW!YcKro_5{N^Y`#@CZfs!8UL=XhMd$L3z>x1~q7XfrVO>j>UT zJup?eVMN8jJ$Kj4vA#fm(>6{$U+3i=@w5l~(Yz45urEO>p>n&f!Qjui!ARrf=0dAe zzd|DAoz=Y9pf?Fu%Ae`bBOua<7B`2CheeK;l4bgy53C2NPdw?aktw?oU&2P9r%!uo zHFvT*`1rs>rp14fN9s-5J?;6N4V0IyY!3Yt2WT~4u(zHhfri<|x5I(DVcsDnbyRlx znLxdMD8+|aM?^nzSH+K~D2Kfh7JxFgf)8H0h)xb|YV!-1k(4s{Y^ zUSNR{BK}?b17jIo`LlK<)ja+CD|=BJG{&V-PLU16qWT+A4}-!59)DAW`5#K$Y$5zx z3?$i6j)$h2S~&1It4p1vQMeAt-1Q{&@k>ibWus`chu8IMpf!T@0|Rw!t(ON&dt%?Z zm|AqyWwi#~YYooKB4CijF$xdJqy@jd`HA$}^wmn!h71W=+mz5+YDzy zxFhS9oAmUDB)idx#Cex2)Q?<*yhT|l-ZOgqhYLV9mc20M?xsWpQnlAk^{j1mw=U$E zx&`%TPVp=fGp`FBBdx2H=w&`CSmiCTx>T~Cb-mgS-6bl+PGvPGQmqiWt0)C?mk>H7 z`@3vh2<8CtX3NN^KP#LX_sXSV8OGO=cvF5G3=uR}Yydr|r6Wlmr|Z!()Z8nayRTy> zcE`anvf#<^E9N_gNBac2pICZ{P0fb)Y!>p}788Zetexs@8r`0z-sII!2>79sc$2?f za)L}@-ZlB0CTyt|TXmwOeLACOdjJ%vB3(U+5cyw+2U z=Fs6^)w2`st=X2xc)Cc3aPV)}gwJ*+B`9+o=~^nv=#iM`%-RL#Z$AqUbD)`n{DdE? zpXIoWmQ``zRg&l#U8C8hnLXW{MifcIF5^JCM%ti6Ls}aTU(VYUxI!{GY1oe9gSEv0 zo9}2Jnx^9>h9|;G;?+!+*!vgrZ?nw^^C^rVszidP0&Y2a*iV{k!XK6-6gLv7v88V~ zrA|&cq0_yo`Qh%QV4`=yH^TJvFT@-yta8%sQe$81Oc~}*f15o8=Z+s(#Qw;?4GY5x zBLPZaHj;ELAL+QquL^hYCO5Oiql{3Pq-ZI*Fw|FHz(7*g9^h8Y6K z)N&Ii?vY4Y^mtWnS;>P156~q?ArQHZPLAOd5y~F;8!z)=YHicy7TAR}C*hL2 zsdu<;TldKQj*8EourA@zlFAe5L9me-tCyO^u_-tQ!CW}4(m^oqD zRKMKn$^3Aju*J3>q`09cW~?akiT^3;g1vHq4d`WP+DrD1m0aW+H7aIn;>uvOp_FBc z5VymDh;Yk~F%>*rVsv^*KdC;RM3P3$c_@lKIxka6dt$a$S(t;kO~mpgkMg zroyQ-uHs7O22|;(QxPSjZFf6v82m>1E>Xgym3>cVwYf!)d4AMzXt1r!6dC(c{pfrq zHMo6ca>U8iC$43RKaq^RASkkd?jM%mA|Cm(K97(AB9ae2c^I>BPp$n3b;4=mvQ3Ht zjVmZLZA~m=*_1+-w!ocLo*yQqT)+lfbzUVBZM zlsQNmYo--~+PuG{ZNk342Ha_+E>UHTh*EP)4ao7RC3m}_D=OWs3!G2NQ*#@4Dz|)x zLAt=uW{+CiUOXm=vwB2a8hfZr?>b8IWMFP@*E1r|9=$!VlUbFTV0G;=$PQZtTkZMgfj2`po{ z6-7~zme5fPi4oFQcY_4wJ<}Z-1jtY(iuH)2A<_N!L|&_nJn8Rt~Oj~l;Ro0$w{JvA#cNmRMYR~rbWw1!mYN!QQW?-{A@ z#}PjD71xZL)N@?vwhruc9?<}71v@z`hJAL<`A|a*-R?1C5|VRG$;G{ltYrCe=Ld*( zi3G1cTVTe{wX@z=-MKoiFW6^vEORIZ~_)Qn=Ks5O~BM*9-rraBW3HnYM z`z(VAAjFurZ-EP|ErOk)M}D7g;l@7@IkNtD0P3F%bTs0P$vufHuIxQ;gzs;~V%>=z zW@}VNU50TI2zbl;S&hv)XKcfUlD%mxP8{p3n%^tO-4rkc_j$4mdT~P!t~5AN7ebyi ztwB6Vu@%ycBo;u>6b~U|{}4*VHz((NYRt?i?AT<_)gmt2^(Mk0i<-rrFx;n zDaw(8d#RkHDukKVGs5yWu$s)XJ&q`R2@D1naiKeGFOV$X9S8szP*3?I>l!GBR(b>tv@M$UqA)A+{v)8EfBn z#F}ce#k5=ZfF=jDVs~X+2!goMUCC3`buqF39p?|%okXIGN-1NnnJ&Tj@@O(j2|es3 zNxb+MM?YD2(!Fq9@CkN>5H;?kA1U3+)xS7JpDeB|ogs0i9H(FMTgG-qkMNB_(z+cC zpNNd?i*I=&PLCgY2x|ET1$kWSazV)n&iij`3{NTtWqet4L&@bsR3x0E>zf*BQoXR0 zuc#sAc_ZsKUG={y{-iXwYx_FlJ^52RM5vm*f2vr;e8_q(w(fK&flLAFHF#W`QBRK` ze(lu4Ay@-)h z1Ao773aJ!qr|r?{d8PB0OgI>Zk3NT^O3vkKOYL3(J=pcjJ2M1Lp^f&ZK-6%yK0*GS z&iqNaW*Bjb60vTLhU{eyF$uOMbf9NMjlVl=RWEa_(!#m9pcC^9*Z(Fb3T4qXa#9`}6#60x5mES0k`p8)OEw*mdCoIkJ#JwkDe%$_^ z_Fl0hZgvkG1f)l`!b9$y>GzI*cw}lin+EDScX5kVv$vXhg-lAIJh*Ad7=kh|)6yf= zO{X7K-S)t5SW+?0S&mY5{P~A1#JeG|>eAKU0}L?ld^0*rprrBg(IFP5^S6Y4>aUa% zuL<|2Km1-&hj;}aT| z?)K;;yZl$!((vxwP@-;kn}W}=x4-6{30l_`DDGe84f>4AgyfmNBQ)Q8Y&wXZ%*@NX zm>ko&JSk{E^T3NV^5#jJ6H8&Ic7ka<_^QC#M;CTjbN?|do9+YFn@Gu$d7w;V>xP^c zI-;gajp14QgghugKib|uD%w~2?Q0M;9=#Bx5(fXctm_-yekBd$YGqqci{CE|CsYcP4X5rrdMhK#l`O<_W~ckAO^kJhZ<13G4i zXXgK-CT0bc0R*+7wdcfpt~eAK`!t-dJ(f$It3%j+Fhg1-qieWPzCf{0)>pc@T54!g zjJ1A6!4E>HLoh%R=j>g1go=0d>#A;Z+y0G4eT@gBH@Pt0STHLL^@O{=v=cu%}O^ zqpnJ=dR+M*CydnL zE6~^mJT38;ipsxLxj(7$|NpCUCWk0B@_-@hg1(+R56Hlpxs!ei)QA@BrmT?bU~rWA zU?9^U1=ZgJYndtk2f_{pHmi!Q7vJ}B;nD$f#qpZXWG$ok{9IquvGIGUlY5P2(z0Oy zSIOh;&}@en=FIq&bNMD>>Iw4Ooa%fQW3}`zuHrnvhy~8Lbt|>+yhLkZd~eG*-lzOo znJS;EiQpf~Qi~q7qy9Rm*JY*cLvD zf`t5e)xw6}B$4=iThht3-glw6Bt-GR&hrLLOU?qjT`RnD{3{Iq3d4Ur-~TCLFko}p z(#%!RMpXSR6AV74c%b?4evonh^dIJG6W?WjnUU+9`nL&CNs_&0eAs_Q85&f8BLW1h z@r^q#L3qN5D${ZVV3!*-fgkc-TTh<5jX(dyZ2(5|KpAoE{Ia3|v198(q{8{NS^(T? ziPmfGk4~#U4f{I4eRee-*5v^%`Go)o5?M4Oh47phE`V<1YP+EO=+}E$1Q<2owuEh| zb7Ol0Pt=k8N`C%j1K_y%^g-%><$}R zY7lBKFB!O5h8*mWIivYonU-Y?@8^728Y@DnZ?$|q$Q`oBEATwfGPYIf`|vhi-+~zd z8E+#vS3M}688?Z1$OEJmmxCW{U)y;>=YPKheac)}`2v0W%}p*2?iy##+G6d2SAxu9 zt_OnxiaX25>`Y_#+6sEDgynNYgoBj>q24A-Q2$R~a0Ht`G6D+@kl}TT8)A*Cx|wvB8T_YP{xq2JDL7Ik;=;Ia8KC zUHgN#FX!zXFfA=nWg+&qxA`_dy)55|^Rk%UgCNV+a@0`-{sjySmTS&I{VY(G`jDz{ zeg1(xy)9mjfxX-+?{AB&#_$_a$%8T*q{Ck!)?6ba>At)JEyW5_QXfQ7mCXh^ZEtJr zw+nBw=}0ak&gAj~#q-q?kF#rfPeCuOPFXD=N2f*TW_Ly=>9g5SAR)t_Rutq&pDezr$v#gTuZ6# z$TXh6<$%z3`{(7YX}XN1sB-IpItefMvn9CPHPE7gp9ify1&ealyM6IfMYQv0#vea^ zxJFJQ%Td)TvXNh(<)KOf7GGkeM%CU+hPwM&uD6| zJ9}zZ4OUTRGpbI_ zyU)|a?aPiUTq0Y<8tMrM3H3HqV_(n(vPmC$rT_z4^NV{|Jlf%3;=c_UOv5Q^?Q;*) z4mpe~<$b+2I7GZQ;sd3hD@6IN$2nV_-Mez_d4EK(bFQBLQ}0j%A0H*3s-;(8mXw%8 z(?~+A%VDwc{ixC9G+HK6QI2kI^Pj0i%ml0tSb+EU2v}tSg9?x{?(Zk3Ijl6JB)ry@ zz1j|kF8zLG5gK%wG%x6wgrLnzWJ}Q!wpOZTSTC?-X95Jd*mj#aIu8pW*{;pcsB=i^ z%;{Aqcj6xWNR^~=NE!=GO!3`GD9{sU^eAur%F)LJ4@$!FVVHw71dW2C{db4Gw&tcU zm#&MKDtNYK*UzmoUk-1zZ)+q+)@u0STH)HTc%lUHlnG<(y*!1ach4ls<8Wog3CE?_ z{j)CiR#-a=c31#L58A?!@r%PI3tPyz{RA~&e`Mt4PEuhF(*OFE9{mT}l+k4G2@A$Fy%Ch4voSyF4 z5i@qb7rs0KaIc;O8lGf`9)4+kXVawIcD$_5s-0gmZdvtp!h_fJD@J`Rv)yB3HafQs zYe#(TS^^id!za$8ni6bBaC>RT>W}b@j4wsO4)c}zzB|-ri25c~8g%;;beb2|&E28~ z@}5wN=98iGrMH&MPd@`Mrloiau+R=$?v{%}TO7YujBcc@ZSKMQpNNfYeX3Z+rOm@x zK+p4=J+cE{5wf=a7E=>a$?U~nf%sOeQPSk@Qwr_r>D7BOUxbQBSM%SjxlAh3V`qoh zUlDY#S)FQCA>3VG9!=A4BHeAAX~7i3FMlP0BGAazA!eB7wH>_>7&SqcfW=*c8O9&0-* zAPeo;NhRp0Kn;k9C{wLHI0@6#LSJjInWQ`-7H@YKXe)934rSO1J`ky#4Shocv$H;D zfd8$P*c!llg-VQu@D187KxghBG+&q6j*f+m!Or#@dAFx>Lo20WUNSoh>olV#CI^GH zyoh66V6@A4@b)ph6(;$8vf!@ZtZp;RxW`zvDRK7!$>TQO&S=`yyjkT>r?1-yW%tC) z=QAv>n16e|Cy4P3U}FcDCRKJHGJ7%au1YA@IZUUSMtB%Se&zM=z<~>M-Nv{oka_ZY z3tC6YVvDXQt?|=HnNp|9Q(Ox{VrKGfVO~vlttKE<46LZ?IccyFo z$|=k|9zIcSyV3Lj%sfnV~%PUbhI^y}!w&-oNs5bUn{8XgyI$ z|19w$^J+CM?~$y4i?I98h_`g(^TeM?GuBy4U!${6qbDqNu8H)^2^j}K#kZkBv4fu% zPTm?KeazFw`PV!{<_fX5wug_~UPPsN8QUZDqAu{A8O;i3ef){|8EZKk7CkUuVf3Ch z;&6Dfvk=Y1GXE*Az7O6zJgpS|btxZYU;Fm%6pNN*t@*@V?3`bPfZ$pK?#P#_vBDs2 zNFFhQ53t+uF1f_D3g21N;f!}?`H39(h;>r}aAs#Etn5-3f_JVw&oKU4F3{csHEGi1 zrJ*q!PHVn5t}El16`;GLSjvveoYYgPpFxopoVAK|xNCkK_`n3W+(y&79{0%MRv*x6 zi2L^)dQFkxP~2Aif^LD2aX!9lJwLkhWahKgS6aRfKokx!d_%j?v?Jb?o~nBBnu-0> zo}wy;B|H0JjkZi%4?irmGL6;sJCD%Bj_&a88uP`^Hxy0k7=-Rb#>B)I7=5=gq@;tI zyw=;e?t>zbkb!++w7j)HFh06+?W&LgT1CT%gZdED<1(GoOO!%;JhWaQ)KYl0w>)L0iQ9Y^_HPT z(zR|Cr3cC)qA2;5G{;LQQWAddw!+MootcCIiK_08iS%IQHu{r2kyKKSwdIwqW0dQ# zR;`AT^cm^e=f=J%#HNf})@Nl@uwaex4OabSe--!$zA5$PHz2RLV=P69ug?F>1JuSi zIq4a`rR0MvqCa3< zZR4`_?;-dMwfy!@m@fNzC{ZESpQAe1*QmAXzJ)Jad$OP(R5Kaax)G+33K%&cB;>LC z8}a5_2AGM2SJ8>|$yu`kuru5M#?lfjN0JHjk6VecTLz@hjea7otZGDMGtc?diZZ0xThV=#uiDz$n#MJ%>Y;EM*@)# zzl*Gor<#RD;vJE|t|{=wnwJDWhSO1@wsjT=vG}a{OGh5|AWJ9J2{p?1XdI*pRk5?J z3A=NMWf+@Sg2JoPJ|!K`=~BV`YgW!jdy>`7Fq8hfL{_a$r3=CBH}q!>v9F~RlF!&y zl3Yc4Ev@Vu)vT1vhxQ^cX&2$^=tjqXAL z{Ha;q;-WB}`4MA|gj2z;5`pngs`Ugd9iafbG*pRtJ&#}<=dRFCAJC-G=t|XZ>ju^> z&_2=&))-WVW%^4W#=OpF_*IFV2Vr&2NI@G2PKGLa@u@3Ng1!^{P9GPn-(W5D^Tdi-0mw`V50nQs40y35T}sUCq3i%TQ|@jK=VBs}LT_3vcGAE(jSP6{!tBHj zsV%yuvex5U&q&)l>nTw)QRldE+@t;~3j3iJx=I9{f(THyU2iN=3#$c2La6r**)`b= za4+9Z0V&exlKIxT?%^Ac9Bp;+{FE>LfbYRf#8CiJfVtG<_@x=d z4CgLE>$U4loTmW(b&gwTYZ}S``?__7M%pZ+f_4|^*0>@&!KW9yNwrI_t@ZTv>xVPi zpNbzZUSn@SB0y^o^?stN7Rl^U$r6^Eg)hMSaGW7DC4Ia&;uLwd_JZzB7FAx3LmCoU zYYq&&Q|Nm;>1H|g*16P&l1)?9iMKN`Or83*jv%`AIXYvz%$;4DqzCCVo_|rJIYtcD zQL0@ZL)~Q?o?eFSd##XAjvCYOz+U%)4@Y37qRf zkJAN5c#J@huz@vn5S^%NCQ*5yAcmop8D%{z@MO{o2df0gAt(w#j5owyr1P!ai?W0K z{h=Yd;#&V<2gkx`{zt9bkE%%)TaAi}XeOr(0}oFhl&oWDWMXL(me?osFzQ;Zuy>6^ zp#^k-$;BXck@+|$`@-p~lbP>#={U7-OPhe-#J&zCxLs{k zR5v!X`D!s7zc*04U6iBOCB*NIHQp|QRg>{Gpq~kVT1sdo)B*<;TslhztF5~brB?y1Tru%ow z2nsGP?lq|Q7)l?}#8s{5eQ2VR1)`-jM^n8UWRkEip4U7|@l8c^u`glKH=u5|Q?vW< za@=C&(MEjNvv*xRbC+fG=w}+@Pez)!1>3U|Z%kBI+-G1Io^LkGN)E>1QH%dCA<{(x zBnZecc3SSQh0*YAM!UayWE_Vo`+$KuS$Z__@KWlSG@V!tWm$W)MBhEM3hVsz#BCTZ zcBp#;=05PT3YDo#VR?zk@3xEz46;SyQ$<;Z#}Hb8R=y=ppSkmXy*OZK5as;&^rx49 zcIlmyx#CJLL6tIC={ujG_Z+A4mP(}S-vbO$nzs+9d3kv$Ke;v5F4!PZ>_c zeXjgg^%Ij+b@pW*A9$%3fIW(I7CtC$RCBuw3NHQ#X~2V*n<2o)QhoAa0(ShRWInLv zY2+_1;=jDC2ZF>FrV+niQQ;0p;0ULZ$2fdbUM4P7P42ZH|1CmD8->J?~PHzRkB str: + return f"{object_type}--{str(uuid.uuid4())}" + + def get_current_timestamp(self) -> str: + return datetime.utcnow().strftime('%Y-%m-%dT%H:%M:%S.%fZ') + + def create_stix_object(self, object_type: str, properties: Dict[str, Any]) -> Dict[str, Any]: + """ + Create a STIX object + """ + stix_object = { + "type": object_type, + "id": self.generate_id(object_type), + "spec_version": "2.1", + "created": self.get_current_timestamp(), + "modified": self.get_current_timestamp() + } + stix_object.update(properties) + + return stix_object + + def create_relationship(self, source_ref: str, target_ref: str, relationship_type: str) -> Dict[str, Any]: + """ + Create a STIX relationship object + """ + return self.create_stix_object("relationship", { + "source_ref": source_ref, + "target_ref": target_ref, + "relationship_type": relationship_type + }) + + def validate_relationship(self, source_type: str, target_type: str, relationship_type: str) -> bool: + """ + Validate if a relationship is allowed between two object types (not used currently) + """ + constraints = self.relationship_constraints.get("relationships", {}) + source_constraints = constraints.get(source_type, {}) + + allowed_targets = source_constraints.get("allowed_targets", []) + allowed_relationship_types = source_constraints.get("relationship_types", []) + + return (target_type in allowed_targets and + relationship_type in allowed_relationship_types) + + def create_bundle(self, objects: List[Dict[str, Any]]) -> Dict[str, Any]: + """ + Create a STIX bundle containing multiple objects + """ + return { + "type": "bundle", + "id": self.generate_id("bundle"), + "objects": objects + } + + def validate_bundle(self, bundle: Dict[str, Any]) -> Dict[str, Any]: + """ + Validate a STIX bundle structure + """ + errors = [] + warnings = [] + if bundle.get("type") != "bundle": + errors.append("Bundle must have type 'bundle'") + + if "objects" not in bundle or not isinstance(bundle["objects"], list): + errors.append("Bundle must contain an 'objects' array") + if "objects" in bundle: + for obj in bundle["objects"]: + if obj.get("type") in self.sco_types: + errors.append(f"SCO '{obj.get('type')}' cannot be a top-level object") + + observed_data_objects = [obj for obj in bundle.get("objects", []) if obj.get("type") == "observed-data"] + + for obj in observed_data_objects: + if not obj.get("number_observed") or obj.get("number_observed") < 1: + errors.append(f"observed-data {obj.get('id')} must have number_observed >= 1") + + if not obj.get("first_observed") or not obj.get("last_observed"): + errors.append(f"observed-data {obj.get('id')} must have first_observed and last_observed") + + # Checking for nested SCOs + if "objects" in obj: + for sco_key, sco in obj["objects"].items(): + if sco.get("id") or sco.get("spec_version"): + errors.append(f"SCO in observed-data.objects must not include id or spec_version") + + return { + "valid": len(errors) == 0, + "errors": errors, + "warnings": warnings + } + + def create_indicator(self, pattern: str, labels: List[str], **kwargs) -> Dict[str, Any]: + """ + Create a STIX Indicator object + """ + properties = { + "pattern": pattern, + "labels": labels, + "valid_from": self.get_current_timestamp() + } + properties.update(kwargs) + return self.create_stix_object("indicator", properties) + + def create_malware(self, name: str, labels: List[str], **kwargs) -> Dict[str, Any]: + """ + Create a STIX Malware object + """ + properties = { + "name": name, + "labels": labels + } + properties.update(kwargs) + return self.create_stix_object("malware", properties) + + def create_threat_actor(self, name: str, labels: List[str], **kwargs) -> Dict[str, Any]: + """ + Create a STIX Threat Actor object + """ + properties = { + "name": name, + "labels": labels + } + properties.update(kwargs) + return self.create_stix_object("threat-actor", properties) + + def create_observed_data(self, number_observed: int, first_observed: str, last_observed: str, objects: Dict[str, Any]) -> Dict[str, Any]: + """ + Create a STIX Observed Data object + """ + properties = { + "number_observed": number_observed, + "first_observed": first_observed, + "last_observed": last_observed, + "objects": objects + } + return self.create_stix_object("observed-data", properties) + + def export_bundle_to_file(self, bundle: Dict[str, Any], filename: str) -> None: + """ + Export a STIX bundle to a JSON file + """ + with open(filename, 'w') as f: + json.dump(bundle, f, indent=2) + + def import_bundle_from_file(self, filename: str) -> Dict[str, Any]: + """ + Import a STIX bundle from a JSON file + """ + with open(filename, 'r') as f: + return json.load(f) From 511bfdc06851546ddbbf7a6c6669e75faa6ebacd Mon Sep 17 00:00:00 2001 From: FadhelMedAziz <87381601+MohamedAzizFadhel@users.noreply.github.com> Date: Sat, 12 Jul 2025 19:37:52 +0100 Subject: [PATCH 2/2] Version 2.1 --- index.html | 1034 +++++++++++++++++++++++----------------------- main.py | 53 ++- stixgenerator.py | 65 ++- 3 files changed, 611 insertions(+), 541 deletions(-) diff --git a/index.html b/index.html index b768eee..d73fb22 100644 --- a/index.html +++ b/index.html @@ -3,7 +3,7 @@ - STIX Generator + STIX Generator with Relationships @@ -312,7 +259,6 @@

🛡️ STIX Generator

-

Create STIX Object

@@ -347,6 +293,74 @@

Current Objects (0)

+ +
+

Create Relationships

+ +
+
+
+ + +
+ +
+ +
+ + +
+
+ +
+ + +
+ +
+
+ +
+
+ +

+ Current Relationships (0) +

+
+

No relationships created yet

+
+

Bundle Management

@@ -382,365 +396,364 @@

JSON Output

\ No newline at end of file diff --git a/main.py b/main.py index 9c70c72..ece404f 100644 --- a/main.py +++ b/main.py @@ -7,7 +7,9 @@ app = Bottle() -# For serving other static files +session_objects = [] +session_relationships = [] + @app.route('/static/') def serve_static(filename): return static_file(filename, root='./static') @@ -16,7 +18,6 @@ def serve_static(filename): def index(): return static_file('index.html', root='.') - @app.route('/api/validate-bundle', method='POST') def validate_bundle(): try: @@ -84,6 +85,8 @@ def create_object(): ) else: stix_object = stix_generator.create_stix_object(object_type, properties) + + session_objects.append(stix_object) return stix_object @@ -112,6 +115,8 @@ def create_relationship(): return {'error': f'Invalid relationship: {source_type} -{relationship_type}-> {target_type}'} relationship = stix_generator.create_relationship(source_ref, target_ref, relationship_type) + session_relationships.append(relationship) + return relationship except Exception as e: @@ -124,23 +129,50 @@ def create_bundle(): try: data = request.json objects = data.get('objects', []) + include_session_data = data.get('include_session_data', True) + all_objects = objects.copy() + + if include_session_data: + all_objects.extend(session_objects) + all_objects.extend(session_relationships) - if not objects: + if not all_objects: response.status = 400 - return {'error': 'Objects array is required'} + return {'error': 'No objects to include in bundle'} - bundle = stix_generator.create_bundle(objects) + bundle = stix_generator.create_bundle(all_objects) validation_result = stix_generator.validate_bundle(bundle) return { 'bundle': bundle, - 'validation': validation_result + 'validation': validation_result, + 'total_objects': len(all_objects), + 'session_objects': len(session_objects), + 'session_relationships': len(session_relationships) } except Exception as e: response.status = 500 return {'error': str(e)} +# New endpoint to get current session data +@app.route('/api/session-data', method='GET') +def get_session_data(): + return { + 'objects': session_objects, + 'relationships': session_relationships, + 'total_objects': len(session_objects), + 'total_relationships': len(session_relationships) + } + +# New endpoint to clear session data +@app.route('/api/clear-session', method='POST') +def clear_session(): + global session_objects, session_relationships + session_objects = [] + session_relationships = [] + return {'message': 'Session data cleared'} + # Endpoint to save the STIX bundle @app.route('/api/save-bundle', method='POST') def save_bundle(): @@ -158,7 +190,11 @@ def save_bundle(): 'validation_errors': validation_result['errors'] } - filename = f"stix_bundle_{bundle_data.get('id', 'unknown')}.json" + # Ensure bundles directory exists + if not os.path.exists('bundles'): + os.makedirs('bundles') + + filename = f"stix_bundle_{bundle_data.get('id', 'unknown').replace('bundle--', '')}.json" bundle_path = os.path.join('bundles', filename) stix_generator.export_bundle_to_file(bundle_data, bundle_path) @@ -250,7 +286,6 @@ def enable_cors(): response.headers['Access-Control-Allow-Methods'] = 'PUT, GET, POST, DELETE, OPTIONS' response.headers['Access-Control-Allow-Headers'] = 'Origin, Accept, Content-Type, X-Requested-With, X-CSRF-Token' - @app.route('/', method='OPTIONS') def handle_options(path): return {} @@ -258,5 +293,5 @@ def handle_options(path): if __name__ == '__main__': if not os.path.exists('bundles'): os.makedirs('bundles') - # Dbg is true for dev purposes + # Debug is true for dev purposes run(app, host='localhost', port=8080, debug=True, reloader=True) \ No newline at end of file diff --git a/stixgenerator.py b/stixgenerator.py index 098a900..b31419c 100644 --- a/stixgenerator.py +++ b/stixgenerator.py @@ -5,7 +5,7 @@ class STIXGenerator: """ - STIX Generator class (Recycled code) + STIX Generator class """ def __init__(self): self.sco_types = [ @@ -27,36 +27,56 @@ def __init__(self): "version": "2.1", "relationships": { "indicator": { - "allowed_targets": ["attack-pattern", "campaign", "intrusion-set", "malware", "tool", "threat-actor"], + "allowed_targets": ["attack-pattern", "campaign", "intrusion-set", "malware", "tool", "threat-actor", "infrastructure", "vulnerability"], "relationship_types": ["indicates", "related-to"] }, "malware": { - "allowed_targets": ["attack-pattern", "campaign", "intrusion-set", "indicator", "tool", "threat-actor"], - "relationship_types": ["related-to"] + "allowed_targets": ["attack-pattern", "campaign", "intrusion-set", "indicator", "tool", "threat-actor", "infrastructure", "vulnerability"], + "relationship_types": ["uses", "targets", "related-to", "downloads", "drops"] }, "observed-data": { - "allowed_targets": ["indicator", "malware", "tool", "threat-actor"], + "allowed_targets": ["indicator", "malware", "tool", "threat-actor", "attack-pattern", "campaign", "intrusion-set"], "relationship_types": ["related-to"] }, "threat-actor": { - "allowed_targets": ["attack-pattern", "campaign", "intrusion-set", "indicator", "malware", "tool", "observed-data"], - "relationship_types": ["attributed-to", "related-to"] + "allowed_targets": ["attack-pattern", "campaign", "intrusion-set", "indicator", "malware", "tool", "infrastructure", "vulnerability", "identity", "location"], + "relationship_types": ["uses", "targets", "attributed-to", "related-to", "impersonates", "located-at"] }, "attack-pattern": { - "allowed_targets": ["campaign", "intrusion-set", "indicator", "malware", "tool", "threat-actor"], - "relationship_types": ["related-to"] + "allowed_targets": ["campaign", "intrusion-set", "indicator", "malware", "tool", "threat-actor", "vulnerability", "course-of-action"], + "relationship_types": ["uses", "targets", "related-to", "mitigated-by"] }, "campaign": { - "allowed_targets": ["attack-pattern", "intrusion-set", "indicator", "malware", "tool", "threat-actor"], - "relationship_types": ["related-to"] + "allowed_targets": ["attack-pattern", "intrusion-set", "indicator", "malware", "tool", "threat-actor", "infrastructure", "vulnerability", "identity"], + "relationship_types": ["uses", "targets", "attributed-to", "related-to"] }, "intrusion-set": { - "allowed_targets": ["attack-pattern", "campaign", "indicator", "malware", "tool", "threat-actor"], - "relationship_types": ["related-to"] + "allowed_targets": ["attack-pattern", "campaign", "indicator", "malware", "tool", "threat-actor", "infrastructure", "vulnerability", "identity"], + "relationship_types": ["uses", "targets", "attributed-to", "related-to"] }, "tool": { - "allowed_targets": ["attack-pattern", "campaign", "intrusion-set", "indicator", "malware", "threat-actor", "observed-data"], - "relationship_types": ["related-to"] + "allowed_targets": ["attack-pattern", "campaign", "intrusion-set", "indicator", "malware", "threat-actor", "infrastructure", "vulnerability"], + "relationship_types": ["uses", "targets", "related-to", "drops"] + }, + "infrastructure": { + "allowed_targets": ["attack-pattern", "campaign", "intrusion-set", "indicator", "malware", "tool", "threat-actor", "vulnerability"], + "relationship_types": ["uses", "hosts", "related-to", "communicates-with"] + }, + "vulnerability": { + "allowed_targets": ["attack-pattern", "campaign", "intrusion-set", "indicator", "malware", "tool", "threat-actor", "course-of-action"], + "relationship_types": ["related-to", "mitigated-by"] + }, + "course-of-action": { + "allowed_targets": ["attack-pattern", "vulnerability", "malware", "tool"], + "relationship_types": ["mitigates", "related-to"] + }, + "identity": { + "allowed_targets": ["attack-pattern", "campaign", "intrusion-set", "indicator", "malware", "tool", "threat-actor", "infrastructure", "vulnerability"], + "relationship_types": ["related-to", "targets"] + }, + "location": { + "allowed_targets": ["identity", "threat-actor", "campaign", "intrusion-set"], + "relationship_types": ["related-to", "located-at"] } } } @@ -94,16 +114,21 @@ def create_relationship(self, source_ref: str, target_ref: str, relationship_typ def validate_relationship(self, source_type: str, target_type: str, relationship_type: str) -> bool: """ - Validate if a relationship is allowed between two object types (not used currently) + Validate if a relationship is allowed between two object types """ + # If no constraints defined for source type, allow all relationships constraints = self.relationship_constraints.get("relationships", {}) source_constraints = constraints.get(source_type, {}) + + if not source_constraints: + return True allowed_targets = source_constraints.get("allowed_targets", []) allowed_relationship_types = source_constraints.get("relationship_types", []) + target_allowed = not allowed_targets or target_type in allowed_targets + relationship_allowed = not allowed_relationship_types or relationship_type in allowed_relationship_types - return (target_type in allowed_targets and - relationship_type in allowed_relationship_types) + return target_allowed and relationship_allowed def create_bundle(self, objects: List[Dict[str, Any]]) -> Dict[str, Any]: """ @@ -121,11 +146,13 @@ def validate_bundle(self, bundle: Dict[str, Any]) -> Dict[str, Any]: """ errors = [] warnings = [] + if bundle.get("type") != "bundle": errors.append("Bundle must have type 'bundle'") if "objects" not in bundle or not isinstance(bundle["objects"], list): errors.append("Bundle must contain an 'objects' array") + if "objects" in bundle: for obj in bundle["objects"]: if obj.get("type") in self.sco_types: @@ -210,4 +237,4 @@ def import_bundle_from_file(self, filename: str) -> Dict[str, Any]: Import a STIX bundle from a JSON file """ with open(filename, 'r') as f: - return json.load(f) + return json.load(f) \ No newline at end of file