From 1833e46c5dcc9762c17a57a4307d9fcb7fcf05d6 Mon Sep 17 00:00:00 2001 From: itdependsnetworks Date: Wed, 6 Sep 2023 20:57:09 -0400 Subject: [PATCH 1/7] Ken Contribution to Remediation & Plan --- .gitignore | 1 + nautobot_golden_config/navigation.py | 85 +++++-- nautobot_golden_config/static/run_job.js | 213 ++++++++++++++++++ .../static/toggle_fields.js | 86 +++++++ poetry.lock | 92 +++++--- 5 files changed, 428 insertions(+), 49 deletions(-) create mode 100644 nautobot_golden_config/static/run_job.js create mode 100644 nautobot_golden_config/static/toggle_fields.js diff --git a/.gitignore b/.gitignore index a73a104d..2605d8cd 100644 --- a/.gitignore +++ b/.gitignore @@ -5,6 +5,7 @@ creds.env nautobot_golden_config/transposer.py docker-compose.override.yml packages/ +invoke.yml # Ansible Retry Files *.retry diff --git a/nautobot_golden_config/navigation.py b/nautobot_golden_config/navigation.py index 15796086..e20e4c3d 100644 --- a/nautobot_golden_config/navigation.py +++ b/nautobot_golden_config/navigation.py @@ -4,30 +4,27 @@ from nautobot.utilities.choices import ButtonColorChoices from nautobot_golden_config.utilities.constant import ENABLE_COMPLIANCE, ENABLE_BACKUP -items = [ +items_operate = [ NavMenuItem( link="plugins:nautobot_golden_config:goldenconfig_list", - name="Home", + name="Config Overview", permissions=["nautobot_golden_config.view_goldenconfig"], ) ] +items_setup = [] + if ENABLE_COMPLIANCE: - items.append( + items_operate.append( NavMenuItem( link="plugins:nautobot_golden_config:configcompliance_list", - name="Configuration Compliance", + name="Config Compliance", permissions=["nautobot_golden_config.view_configcompliance"], ) ) - items.append( - NavMenuItem( - link="plugins:nautobot_golden_config:configcompliance_report", - name="Compliance Report", - permissions=["nautobot_golden_config.view_configcompliance"], - ) - ) - items.append( + +if ENABLE_COMPLIANCE: + items_setup.append( NavMenuItem( link="plugins:nautobot_golden_config:compliancerule_list", name="Compliance Rules", @@ -43,7 +40,9 @@ ), ) ) - items.append( + +if ENABLE_COMPLIANCE: + items_setup.append( NavMenuItem( link="plugins:nautobot_golden_config:compliancefeature_list", name="Compliance Features", @@ -60,8 +59,35 @@ ) ) + +if ENABLE_COMPLIANCE: + items_operate.append( + NavMenuItem( + link="plugins:nautobot_golden_config:configcompliance_report", + name="Compliance Report", + permissions=["nautobot_golden_config.view_configcompliance"], + ) + ) + +items_operate.append( + NavMenuItem( + link="plugins:nautobot_golden_config:configplan_list", + name="Config Plans", + permissions=["nautobot_golden_config.view_configplan"], + buttons=( + NavMenuButton( + link="plugins:nautobot_golden_config:configplan_add", + title="Generate Config Plan", + icon_class="mdi mdi-plus-thick", + button_class=ButtonColorChoices.GREEN, + permissions=["nautobot_golden_config.add_configplan"], + ), + ), + ) +) + if ENABLE_BACKUP: - items.append( + items_setup.append( NavMenuItem( link="plugins:nautobot_golden_config:configremove_list", name="Config Removals", @@ -77,7 +103,9 @@ ), ) ) - items.append( + +if ENABLE_BACKUP: + items_setup.append( NavMenuItem( link="plugins:nautobot_golden_config:configreplace_list", name="Config Replacements", @@ -95,10 +123,28 @@ ) -items.append( +if ENABLE_COMPLIANCE: + items_setup.append( + NavMenuItem( + link="plugins:nautobot_golden_config:remediationsetting_list", + name="Remediation Settings", + permissions=["nautobot_golden_config.view_remediationsetting"], + buttons=( + NavMenuButton( + link="plugins:nautobot_golden_config:remediationsetting_add", + title="Remediation Settings", + icon_class="mdi mdi-plus-thick", + button_class=ButtonColorChoices.GREEN, + permissions=["nautobot_golden_config.add_remediationsetting"], + ), + ), + ) + ) + +items_setup.append( NavMenuItem( link="plugins:nautobot_golden_config:goldenconfigsetting_list", - name="Settings", + name="Golden Config Settings", permissions=["nautobot_golden_config.view_goldenconfigsetting"], buttons=( NavMenuButton( @@ -117,6 +163,9 @@ NavMenuTab( name="Golden Config", weight=1000, - groups=(NavMenuGroup(name="Golden Config", weight=100, items=tuple(items)),), + groups=( + NavMenuGroup(name="Manage", weight=100, items=tuple(items_operate)), + (NavMenuGroup(name="Setup", weight=100, items=tuple(items_setup))), + ), ), ) diff --git a/nautobot_golden_config/static/run_job.js b/nautobot_golden_config/static/run_job.js new file mode 100644 index 00000000..20bf2da4 --- /dev/null +++ b/nautobot_golden_config/static/run_job.js @@ -0,0 +1,213 @@ + +/** + * Used in conjuction with `job_result_modal` to pop up the modal, start the job, provide progress spinner, + * provide job status, job results link, redirect link, and error message. + * + * @requires nautobot_csrf_token - The CSRF token obtained from Nautobot. + * @param {string} jobClass - The jobs `class_path` as defined on the job detail page. + * @param {Object} data - The object containing payload data to send to the job. + * @param {string} redirectUrlTemplate - The redirect url to provide, you have access to jobData with the syntax like `{jobData.someKey}`, leave `undefined` if none is required. + */ +function startJob(jobClass, data, redirectUrlTemplate) { + var jobApi = `/api/extras/jobs/${jobClass}/run/`; + + $.ajax({ + type: 'POST', + url: jobApi, + contentType: "application/json", + data: JSON.stringify({"data": data}), + dataType: 'json', + headers: { + 'X-CSRFToken': nautobot_csrf_token + }, + beforeSend: function() { + // Normalize to base as much as you can. + $('#jobStatus').html("Pending").show(); + $('#loaderImg').show(); + $('#jobResults').hide(); + $('#redirectLink').hide(); + $('#detailMessages').hide(); + }, + success: function(jobData) { + $('#jobStatus').html("Started").show(); + var jobResultUrl = "/extras/job-results/" + jobData.result.id + "/"; + $('#jobResults').html(iconLink(jobResultUrl, "mdi-open-in-new", "Job Details")).show(); + pollJobStatus(jobData.result.url); + if (typeof redirectUrlTemplate !== "undefined") { + var redirectUrl = _renderTemplate(redirectUrlTemplate, jobData); + $('#redirectLink').html(iconLink(redirectUrl, "mdi-open-in-new", "Info")); + } + }, + error: function(e) { + $("#loaderImg").hide(); + console.log("There was an error with your request..."); + console.log("error: " + JSON.stringify(e)); + $('#jobStatus').html("Failed").show(); + $('#detailMessages').show(); + $('#detailMessages').attr('class', 'alert alert-danger text-center'); + $('#detailMessages').html("Error: " + e.responseText); + } + }); +} + +/** + * Polls the status of a job with the given job ID. + * + * This function makes an AJAX request to the server, + * to get the current status of the job with the specified job ID. + * It continues to poll the status until the job completes or fails. + * The job status is updated in the HTML element with ID 'jobStatus'. + * If the job encounters an error, additional error details are shown. + * The call is not made async, so that the parent call will wait until + * this is completed. + * + * @requires nautobot_csrf_token - The CSRF token obtained from Nautobot. + * @param {string} jobId - The ID of the job to poll. + * @returns {void} + */ +function pollJobStatus(jobId) { + $.ajax({ + url: jobId, + type: "GET", + async: false, + dataType: "json", + headers: { + 'X-CSRFToken': nautobot_csrf_token + }, + success: function(data) { + $('#jobStatus').html(data.status.value.charAt(0).toUpperCase() + data.status.value.slice(1)).show(); + if (["errored", "failed"].includes(data.status.value)) { + $("#loaderImg").hide(); + $('#detailMessages').show(); + $('#detailMessages').attr('class', 'alert alert-warning text-center'); + $('#detailMessages').html("Job started but failed during the Job run. This job may have partially completed. See Job Results for more details on the errors."); + } else if (["running", "pending"].includes(data.status.value)) { + // Job is still processing, continue polling + setTimeout(function() { + pollJobStatus(jobId); + }, 1000); // Poll every 1 seconds + } else if (data.status.value == "completed") { + $("#loaderImg").hide(); + $('#detailMessages').show(); + configPlanCount(data.id) + .then(function(planCount) { + $('#redirectLink').show(); + $('#detailMessages').attr('class', 'alert alert-success text-center'); + $('#detailMessages').html( + "Job Completed Successfully."+ + "
Number of Config Plans generated: " + planCount + ) + }) + .catch(function(error) { + $('#detailMessages').attr('class', 'alert alert-warning text-center'); + $('#detailMessages').html( + "Job completed successfully, but no Config Plans were generated."+ + "
If this is unexpected, please validate your input parameters." + ) + }); + } + }, + error: function(e) { + $("#loaderImg").hide(); + console.log("There was an error with your request..."); + console.log("error: " + JSON.stringify(e)); + $('#detailMessages').show(); + $('#detailMessages').attr('class', 'alert alert-danger text-center'); + $('#detailMessages').html("Error: " + e.responseText); + } + }); +} + +/** + * Converts a list of form data objects to a dictionary. + * + * @param {FormData} formData - The form data object to be converted. + * @param {string[]} listKeys - The list of keys for which values should be collected as lists. + * @returns {Object} - The dictionary representation of the form data. + */ +function formDataToDictionary(formData, listKeys) { + const dict = {}; + + formData.forEach(item => { + const { name, value } = item; + if (listKeys.includes(name)) { + if (!dict[name]) { + dict[name] = [value]; + } else { + dict[name].push(value); + } + } else { + dict[name] = value; + } + }); + + return dict; +} + +/** + * Generates an HTML anchor link with an icon. + * + * @param {string} url - The URL to link to. + * @param {string} icon - The name of the Material Design Icon to use. + * @param {string} title - The title to display when hovering over the icon. + * @returns {string} - The HTML anchor link with the specified icon. + */ +function iconLink(url, icon, title) { + + const linkUrl = `` + + ` ` + + ` ` + + ` ` + + `` + return linkUrl +} + +/** + * Renders a template string with placeholders replaced by corresponding values from jobData. + * + * @param {string} templateString - The template string with placeholders in the form of `{jobData.someKey}`. + * @param {Object} jobData - The object containing data to replace placeholders in the template. + * @returns {string} - The rendered string with placeholders replaced by actual values from jobData. + */ +function _renderTemplate(templateString, data) { + // Create a regular expression to match placeholders in the template + const placeholderRegex = /\{jobData\.([^\}]+)\}/g; + + // Replace placeholders with corresponding values from jobData + const renderedString = templateString.replace(placeholderRegex, (match, key) => { + const keys = key.split("."); + let value = data; + for (const k of keys) { + if (value.hasOwnProperty(k)) { + value = value[k]; + } else { + return match; // If the key is not found, keep the original placeholder + } + } + return value; + }); + + return renderedString; +} + + +function configPlanCount(jobResultId) { + return new Promise(function(resolve, reject) { + var configPlanApi = `/api/plugins/golden-config/config-plan/?job_result_id=${jobResultId}`; + $.ajax({ + url: configPlanApi, + type: "GET", + dataType: "json", + headers: { + 'X-CSRFToken': nautobot_csrf_token + }, + success: function(data) { + var count = data.count; + resolve(count); + }, + error: function(e) { + resolve(e); + } + }); + }); +} \ No newline at end of file diff --git a/nautobot_golden_config/static/toggle_fields.js b/nautobot_golden_config/static/toggle_fields.js new file mode 100644 index 00000000..d0232c4e --- /dev/null +++ b/nautobot_golden_config/static/toggle_fields.js @@ -0,0 +1,86 @@ + +/** + * Clear fields in forms based on conditions specified in the 'data' parameter. + * + * This function takes in an array of data objects, where each object contains a 'values' + * property with an array of conditions. Each condition has a 'hide' property that contains + * a list of field names. The function iterates through the 'data' array and hides the fields + * specified in the 'hide' property for each condition. See `setupFieldListeners` doc + * string for example data and more details. + * + * @param {Object[]} data - An array of data objects, each with a 'values' property. + * @returns {void} - This function does not return anything. + */ +function clearFields(data) { + // Iterate through the data array + data.forEach(item => { + // Get the field and value objects + var values = item["values"]; + + // Iterate through the values array + values.forEach(condition => { + // Hide the fields specified in "hide" array + condition["hide"].forEach(fieldToHide => $("#" + fieldToHide).parent().parent().hide()); + }); + }); +} + +/** + * Set up event listeners for fields based on conditions specified in the 'data' parameter. + * + * This function takes in an array of data objects, where each object contains an 'event_field' + * property with the ID of a prior field. It also contains a 'values' property with an array of conditions. + * Each condition has 'name', 'show', and 'hide' properties. The function iterates through the 'data' array + * and sets up change event listeners for the prior fields. When the prior field's value changes, the function + * checks the conditions and shows or hides fields based on the selected value. Please note that this is + * intended to be used in a django form rended_field, which adds `id_` to the field, such as `id_commands`. + * Additionally, consider an empty "", `name` key to hide everything as shown. Example data being expected: + * + * const hideFormData = [ + * { + * "event_field": "id_plan_type", + * "values": [ + * { + * "name": "manual", + * "show": ["id_commands"], + * "hide": ["id_feature"] + * }, + * { + * "name": "missing", + * "show": ["id_feature"], + * "hide": ["id_commands"] + * }, + * { + * "name": "", // Used for blank field + * "show": [], + * "hide": ["id_feature", "id_commands"] + * } + * } + * ] + * + * @param {Object[]} data - An array of data objects, each with 'event_field' and 'values' properties. + * @returns {void} - This function does not return anything. + */ +function setupFieldListeners(data) { + // Iterate through the hideFormData array + data.forEach(item => { + // Get the prior field element by its ID + var priorField = $("#" + item["event_field"]); + + // Handle the change event of the prior field + priorField.on("change", function() { + // Get the selected value of the prior field + var selectedValue = priorField.val(); + + // Iterate through the values array + item["values"].forEach(condition => { + if (condition["name"] === selectedValue) { + // Show the fields specified in "show" array + condition["show"].forEach(fieldToShow => $("#" + fieldToShow).parent().parent().show()); + // Hide the fields specified in "hide" array + condition["hide"].forEach(fieldToHide => $("#" + fieldToHide).parent().parent().hide()); + } + }); + }); + }); +} \ No newline at end of file diff --git a/poetry.lock b/poetry.lock index c34042e7..89c76ad6 100644 --- a/poetry.lock +++ b/poetry.lock @@ -1511,13 +1511,13 @@ six = ">=1.12" [[package]] name = "griffe" -version = "0.35.1" +version = "0.35.2" description = "Signatures for entire Python programs. Extract the structure, the frame, the skeleton of your project, to generate API documentation or find breaking changes in your API." optional = false python-versions = ">=3.8" files = [ - {file = "griffe-0.35.1-py3-none-any.whl", hash = "sha256:ff580073a71793cc58ed1fad696aee49c4bd9e637d3e0cde5b39a269ad8e59e4"}, - {file = "griffe-0.35.1.tar.gz", hash = "sha256:1e3bf605344ab32fe2729161bb4f7761996684f838dfd5a7c60af03a0b20375f"}, + {file = "griffe-0.35.2-py3-none-any.whl", hash = "sha256:9650d6d0369c22f29f2c1bec9548ddc7f448f8ca38698a5799f92f736824e749"}, + {file = "griffe-0.35.2.tar.gz", hash = "sha256:84ecfe3df17454993b8dd485201566609ac6706a2eb22e3f402da2a39f9f6b5f"}, ] [package.dependencies] @@ -1534,6 +1534,20 @@ files = [ {file = "h11-0.14.0.tar.gz", hash = "sha256:8f19fbbe99e72420ff35c00b27a34cb9937e902a8b810e2c88300c6f0a3b699d"}, ] +[[package]] +name = "hier-config" +version = "2.2.2" +description = "A network configuration comparison tool, used to build remediation configurations." +optional = false +python-versions = ">=3.8,<4.0" +files = [ + {file = "hier-config-2.2.2.tar.gz", hash = "sha256:a394f6783de2f93f641cbb3a819da931585281fed81cfc7adc71268eb340c632"}, + {file = "hier_config-2.2.2-py3-none-any.whl", hash = "sha256:cb5af71a765cb92d7478cb3695291220d9680696fbc77a790089ec8ca1f743cd"}, +] + +[package.dependencies] +PyYAML = ">=5.4" + [[package]] name = "httpcore" version = "0.17.3" @@ -2495,19 +2509,22 @@ nautobot = ">=1.2.0,<2.0.0" [[package]] name = "nautobot-plugin-nornir" -version = "1.0.0" +version = "1.0.1" description = "Nautobot Nornir plugin." optional = false -python-versions = ">=3.6,<4.0" +python-versions = ">=3.7,<4.0" files = [ - {file = "nautobot-plugin-nornir-1.0.0.tar.gz", hash = "sha256:d9301329decd7e4b9b5578c72e05c44ac84fc747002135b99538152a5ae27de3"}, - {file = "nautobot_plugin_nornir-1.0.0-py3-none-any.whl", hash = "sha256:14e4098bf0a4d0d5ca3c550e75c6acf88502fb774791865488a9eaac5eff402e"}, + {file = "nautobot_plugin_nornir-1.0.1-py3-none-any.whl", hash = "sha256:b19aff3fad27c9d7ab49f1f07f740236e95502d27371e60032950110264c34bd"}, + {file = "nautobot_plugin_nornir-1.0.1.tar.gz", hash = "sha256:a39ebc42fd90657294e909e7041f492a35cdce436d73db54468eea4e04d65963"}, ] [package.dependencies] -nautobot = ">=1.2.0" +importlib-metadata = "4.13.0" netutils = ">=1.0.0" -nornir-nautobot = ">=2.2.0,<3.0.0" +nornir-nautobot = ">=2.6.0,<3.0.0" + +[package.extras] +nautobot = ["nautobot (>=1.4.0,<2.0.0)"] [[package]] name = "ncclient" @@ -3191,19 +3208,22 @@ pylint = ">=1.7" [[package]] name = "pymdown-extensions" -version = "10.1" +version = "10.2" description = "Extension pack for Python Markdown." optional = false python-versions = ">=3.7" files = [ - {file = "pymdown_extensions-10.1-py3-none-any.whl", hash = "sha256:ef25dbbae530e8f67575d222b75ff0649b1e841e22c2ae9a20bad9472c2207dc"}, - {file = "pymdown_extensions-10.1.tar.gz", hash = "sha256:508009b211373058debb8247e168de4cbcb91b1bff7b5e961b2c3e864e00b195"}, + {file = "pymdown_extensions-10.2-py3-none-any.whl", hash = "sha256:fbb86243db9a681602e3b869deef000211c55d0261015a5cc41d6f34d2afc57f"}, + {file = "pymdown_extensions-10.2.tar.gz", hash = "sha256:06042274876eb4267f12a389daf505eabaebc38bdca26725560c9afda5867549"}, ] [package.dependencies] markdown = ">=3.2" pyyaml = "*" +[package.extras] +extra = ["pygments (>=2.12)"] + [[package]] name = "pynacl" version = "1.5.0" @@ -3232,17 +3252,18 @@ tests = ["hypothesis (>=3.27.0)", "pytest (>=3.2.1,!=3.3.0)"] [[package]] name = "pynautobot" -version = "1.4.0" +version = "1.5.0" description = "Nautobot API client library" optional = false python-versions = ">=3.7,<4.0" files = [ - {file = "pynautobot-1.4.0-py3-none-any.whl", hash = "sha256:6bc053b095728ed0af40d097a7513c3e16c51ec63aad46f691f50b3f6c82bdfe"}, - {file = "pynautobot-1.4.0.tar.gz", hash = "sha256:87c93976248f99f2adc0e22d7a39e7f0aac3460451607078bfee93742742c9d4"}, + {file = "pynautobot-1.5.0-py3-none-any.whl", hash = "sha256:aa5bdf18148d82715b26e1a7abf0796bb28da05fece3d206b6f42749d2f466b1"}, + {file = "pynautobot-1.5.0.tar.gz", hash = "sha256:50ac1e12f377ce2f1d156056e9ec3333c8a74bf6269e145889606da92b8752b4"}, ] [package.dependencies] -requests = ">=2.20.0,<3.0.0" +requests = ">=2.30.0,<3.0.0" +urllib3 = ">=1.21.1,<1.27" [[package]] name = "pyparsing" @@ -3444,6 +3465,7 @@ files = [ {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:69b023b2b4daa7548bcfbd4aa3da05b3a74b772db9e23b982788168117739938"}, {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:81e0b275a9ecc9c0c0c07b4b90ba548307583c125f54d5b6946cfee6360c733d"}, {file = "PyYAML-6.0.1-cp310-cp310-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:ba336e390cd8e4d1739f42dfe9bb83a3cc2e80f567d8805e11b46f4a943f5515"}, + {file = "PyYAML-6.0.1-cp310-cp310-musllinux_1_1_x86_64.whl", hash = "sha256:326c013efe8048858a6d312ddd31d56e468118ad4cdeda36c719bf5bb6192290"}, {file = "PyYAML-6.0.1-cp310-cp310-win32.whl", hash = "sha256:bd4af7373a854424dabd882decdc5579653d7868b8fb26dc7d0e99f823aa5924"}, {file = "PyYAML-6.0.1-cp310-cp310-win_amd64.whl", hash = "sha256:fd1592b3fdf65fff2ad0004b5e363300ef59ced41c2e6b3a99d4089fa8c5435d"}, {file = "PyYAML-6.0.1-cp311-cp311-macosx_10_9_x86_64.whl", hash = "sha256:6965a7bc3cf88e5a1c3bd2e0b5c22f8d677dc88a455344035f03399034eb3007"}, @@ -3451,8 +3473,15 @@ files = [ {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:42f8152b8dbc4fe7d96729ec2b99c7097d656dc1213a3229ca5383f973a5ed6d"}, {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:062582fca9fabdd2c8b54a3ef1c978d786e0f6b3a1510e0ac93ef59e0ddae2bc"}, {file = "PyYAML-6.0.1-cp311-cp311-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:d2b04aac4d386b172d5b9692e2d2da8de7bfb6c387fa4f801fbf6fb2e6ba4673"}, + {file = "PyYAML-6.0.1-cp311-cp311-musllinux_1_1_x86_64.whl", hash = "sha256:e7d73685e87afe9f3b36c799222440d6cf362062f78be1013661b00c5c6f678b"}, {file = "PyYAML-6.0.1-cp311-cp311-win32.whl", hash = "sha256:1635fd110e8d85d55237ab316b5b011de701ea0f29d07611174a1b42f1444741"}, {file = "PyYAML-6.0.1-cp311-cp311-win_amd64.whl", hash = "sha256:bf07ee2fef7014951eeb99f56f39c9bb4af143d8aa3c21b1677805985307da34"}, + {file = "PyYAML-6.0.1-cp312-cp312-macosx_10_9_x86_64.whl", hash = "sha256:855fb52b0dc35af121542a76b9a84f8d1cd886ea97c84703eaa6d88e37a2ad28"}, + {file = "PyYAML-6.0.1-cp312-cp312-macosx_11_0_arm64.whl", hash = "sha256:40df9b996c2b73138957fe23a16a4f0ba614f4c0efce1e9406a184b6d07fa3a9"}, + {file = "PyYAML-6.0.1-cp312-cp312-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:6c22bec3fbe2524cde73d7ada88f6566758a8f7227bfbf93a408a9d86bcc12a0"}, + {file = "PyYAML-6.0.1-cp312-cp312-musllinux_1_1_x86_64.whl", hash = "sha256:8d4e9c88387b0f5c7d5f281e55304de64cf7f9c0021a3525bd3b1c542da3b0e4"}, + {file = "PyYAML-6.0.1-cp312-cp312-win32.whl", hash = "sha256:d483d2cdf104e7c9fa60c544d92981f12ad66a457afae824d146093b8c294c54"}, + {file = "PyYAML-6.0.1-cp312-cp312-win_amd64.whl", hash = "sha256:0d3304d8c0adc42be59c5f8a4d9e3d7379e6955ad754aa9d6ab7a398b59dd1df"}, {file = "PyYAML-6.0.1-cp36-cp36m-macosx_10_9_x86_64.whl", hash = "sha256:50550eb667afee136e9a77d6dc71ae76a44df8b3e51e41b77f6de2932bfe0f47"}, {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:1fe35611261b29bd1de0070f0b2f47cb6ff71fa6595c077e42bd0c419fa27b98"}, {file = "PyYAML-6.0.1-cp36-cp36m-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:704219a11b772aea0d8ecd7058d0082713c3562b4e271b849ad7dc4a5c90c13c"}, @@ -3469,6 +3498,7 @@ files = [ {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:a0cd17c15d3bb3fa06978b4e8958dcdc6e0174ccea823003a106c7d4d7899ac5"}, {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:28c119d996beec18c05208a8bd78cbe4007878c6dd15091efb73a30e90539696"}, {file = "PyYAML-6.0.1-cp38-cp38-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:7e07cbde391ba96ab58e532ff4803f79c4129397514e1413a7dc761ccd755735"}, + {file = "PyYAML-6.0.1-cp38-cp38-musllinux_1_1_x86_64.whl", hash = "sha256:49a183be227561de579b4a36efbb21b3eab9651dd81b1858589f796549873dd6"}, {file = "PyYAML-6.0.1-cp38-cp38-win32.whl", hash = "sha256:184c5108a2aca3c5b3d3bf9395d50893a7ab82a38004c8f61c258d4428e80206"}, {file = "PyYAML-6.0.1-cp38-cp38-win_amd64.whl", hash = "sha256:1e2722cc9fbb45d9b87631ac70924c11d3a401b2d7f410cc0e3bbf249f2dca62"}, {file = "PyYAML-6.0.1-cp39-cp39-macosx_10_9_x86_64.whl", hash = "sha256:9eb6caa9a297fc2c2fb8862bc5370d0303ddba53ba97e71f08023b6cd73d16a8"}, @@ -3476,6 +3506,7 @@ files = [ {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_aarch64.manylinux2014_aarch64.whl", hash = "sha256:5773183b6446b2c99bb77e77595dd486303b4faab2b086e7b17bc6bef28865f6"}, {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_s390x.manylinux2014_s390x.whl", hash = "sha256:b786eecbdf8499b9ca1d697215862083bd6d2a99965554781d0d8d1ad31e13a0"}, {file = "PyYAML-6.0.1-cp39-cp39-manylinux_2_17_x86_64.manylinux2014_x86_64.whl", hash = "sha256:bc1bf2925a1ecd43da378f4db9e4f799775d6367bdb94671027b73b393a7c42c"}, + {file = "PyYAML-6.0.1-cp39-cp39-musllinux_1_1_x86_64.whl", hash = "sha256:04ac92ad1925b2cff1db0cfebffb6ffc43457495c9b3c39d3fcae417d7125dc5"}, {file = "PyYAML-6.0.1-cp39-cp39-win32.whl", hash = "sha256:faca3bdcf85b2fc05d06ff3fbc1f83e1391b3e724afa3feba7d13eeab355484c"}, {file = "PyYAML-6.0.1-cp39-cp39-win_amd64.whl", hash = "sha256:510c9deebc5c0225e8c96813043e62b680ba2f9c50a08d3724c7f28a747d1486"}, {file = "PyYAML-6.0.1.tar.gz", hash = "sha256:bfdf460b1736c775f2ba9f6a92bca30bc2095067b8a9d77876d1fad6cc3b4a43"}, @@ -3804,18 +3835,18 @@ testing-integration = ["build[virtualenv]", "filelock (>=3.4.0)", "jaraco.envs ( [[package]] name = "singledispatch" -version = "4.0.0" +version = "4.1.0" description = "Backport functools.singledispatch to older Pythons." optional = false -python-versions = ">=3.7" +python-versions = ">=3.8" files = [ - {file = "singledispatch-4.0.0-py2.py3-none-any.whl", hash = "sha256:b8f69397a454b45b91e2f949fcc87896c53718ca59aab6367966e8b3f010ec77"}, - {file = "singledispatch-4.0.0.tar.gz", hash = "sha256:f3c327a968651a7f4b03586eab7d90a07b05ff3ef7942d1967036eb9f75ab8fc"}, + {file = "singledispatch-4.1.0-py2.py3-none-any.whl", hash = "sha256:6061bd291204beaeac90cdbc342b68d213b7a6efb44ae6c5e6422a78be351c8a"}, + {file = "singledispatch-4.1.0.tar.gz", hash = "sha256:f3430b886d5b4213d07d715096a75da5e4a8105284c497b9aee6d6d48bfe90cb"}, ] [package.extras] -docs = ["furo", "jaraco.packaging (>=9)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] -testing = ["flake8 (<5)", "pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=1.3)", "pytest-flake8", "pytest-mypy (>=0.9.1)"] +docs = ["furo", "jaraco.packaging (>=9.3)", "jaraco.tidelift (>=1.4)", "rst.linker (>=1.9)", "sphinx (>=3.5)", "sphinx-lint"] +testing = ["pytest (>=6)", "pytest-black (>=0.3.7)", "pytest-checkdocs (>=2.4)", "pytest-cov", "pytest-enabler (>=2.2)", "pytest-mypy (>=0.9.1)", "pytest-ruff"] [[package]] name = "six" @@ -4129,20 +4160,19 @@ files = [ [[package]] name = "urllib3" -version = "2.0.4" +version = "1.26.16" description = "HTTP library with thread-safe connection pooling, file post, and more." optional = false -python-versions = ">=3.7" +python-versions = ">=2.7, !=3.0.*, !=3.1.*, !=3.2.*, !=3.3.*, !=3.4.*, !=3.5.*" files = [ - {file = "urllib3-2.0.4-py3-none-any.whl", hash = "sha256:de7df1803967d2c2a98e4b11bb7d6bd9210474c46e8a0401514e3a42a75ebde4"}, - {file = "urllib3-2.0.4.tar.gz", hash = "sha256:8d22f86aae8ef5e410d4f539fde9ce6b2113a001bb4d189e0aed70642d602b11"}, + {file = "urllib3-1.26.16-py2.py3-none-any.whl", hash = "sha256:8d36afa7616d8ab714608411b4a3b13e58f463aee519024578e062e141dce20f"}, + {file = "urllib3-1.26.16.tar.gz", hash = "sha256:8f135f6502756bde6b2a9b28989df5fbe87c9970cecaa69041edcce7f0589b14"}, ] [package.extras] -brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)"] -secure = ["certifi", "cryptography (>=1.9)", "idna (>=2.0.0)", "pyopenssl (>=17.1.0)", "urllib3-secure-extra"] -socks = ["pysocks (>=1.5.6,!=1.5.7,<2.0)"] -zstd = ["zstandard (>=0.18.0)"] +brotli = ["brotli (>=1.0.9)", "brotlicffi (>=0.8.0)", "brotlipy (>=0.6.0)"] +secure = ["certifi", "cryptography (>=1.3.4)", "idna (>=2.0.0)", "ipaddress", "pyOpenSSL (>=0.14)", "urllib3-secure-extra"] +socks = ["PySocks (>=1.5.6,!=1.5.7,<2.0)"] [[package]] name = "vine" @@ -4338,4 +4368,4 @@ testing = ["big-O", "jaraco.functools", "jaraco.itertools", "more-itertools", "p [metadata] lock-version = "2.0" python-versions = ">=3.8,<3.12" -content-hash = "65595d9d3c9189035c24128539cd3a0d6589801fa3d3d767d8f89e5cd039e78e" +content-hash = "842aea8162d6866e37d36f334e6a4c125cdde114a087275d506427565373b4e6" From 814ca7439f6ce8299b79437e8764a3d31642c226 Mon Sep 17 00:00:00 2001 From: mzb Date: Thu, 7 Sep 2023 01:38:36 +0000 Subject: [PATCH 2/7] Marek & Patricio Contribution to Remediation & Plan --- .../remediation_custom_function_setup.png | Bin 0 -> 256279 bytes ...diation_enable_compliance_rule_feature.png | Bin 0 -> 50350 bytes docs/images/remediation_hier_edit_options.png | Bin 0 -> 119945 bytes .../remediation_settings_per_platform.png | Bin 0 -> 81496 bytes docs/images/remediation_validate_feature.png | Bin 0 -> 114519 bytes docs/user/app_feature_remediation.md | 69 ++++++++++++++++++ nautobot_golden_config/api/urls.py | 2 + .../migrations/0025_remediation_settings.py | 65 +++++++++++++++++ .../remediationsetting_retrieve.html | 24 ++++++ 9 files changed, 160 insertions(+) create mode 100644 docs/images/remediation_custom_function_setup.png create mode 100644 docs/images/remediation_enable_compliance_rule_feature.png create mode 100644 docs/images/remediation_hier_edit_options.png create mode 100644 docs/images/remediation_settings_per_platform.png create mode 100644 docs/images/remediation_validate_feature.png create mode 100644 docs/user/app_feature_remediation.md create mode 100644 nautobot_golden_config/migrations/0025_remediation_settings.py create mode 100644 nautobot_golden_config/templates/nautobot_golden_config/remediationsetting_retrieve.html diff --git a/docs/images/remediation_custom_function_setup.png b/docs/images/remediation_custom_function_setup.png new file mode 100644 index 0000000000000000000000000000000000000000..dc2a0dcde64fd875d6a0b4acb650564103a87f3d GIT binary patch literal 256279 zcmaI7WmsHW(V6?jCeF=RD8%T{G{Q z`PsI5?^=6R)h!jStSE(yNPq|d0f8(dE&de(0{RdF0%`*u_WhksA4)$62r>v6aS=5) z{gX^MK;kTEe>-mDN%RTb1_UKeQCSdaIO3(wP;d{@7*L!$GK=g-3Z!D07t&$0asP{#QmR;-vra+5i8m-_m~KeApr?Z2zy7 zzCugqS<_XkvHbf#{k@uUJVdxNeL#-!zg)_H|L#{le4O6{T? zy9L^rq&>QxZg!%f>QeqCCTipt(2>qdcu!r>EfHTv7Kr^(D6{&XTrUCDoDh@hvE%eB z9b?!g+L~Kk`G6kH6<@HnY@RAdZCB%1fiyBg|E^~-f?=_IDI5!BNLeC+cDO|4`4mzG z?|!`WJ%qBvQ32qhPufkBYHNKMI8a(DF5*ESP{W`tpNF~Z(%qbV0(74zw;8sMHmhlg ze?pTmN9Qx1JlMsfYK~eDRHC3^At1k>QUUj)`Xwq-|Lcz1{IyS9KZY0_PlTWtU^R?a zA60oYo!=+`a^cPd8mkxArno^T>!B_xW=!(iuf-tJjlg_8S?N5muvbFOjKb3P6aH$P zix+7dBC|~%4X5R=Bmdq~DW<7#7h2=Qac8xav}g$iMHkBGyvtUfOURe+(m{w z!8o^STmDl35;V6u=M5=0`gK`~&S^mjd&5$*hU^}or+j((3xQJE9K>7TIVCfQ?%H2#j5ZEW!)0rnqw>WR)TZCml-GsvtCzi?^l8~oxM ziDcqCd4B9iHF#*4bU$M9P+Q1Y9`5+3zUXfBZRKW*;vc6K6j4m2R=Zg{!Bx3gCoO$4 zdAYq+@|(7-;A1-!*DkogKL}U3vSEfZTt3xJ-A(D>JHGk0!g}5@l-8MXyKlFnPZs~7JNS~S&a^@~!=0HPb_$Ba|7X_O zD5Cu9{1|_{!$%=q>9UYA-dqBGGS|sB?9E!1{*8mhpg(dz%Pe9170*>yQ6${Rx`nS+ zuym??YgJH%9oSPh4)3+4ADmv58Yai`rOBTc*3~sYUFLJ!qAT|1u5M;=gfr*mOzBE1 zTdpb$3UQ6k?DR@AZp|4!V z&_sem35q*%M;u&Lh5`BTR%J^Yr{u0-yuOfd32vbI>M4Psd|Yl|b>yV?gEZsaMCaa{KXRwp-%}yle_`z$>KFmI;Zm^0HzI`r@}1fg027ML zW*I`ppGU~U0j3#^sX>e%tfP($Aq9yQcHn*{QOBSarJKxI2eOH`L+l6UqGciRG}U%P zSg=8%l9=I`OCXj;%U%Pyso>v2b~`&JKiJu##G4uk zhypiO5L42ZbHJ+D_4b0H9kMuNw-bHZsLd3D9|_iw1S6ml5$lMK&7$hWROn;iXvkFi zF@!Qpe-#!EXtP_CEp1<`+%-DhV4>_UZnP!~#Dm6A33DEf8Av4EHq#Z{n)G1GOS6Kp z_Yu=Z8t)KHW$ruRi=h6c7`cT(XBoyTV#~IqOlk^}7`(Ycl4E2eU*HMA$_YeZ8E1Su zvJz|kElwYB;X>Ga)0>9C1;5bnv)6h%2u59^Ijx>^@9b!)AI{)@s;4Sbs**DvcMy6~ zM)*izjgN@7>H}nmO<2tm)87+FdDQX zSLMxtX-oa0>aCB&q2dCX52*$hXFr8i0ZueRPJQ8RA&Htl_Hv71X_YvF=##$r#4Cbl zMW4AWA0?!DFO?sFVxUIh?5;k4=;RdcEO`px@0+U)Y^SIF6>R~f>i=F} zi#W)wI=|G$w1zdo8Jn3B8m8JNV8|$QfJvMo#m*RrZcb zheki$Eb?x$@0~;!agzrwj1daA??gRp!(k`zAMjPJ)ACZDe8Ob42O49tOmUj&bH_^e z1KQ65H?bo`&GhDqm5cNwaRv4D{2*Pi;g{|)y(mek;7ag3w8!w)yb;U+W`^CDs42^w zENfFD|JL|z0I4tJ!<@6|A_CA@rVi=gwM2;;;>(x}b1U#lnEKu-XL_reB=~l7;8^Sw zdicill}kTOPds>!$nH3mqSh$T5^)UClG z!R9IuPsZYYVCo*1UeS{<)bPGeRsUIj#pB;0sI_bjcucVKM}SFuyRYx7@8kg zEwfw5LI_z^CbwAqeS+0m|59a^!K)|(qnZ5?_u7GXctjg``KcymBq`jvc*Ht8W)JO< zCnOTTyFR=QMnhsQ_Rfg5Z$Rj6Q$dHhULS>7_X%QsO~JiZA*bYDduC<-_vRJjUgR4Q z_p+mI6H!2o%%4xDd`Z&t=rw%}QiF?>R8ySnsc95bKpeZAJ&Z#&tQhF{auW}{-#qkfg^l{?NYA|9W6Z_#iP3Q=|(EmSGLXu0zt~qqh6~8-yICvNELStxv=mYZZI;)0u}$i=eIR zAG9^>bcsdfn~{&*HD!APSM*@g+d@|K{s0`QT}nT=C$(^HRen`p)gz3hn_r>OlWPJC z*~szvy9_six!!7&e)i@)1shLs3ImGc|D_?;4tfvE`|&ZhQvVd@EL#7Sa;6dNShd<` z_$^u1#z^GZ`m{7Bpr!}CJCQnu^}b`M=xm@E8?LOVri=#Iqm^_*A%X#l9xiC!Ku*%T zhs2bEKO6LX($7F>((iUDHSi)} z%}v9ez@EHqsl;k9*DZ6w)xYe`#V3R~X<8tN(^v+^i&aAyb-!X&1mF+vT3&u&mJJ!7 zEmXbJ!%yy6ENRa8EXt8>e&)Bv)jaWe(gO1Beir@k^GGTu31;WaR#(-&IpSH>Ft%wS zdB%0g4waCeXUm(mu(SGjXR4p2c=B@xJ2e>bab!urjMGxT;RB!xu*lF^viW!HIq2!iwN5? z7fAS05iXEqMY7tkLtLEvv_zoW9w;Fuu_G?msGv5S?Ez*ICU4QsJ2@X^s$|0GcZPwB z4#^6)A>JbFiqKT#!wUqtD~#`*K)6@aNjU|R(};%|YX~0hc3&ADbbhkv@C2Ui$?1g5 zDGJUDHvQo5rIjRSFG9VG#S*~{nxWo58Z0pih%b7@mEOk^GAkmA7cR&AALTsK zC}{aGq>Qf&jZXuNh)3gmp9F*ix-3SqF{D2KlrDsIy4I+i+}mnAG@iK7KhQ#t<}5T; z>G7ds7!^x#78nY_*-W@vEsD<{hRH7%S1yJ?pq~ms{5Qbt{Iw2M4p59IduSl+04bx>WUg6&=Sc zu4Z$VE)slW5yd9BEb^yDNK)QRgLTHt4hRs{rn%++fglZm=wMggDUJk(2WN;F>g0hT z_%4+rI^UJ5^Qfw^zKP!hQkECU&mPQ>O^(et$HFfur`CJ`qVAo<$zjh4u#8yk36r%cKFtg#Am9yeH+w{2SBsCk4BDGW_j;S#Sp&x>o?C zwJLq$$_8)HJkfUnWuJjT6F%`tbY73HT@ze$j3V$Rs(`4Q8!X)xbQ<(to~N=Tw8J1? zu5X4?H}%}XO@N?`7WoxKl-_zjtftFp^Xn3Z0$20vVZe8Uf_n!B3as|bnD6jm&z%+^ zTcP+Ev$jljSd+4uL=-1=qT!epe$k|nT;^jyUo)+ZeT{rG?HRX>7*d3@$n@nm(-3;q zl%fBV3;FU_v2-(q&T@=DiwEW-$st^vb^dv<6CD1kQ{W+~2KBImrabM~H3j4S%Uxzb z=*g{CPfq~vXRJGJIdA%9`>;>raL)!DD92miQL^k`=obIN*!NVaw4Nd)DY(T{+bI4a z(sebd2HGKe)VMyo6Hgh^J5defUx);bPV zyvB-GSP{*?^uLx|Q13N}P_}rW>WQr76af8pVM>*3^(zz1FIk7ZeI+DZ8o8B|K6#mk zxxqfm>{W(IZ(@x8Ll-_i3p?cAYIqA0c3TW*nq`*_t3%vsuafg~u$>v7@l_(&OZaeG z^py60G7A2*KmWR^SG;-v>R+&{FxQCkR+B=Q2D+r&LKI`U{3qs8<$`N70plJ)Br@pM z3!+|PPsq$J#P|kpfsm4^@xcw5I1#?x5fZ#Lq-_&L;?oO@x49i0k7CX`Z^3rm=oY}} zvmNu@2%g2~BX)BrYFN4Szjifk@3axfVBvu3U*huL&6x1|i~JBuQp5azkW`HV`VMIVP@WtiK(M1GqjSkYOBibHrFmAqzO(#@igd%iD%{3 z-1K(ADVy8JB)6Sy@T~p0!0>IW|bel;sWx}W2l^#4x2sk@MIDZImn1zeg9b!g+hGk9mbOM$h9$o_;f z$gpy&!6y3C!UdRBUk}2iU~Y7$&+ul!v!B9|Bz)Kldk(*>kKzy*BLh&pv0bymQT6hs zS?%GTRPF|ZfQU_lE?Nv-+ zOtxAZKd!%;BUYpnTxfZtn$;C!W#RYD$82uPC8k_9qk35AcCB<*q1A^3-6urg?&9KqGhre7N=7K=Xp08)&igF49a4j>aq+|vXHi%Yj zTTxV>ZKLPR*9+H2IVpRr9<}g4culJZX@*buu81>QmgLv!`s}!m2r5t8m&Y|55e|Za zOMX|5g=n$-+`o(g+Xde1sedKgJ8MDi7qRKiXQ=ePRv{WGLML8p1}J(A!vKwe#047DD$j;| z5)xz0tH9K5aPi9zrx~(;4V4&Xri=RCT#k!l?+dBuvgS}^^T7xig?45s%>4B65ah)3 z6PCtisN{MDLp!IO4J+p4Id521*<&;02<}*0>4VwD1(BjV`j5K9j4(oxdrKu?nm~2IhRSV{xCC%ZB(I8}=#QBS^ zw3;0L8yRbx^yI)<(6OUUgtSEpR`iE>UcV5&kx}Bw{!uJGiNS|IO1>Gx`%9fjg5I+n zKmn>uTlPUxn{GOGsQoE=Qwlw8an>=KM3KD0ST04B1G}Qo+U5O=&G<$ddmID`J!5CQ zatnGP){^UK2Z2w);l5U1cIax;JZUQkjDuFb3jPQpwxEz} zJ~?+~ww)Z8L_6%UoX!z913g6={p{$*_% z5OYejS!@su(Vh!HXB0SBGbww_q?kz#q0~%>8(tdM17}83u0+YD!nzu2!2yKj6>dm+&2~Irw%PT&$R{Ehi46Kj3Ccl>n*8=`tDABcmUQJNA@KoG>Z74 zxHDpve%`q=*uYsjiog_m+ul52sr$K>JG|(8Wmy5rI9kY^_ zF%m&KKw2}LVLvyHVlE`Oj;V#{qjDl<@Ht3V!U4$nP6gvFEsA`_1zA>&mS@|U4}`Y{ zMtwNi*eqKO`zC)=!6E&K z_vf_GEoL?uEgi1AzJ9{`OCCpy3$`ZZ4$QhI{GuoRq)l$w-K4!MH5YPy-^x4(usN@7 zKLdwR>QS^?5I)=*S5#b)ws`$YE#a?%a1n(`7GDlS+c8Zu#p_DykNu&f%BUM5BZ1L_ zq)&umwfomIYx!kqnDde?P4<1VAbP`|s<=V%djGBr+M)KXAVljcOe6S6-ErO>k9$zn z0eM!UnO^=$5tEcK&2Z;gzDG8g(j8g>{ct8wapM&8TlF;Y-_#Uiyu;?Fnyz8_dZ0JaeM6u)oUBV8=x$Q9{QpDW{ggYq;};!H6Z&?CC65&RM+VCW;A%@A?a zt(p}9d?nmV*y6^QNf1=heJY%D#Y&)W-qf9l-dLrdkh{j&kB6XBU4BTf5}j8%e8Ab9 zcbK0=BHmW4X^N)+@#^OhmitI`b}dch;$ZfrQouk!P{ zq-OXqzcIi@Ye|Qez83baNzRGBWnDvpMfBacV|LW>G6` z8tx_-(0P6Qp^Cbe+4fX90VTx0J%M*BQqQt7An;P?^^>l+6WQ8ukSeyOpVw)@N46ra zjXG8}yqU270I!5dnZiDt)OWoJ33t8nOeN7dv&lG^qa-}-Pn^pNu7$kdg(DnNO5`w* z`-*1np?Ajk`qPRY=fqvE{pLU}C<*c2qlAAK(#I@9Lpn0h+*wyPqdsa}ymd)Xt7H9jsBAech8rv(m(% zEqF$5B#drR2NtfZ1)?12jW?*mY_Qz?u31zTcVJUDn3Z-*z*Hi$`;zk~xj3_3R(H^9O3fEssU*A5(;!|4 zr-o2%t&gJhFQ}exU}!}v^yAhj?$dza%V@TC5~=y>-GxRiWHAfHkeU)=un%m)7-R3=Y+J%{$+3I( z`7`Q7i4q*%(TAo>ZuAx>>gQ)W>DMu0tAogS*B6w?xbaO-3p7}z6Br~_vh6!xi}-ui z|9SyUgzza(T>e%M!F%bFQu6RZPIg>!Z7#R0cNL zQ+v(r)4Sk%qQxt&_5=zp^NFM*@Yu^h6U_!u?otqUAkk}M%!^2rl=iJdGLcUKZE(i% z;lC61Ux?XBJ@aIE!p+f=)n`c4qGzW-Jmi?M`{??jBvWtYSd|je(*96po+>(Q-WYZl zG;-e$=<>{}8PVrhB$)>hi!}D*G1kT;W1=C(0n&eP%0q$*E_ zMc}>umG~O3uuUAZO{3g3MJBd#0?fK9Bu}b#_?^Dsr8ccg#`8U1eIFt-($c{>$48_U zPIMpxRC0n`_UsUeP}ZD{<}4}cBlQr1{Zyt-8BtGU??5wgNDYF7GDoGT@Ukbs>2m=B zMJ8Uo28|^(PUlD~|DH2O=Y59@w6u7GEDgNbAT$QU{p-VAe+U8s2)LyPJA^#KR#}5o zifCsvSZ{cU!oRU(0WAcq=o(#+@5#rN9_H;VrXpCc*C62ga6GIe}+^mCGy z5>~rsxHdlH=~?AW;$X^6txsR)LqTw2x@)9<9kS{gc<&NB4p!OuT=Iy>_tt5?#{82f6IEsBR&iODk&e-4bvz$}t*X@r9XNTZ&wsej9mr0{E{;&7; z5?4(6J)abem>uyWNMEAEosT55E*|apoO?%ZPkXR`U@djHTB05h*8I7gj2-yV_kG&M z6MuCb)Y+PD)QFon#0bl1$ngvHVcl`awkAk|YN{LwKBH%@x}en>6S@Am>`Ee= zs+%2>8amD7xhrHTW}-E`;s2iP{p3{oWa`OuKiXGVby|7&u$!y+2@xF7T9{yTGKVbI zI+{J60G0WcBbhhtgdcY9OMvur!&;x}OekYkHen*qa>FXuhw3!H4M3!&w(5?zWd>MU zb@}i(aS-YH`wFdx5`N{bYzcxE&!cayA#i32TIW`5Y^z4IuL`cJ4vf6#Jia|+MY*vk z|Iu-c`Pj|Ck4E}550F5ZQ>$Y-bk6i(E1|I1S;t~LfzGDIFd#DBYVRtL!jAl-&gkAo zk9%mff{Oa;g14-iw%0(@2o8B5?M#AqZ;=00S&4R{!h&xmM5D*-)X)+HQFQyGBfo&? zEixvPTch2S68E~E&@q-ze4!1|5vnAs;perg`Q;?3#-Er0Q^E~5wO`05U zK548L3o~n|HqXa_OQa)DkH(3@=ID|yCfmT(#Fpi&>+f3aff!sBeZcyM*_qi850&sP zxXNrfgVI#PKtJ!N#s2zdiUJ^L{yo1gX_^@hla3sHkwM!jsItrWMaHUSA!&HY)k!Q( zNJ$&j=e$hx+!%b?CWmV(8KppOqFMv37T9k{nj}#Neato2*y^CUD|`{Hm66B6sF=_q zz3i55CF|hjo?OH`@--&i+L*~UeAbLjhvzC1N6GY4Rc*<;I??cpI25#mL&xfRB7|jt zS}Xon?XDG@O>s8=Ch`#1^zpI^AwRNvD!sa%JAYqv@m;A5dQ2N$o!v`}o!I1MTG78_ zO0c_z3N08Vy8#H1NX+|+Z7eC95B6r^Hp7k#F_U6D@`Z-Dv)nvxnqfUu^hS?PA_CN+ zWeTUQ5KaIZ^Nl8yDz4PUDB3Q1N;ePR_=-*LHwbFFw)aa>GS(mQn7ti=+hytlBOBVk z{ar_fCWiJ9ncH7ju&5&nV)1Bwkaaxaz2#$#r&oHVm@&%b9nIYF+2LT%Qu=-f8S*sS$##9b&a;z6+QY~ zTh)UeAU!`^2LWji+nqHXkz}eHOrt-1x!1r#X0|W4KxG@5wt&Q9^FVl(2Cj?=4= zC1ONsebaiE$h*c&{``?Qk1vEpa^jC7oq@@Wjs%DXQ!;+w1-*U#F|t8&_Y90OOD+qS z!9DZEYG)Tw=z&75cXjNqeJwL`U=Rfyl%jJUVzlPUk;?gUUc20dUq7 zD@-0{(v{PejSqW!-6gH#a<}T7;>}%Tw>j*oz$0V4{t|u$;2we>q?Y`Iz!znodvfF* zy7umI@D0VEm4WE2veC^`&1wna=iYo|3+_QLj#aq+fz^pJ?dy%C7pb^a6ALx@G|kO6 zK!ta_&JX{D`Wl+d-)Fp9%hae|JhW%B%Eiez<MPUNO@_tZ=1vi2Nf}<_d+SUaeig5l(E^b?Y z(eh!TQMiXUz>5koNAUHOp65QJmInLa*|$P3nwgB=-6?{38kg&_2cv3+9F)`kSoDDW zfSH6bR!D=lKJSk8btwhg&&c7<&GM$pJe>*NJS1I7;42(4jgi^FaFEKamKAUiZswQy zLBM~EE={Q4%3+u&r+9nyJ9U%76}0LX-ZO|7)NHa~^s@KcU;Y-(4WZtuNwY;*?ienk z$bs$zi9CmQFUq~iBKf-2+7X%3mXK5Klw$RBl|j*AOdjO?98XFLpY{Y^iWm|h>wWJwY~20@%UoSk}!t?T_{-{d|7RmY+;lz`T-9j!KjqHG zcF9dsO8p6aa>atAdqos2YTK6Id%kD z!(ktLsAx#pW)aT%&4a}1?Kz5<(8RP*i~YEHUD%4H=3Nyy^j8NP1l_gW0xHQB%RPvr z-tIVBjNAw~_J|}BRv0AJV+;jU(}jZ7m2?{vjpKTm>hRig+MW5g4~rO0-$ zB>nBuUn!9X$0n@0F^L^YLSTmZr0SK=8Rm<|Z{~xa(-LI#6&jE+p;D>0s{$8tmvQCv zFfKgxJzL0{LqLIy3$P`vJzGHQoGqsvA923d^hqL3l(R%zFGM0j+(R35;5K3m^(?$> z8Z3%iUHgYCE3K&_A+Ax?gyor(wr|YM<|N$~Z*n~)=@!|!JV{M$b^%MJ;{eM9@#m`{ zN$5I1>B3St4_m42+}#hqKqf3gf4(-Q+r}SHfd`$w|n_LY{?7&Rlwc>Wcwkc#fp}+=>ntkZg?!+zWSIC2`<~ZzA{JzRN0)qJG|6ai0XzodiO{k=mSbTh#)FbOXH#x30LptP2Bu!Gqj ziSXV`hj+i1#f&dk%N{@3R(ifPe3H%$n|1qINgt(2Kd8~g4`ep$N*rZJDh#LB>iDC8 zmZM>X%2fAS>L_0=xW0&;0@lu8qpVKVkj&R}AQO<(th!fUEZ?&QU7@Mv#hrd}f6+bl zg3%edEqL>^ePG>;RARy0-D*Yn(fEy|?cJ-0qTEAe(f$z=nhyrSn-)X{}!#k6KWCd8pI5fs?sJJO>NWBejYm#1N z3%{bLam1VV^+|+c1gGuw!ahl859?To*mT!1Vsm#{`wWbgV#aE>SLVGj)oM`RI zDgn@#473l<^g7r|+VOWZjs~XR?whY+-pE8NE||SXedRM0r)SDk^Q3 z-X9ik_QE(!^PE!l{)-*tOWvGQo42+Kz2gv7%_e=M1zdxI20-iK(quQnc-Hb9l(a*T7 zPEYf{lWIy!ybDX1rdspBz zV~sc$($ZD99#*Vzc)l>HqL`LEpAdBK@mwmP>Xs3cJl*)Rht~PvJ7y4}#@U3hFTAzW zYNbaGq$2e3)~+Iq-DCfaw!R2c8=BJ(b=(RUuT)ye&g0pUk`T zuSi0UAoUlNf`ot6h>6dCxn`m@Ym)aQ_;R)JxAW{+P!3&I^wcp;N!p}oo!+0LYvOa9 zEo4rZ1_>I|Dv61-!LxyqTksJ@W|j?kCvrj@c4a-Mrh@DIqc~sDGMW>UMzqVes;D|h z(+9YK*#Bx?J}$#)$2O#wldhD9iNlx`p1fgyhHz|6i?%0(wQ3TmJQrye|M5<}nbme; zHL=MUnZecvG+(-{6f14Pe@j_QnigHc!A;Q~b5WiKw#Ki4xPIRJU}^RoSTbU)7-u!x zbGq?z?6ooWqBF&r#3TA{&~CmDleYN~%Yxh4!-J-|Hw3=s@(~_f(F4u){3tmuEeLZC z7`DFrIld`97n*XPP3h!P2K-*;9Sw(jNakW)ro6a1OOfX;-dxZKe(hP&vj+EaeU=T7 zZgA|9e5h_TyCoLg3foAONOAgl`(RLaT*3krUp+3SA)-?v>SX6p#0y=lPh|}GRMS^% zhCaJcYP)t)uB$_1h$Hv$n&0WAbkXXo)OefsM8hM_yM&!U{bh4`u2Pyd+;&;6^a5pf zY)c|f7Cz~9NStrX@iCJdHdpRUfpMwV3}SywE!xFo#p+eR{TDUzA;<=7%@hz1zIP8?C--XFA^Yt>y0v9dYV3`UY@7hqMkY_VR;@iqm9BZ6^*c) zC{M(k)}vd2=9BWFWy>f8VXr778j*+B=yr5U3#O4|O+jE#_h;W9gzsCC!;4p}m@bR) zx5uYrTj727NlHNIJ$AJl9M!*uMKMBR78!v(%;dlz?zu|nk90P)Z*q5+pGX(QRW(uh zdKtwsY_{(=-|2HEPp>OUVV**mjSopD0dLC5Bu7h@`6?0eICA291-WE>;r~pSu!`z| z<_WBe9=BpH&(iMTO**qQr2_@u=N*j0KV@iX%pkFI>y&dAhdJxc3CwD}^SnoLL~KE) zOXGVOQZ_qGn-6#{1w1skKb7bu{;nd`9m!dZYkBMGW^c?@#*r>082jTm% z2!2+v$&Yow`RFNTqjx9t$?G0J7SxpEn!XMR zBfFwkMWQSQk=G*5i_oJ zQNM0r+J4k*52V)lu(OqV<(*}d5Q3ea!l{RuPz4{JF@%_Vc^fj!_#D72XULXDeK94D zFgzx7{Y9SmvbcyMGttw4k#IK*3rS>6XyP^V;b?yTK`E9Z4z;XUFv zHlx`|KRTyaW{GIBFfTXXJVc#c;F6fz{rQS0d-5ONZ8bMxQyp>ni-`L}Fp-1Jixqq^Vv5}!;9B7zn)kNb2Q@~k3ol&SyW3?`)ifPJ`E+M>Au>j~Y zn#y-h00HXzUsG#eF&(xPQEpCjH@3|Kf~*<8r}{SUnCN6uj{~?`X-|+6fC6MBMYE4K z%sk!dV8lJi92~4e2oc6|S;QYyo}XCFwe%Ld=Cj$62>}{fqG8*n2~=8t4d~TI@}gM+X8S^vp#kA-Xy3cy`6LqHZq z%hH3fhLdtWTO&zJZZNvz6S6LMIH)D<-daG0UFe&3rIBA@sQ5zSB#a`1jX{V&?JoBt z7Fpq9B|u($rb zNz|szD|tck3YdpO=x))g*L7}c`&1^rmVDxhYc{G8X7cwX;OtI&0B?0WaXjX7V?8(H zlnnb&I~SB#R3va)1FI|LHaYYA2M^u@^4mulFXs?nsoD3zH&L3ABZLw+W-w!NoDBUG zXP0&z`kpMpZGIKVgg%m7b976GAgAm*@yh57+L>=gug`FN#E*`WWxx>p<*I z*%csZqI99z6QU1*10l&qmCjrd_rG3%-N;32bdR6+>=O}M6|I4r^%C%x;HZJGayKN4 zFi8^gm)$yGbXBR(v;ERI+;(1Idg$_30>bgRx&hAXlV~5}XtJr#QuCX{MoFGPj}6?#c0e|cMAFgz%BoaZ-+$cS{)Vb)NR0-I@X0hP6=EOqr$W59oVNuTx1X$0nXfAl$FA)5@Sm{lVQ#)U#G_M zDfJIGp+QI=_8>ZOgxq->F+Fjgm?bH->5IR;PbDu6oSkg{VCb$s>XqC&kIZ+wdnmI2qChM+f$QRsU}H|B zf1ekLF0TGNPpbagsD#KER05Mkh5#!l4oS!DfIXi6r}t;r&3i0QujB3&Lu_^k?n1D2 zG#FSlGTM(-V-eG1C@#x{>b5CjEI2<4a4(d@xL9QwdHj{YVr?}~;uP9c)mF)y`CkK0 zKv_Z$dcu{XH!jDY9Qs2(%#YpFURjdyF~>E)isVTnZO}oLyUys{RySa8u4nm522Wtp zXYW%=U6t|Xc%(8Kq5pv}NUn!xb3<23Z?6qrXM7GVGEzBZWat@4Qg7cv2MjFBSaExHnKNlS!lg~Rug%T2V*1!L$c3ggGN)@5#f9LkkHJ`V$w5m=m2U6%@T@B zP7A7KO?vUzCkT?b4lq%b;IkdpN&&x60>Tm;u1?W;+;t{pqZ+aZJM$)+r8u$1RV4DZ ztyJc(McY9_;z}%_N^eB0p7oySOoq*UkXTZ09kn>$8UDO`*EQfG0xkoYKAs3CtgL^g za^r)N?#q^3DUW9E5W&0sWhC`wvLujN{zhUzNkK{tK!tK*3hcebplwMmoipCL56W(aKhZif{7hwKbLim$wA<$v+@)=_Qj>;7GW#M>V$Yxc5D9~r$odV$$HI=Gxack^}G{N+AEn8gij(O~RWx^iDz)VZno07>vt z3pyt>8zMAmY|y1w7bOWt{j=-b+EIv6N zNrPNGwrs%pgo%%2J1`qm0 z;5_`}vlB{!L(%6K@!|l)te;0d zwxw2V8Vey-@s3VNky=tap|NJM6szigLj>edbr9(#97Vzz0R5G24iu((gJ@1L5qcVU z*wpGoRaSWHwm=cBB=8#b*T*}NRMhbvJXN0UwnU~?<|&Es%(D$~T5n$7sAdWgSmdWv zf3OQ?fHX)9PI^@HSy&*uA8vF0;qb@@U(``-IAqV-^^H9YX zCaQ|uaw;9rm`Sc=s6wbB?O%?G9QHrHlC9UY|9&v2z!n8_(u8HA99MH|KI1*yU|LUK zAyJXMb<~MZ7JF`ghE*5mF#$wU_kTE1(8HkXI(nE>yN1UdRFEY6=4Jql>_9184Z2G~ zUc_yrO* z*$8?5X`Bc4Jlwz9>faat?YH^YIonW)z1INkE0^5=!_W6O7cd1?ET2uqy{`Y?6?DY@ zHY05i&_YuQPLbCokN+An|9tV^m&E1#**bkua`JFXx|a$O_HJB*3p?IexxJ1(6$*w1 zOG@v_a-xgMEcgu$14Sm=oKc``o8#;r`*!c1%qZPgXS;&0J@QtT*^KbFqx8_2mX?pnf|CGKiiAec}l+fch(`DZS$G% z2X5YK@B)5s5wyWPKS4j6p|xsw7M#p$K@j$N1Q5Pyx1(qAV>!6(gVm&YKXptYET61DiY*$8G}4rDV?&hejj^hD@F5rs6_V@k&#}yzXl+jpp|mcpzq3k zJr?m8n&<|*sJ8K&Q9Tfp%yE?z;2#nk^7+zZAQ&Qj>Abpq3T*f&OO!+ALF$CwS0K9p zuQz^-sF6S}tx*8g?$p*M-0jQ5^+aX;KGEQ{ru4v@pQT?9_FC+?r$gIQ6L()<{9aYr zrZZM8^~c^L^-V>3G=$RHiBkK9_AGN`iJK&Oo*J8Rpwth2L#h63@ve=t=lN!{Tt5IW z?|3IBm$v@hQ)!SUVLAeL%2LU|$COGIK*a?VoxhN8kIZ%XLmzUjmlLoTG|_4bU@1Xxz^#^&lY3667WFW z@dWwk7gk2A5U0l*16{S4*$RWRfD~21{J-5XIYq;5wh;(l*oA0O0^RVW`RW@2N^{-< z{GR>EZXpah6)F3#gkHSy_?9wzXF*sdAxq#6oM;K{SW2$;s_3=f&6p=SNB&A?#s+@2 z&$n$=bC{ZAq_OFuQm-78_IM5CqLJog{%z}f1uaRn!Q?(`DCOif);2?4L6lFc4dQlt z9zMo0nng}xQ{aV*Y6t;-Ikf5tn;A`Qifkd|Vkl2$=}XqF@|9~Dz!%X1W<$;mZ}jei zBs8$xKoetM-=B2i^72UYs^sHV41Rw7S&7`@)GR*f9cded(mPaOElt_T&<%8S|KWgs zFtGkB?pRn9|Ex7-!xgCX88_5BJE+B#uPmIP4ZP4OfGQ1>7_VLVMtA1Jg{>JnQMUN! z<^3>JWyy+&Kzp^=E-Q!dY7=4YbiyE5H_KqU$5G7_M1z9JP&Dhx(~Y@-w@3VdyDfAY z3|UEH_2L@x=_NCo4Ul|JkByFQW?U8pJLaVl#v#g#;U<}erXBxgi_ZNn=SqH3F=FqQ zKGVZ7PaWhO8EU5ub#)bEETt(mF%S8V!Q(UYJ7X|akGvO`48-bl3>0kNE)I)O9oU4w z#$eJvm&o_y-Y+xg3YJMX%l4n}YmXL`ns=`)4A}`-s*)gTve?=1wrAidABiU=2}v6I zlGxl8<($&wD1t<9Xrrn5qi3Z1l{&xjo$sJJ+}F!Vj>f^O(=p>Tj(Rsqzbs1-+`6PD zyIr%cZYKPT6(XJG1fpkLBe8auO4b84V&>yVw1=LARJ+L+jU zyQ4XQR=xzf20l)R(Y9CTwrOm^+}}vqJ1Y&3pm}E?U$5`pyB$0~g?Z;P1z!fqe^%cN z3NfHAGTJrNQ!)g~LmkcL=%hbOMu%x;4>){x^U<+I*#Oh?B{1?tWl>y2%~v1KC42z4CXz6Jz*P$^FEHmbQhP|u<`Vy=!B$AO`bVce4xW#tXa^G0`x5Pi zW{o6J%K&t~w@jhQB7u3;PB5u~I_}w%a4G-tRiWE76ALjUH&ZehYXO zvLFGIZNm+Iz{{ha5)~t}UP!54WNqI7c9N+H5E5_!Fcn4@^JBw$wV)UXb|5U{At}NB z_YQEOhWW?V6Q+&>g~Dp^83yu==xc5rLs~QNO_nnF{C+b)jlc5`Y*43ob(MSbS7z(z zj5*m&;b4x&C}_NAZge zM5v8E2-0K|p6Cb|TH4`#W1lfuU<6@0MLj$lrw3{$cQj*tx^aDn;H8>={M9$vez)LX zg}&Tp5W1PAn#+^6Ts)9PZA>@!X&sWb(ANt3ICl&BY~(b>-`YYv1Bx%4T2PB_%*U1) zOqs6i`(K#mS8-1?)J#?<;kIzqu-Mjx5}G0Oan}PA09v>+et*>3-Hk^>#&WK`9_24k z$H37We7;F!tRLE4;r+F;k;Z4d9^>xiW(x8Ga|H96(>`8Y2)zidVrFtSJm@nUUOzEi z`{|M1l#L$mbyjly?Yf{ZZ6REGtBRSV2#4qVa&5D5qe#`)(mgjwvOK`#X}IIE^4kLM zC&%6WoaL;zbM{`vw~Q2%Mthe%shx$oSx)~ zM|qv~&Pq$TV3txIo5mEJTF2*b{#ZOSD$3J7iaz4@k%#$T61{yyK5LpN)gmPNW#~Ht z>!6K>YWt&6o40PkIU}^17sv8_FC4I?w&(e@UTgT~dz8O>los0^1?w{2CA_UBIWWCs1#>40|#r`dTO=|)9W725ME3fFD5Jj6}&lf%6d{5j) zM8tb6!D)?*&hH~fOR^W6F9b_dDrhPm+u{J#F(F@r;LAoh(&-+^(5kf};Ixdmre3nd zP#mB|KX`Ep_GfGD?I)#Vjudn>uh7PI)}vn6u*8LB@VL)TGhAv5><9$4EI3NyR4AEQJnT>!0!rm?WDW^w8Bdbj-*TO zJlo)dZKU5ZZ!2cj;IiRma5Ar>rc-Rx6_8Ikxg+Iwl8E|FxGC$dlI#B!2GT?pI+DQLMNPcrYZ!MYD+T>GeY}t zmxJ^7b43!vb7SrF?HZI?_wRmL5UN1K<__HQKm;%!q(Wd6rrHRqA zHIb{1^B_d5(C%Ko*PSOVF=736SU1mjhg1u>Ex_!eF)^lxdQm>#)^JTitzDoSkiNQu zlepH#lZL0CE|$eqF@rbW)goOf8Ybp@^8{Ghjt;whl23q< z-(53OO1G~sT<1V{Gxl)tTsW0)TcfZQGd~9yE4L)2SSdZ7*v7Oi z;_LV(gkr)v{jxnpDQ_#*bR}$F?yuT?8>=9#W0_NuO<93dSabABYnPSc zw8_(avfGy1~i_uvtb9yg3e#?EqeU=to^?jBw_TXz#rA zlJUz?O_eVU;y`2L8`rZ$yFKzJ;+?DVz!G!?T_e6M%Xe}=2y+C1zBAR+NQ4Tmnx#$1x>wu+9 zn-gGl7P_Z*{cb3#@a;z*1o_eU&;)Lj2>ikTQ*(B|S4crh+x;e+aw?KCERMY@aHmvR zxJ(bZA+`%TplSkmRDQzjPvuHe77lpWwD6R_9r^feITvs3Vt#V@t?0SK*ntXiQ+wY# zKRA#Ne|kf)Ie-i#Kklt@kUKaQ5xcPTOPR^)kG^g(+NlV_Eg}-`r~dj!)%IjV zAsXou7ff+AvK3P;F#Cfqm!XgA)^fdj`fW~(L2iS@Qx5y0-%dnc_RJ#ZMP^U$(onC1 zl8&?j7IVi)krMTNqCJvZ zwJ3;U9g+FX@^*I}8HOC_6;|Wio#&i6`6dU956pYRC9G^A&v(ajfRmix!in(W0q-G1 zvqiz-3BQ}#_AykVi1KeglTCtN7;Y5PnHSRpvWj$ht=H}mPwGBxtdzbt{>VieMHHj2 zUltX8CHMte?GHtZ1MBL+ayw$3dBr^wVRf%^lfMMf@ns419Cadm2PvIjuzM&OHphmQ z>GKlyL>zHng#I2@UN}=v@P|?}&Cm=YXSR{=_`Sst3LV>DsAN8?2t6c9m%XC3_J?a^ zs+Ebgdpn$$?J2sS4?fW+D%S9^w=-s%)&N{9?0*p=pugF8M_ouzbVjVIDCbK>0%#s; z_f2XgDX_iMw}|(wC(ue5XLuk@)l&#{Zm@PxrkIWjzJ2RJrMpN{(V?#8&iu|&vG(rc zrumY=%G^Cew2INN;@xI02d%PCr*}Za zOvg^B=E*87%{$0mR$>IHd99KIAwo&Ne8W9;rXnf z*cn?+mvU6Ae^LGF3MH*G2WTeuuk`h;;?|6WCcl)v3FN8jC4KqKfG}s38Ro~sD?WMy zBQL;MYNgpsL6n`1d(Z5sm{YE`f7nR(TGk&k4-R_R2%;2|Z1E&j`2a~`aUR>uG#sW< z(Kxt<9Tgy832&OD0BB?l2vBY=Qzzy~z|l+%y#2(u3jT#1F`od*L-LD{s|9kKvgnXc z!Ob;Cm!jphIBUeFa^t#ROBL?CViF>ujKwr~Xt%AvD)0uYNi@A*nw*_`)0p>OijIpa zq=?t+<97EUCuH*5jggx{M#n@yKuMth$ z2v@qv5uX{&t#$ZK`cCjrq1hq$J>+q=7mf9~t=4Bu(jl0vm8@X`S{81zYv(W=TXJq0 zO*p)|!v+de8zefbrle)7hPVrm%k7g za@S!e;wt}wL%SVp2%4!~TjZJ}sD^+93egH{%v`kF7He^$6se-z=7z0A=HnQ8S|WaI zX0ZSY)Ro+rdmbcECq+MDt>T${FO@DnLIKP{7^A!DW+r4#Ymp9!GV_)2cu`y@sX~!_ z3%;)$jiHe0Q5PXnp(f)T;=el$V;nLbH}9HV!7W7iCdqi}9CAB(h{ zQ%JeX;Ho1@jBoFQwGHE^-dNx%X>gR3Wq@hD_lVTl{q-NppptuQjs*K$kbYzgrJC?n zi&e1>gfn!oMH2srssi*;`Ev+cC+D5fxoY!5S*XlwMdF5_d^>^_UK2)Vi}_btI~O7m zPl>wVrTWm8w)s_z8DZ6b#{xKiVu34rL`eak&w@LY?#&ps1%&L11XN=?MdV|knu1jh zJnf-%wFD5F4t79*21q?6S{gmoQV`E)Ln_Fa&-8tpWD0``y454aPH zE#e;BQ00nh|5Xe>Babf6y&fN?(?%d*-Ms+OVZXiR8G|$`IL(ifL>+M0REywX=MvB7 zk}P9q^9UdJ)`-YBm>sIbL$lU@>4%nxAW5(ygp!;wEM7E)cfUne)_;P%b*gNMoYyX? z?_bW}E(4?0I1fc(Pdn?RPR?w?TR!U){`!zgMp+lLavX%~K~&?gW($VUGjl!ckkj}m z`*#jR532TL;~c8^Qf~dA&%c8%Rl?yLbL%P4(G!7Ni z6JjGESJ@(Pyuk7Ym7iR~?Dyv`Y)I)*sG`|`D0gpRC2tpNlIGC1+MD92KoL%$u3wtf zT{dWpI=oX@Vx*rH$y^Yr$&e``$P^{j)`y%V;b5`el3!+BmLo%aulthOFo~|*DM`s zrlHCy9ejx_hx|7P#d4CdsR?wwC_-SIpGHt-YK!JKoI6ekagNSD8S)}|Xa3D0%w z*;j_uN%p9ceNf3taIRyi|G5a=vX+EQL>DG)CL*r%|2F*APl7zK;WtGc7?BTjSSOK1(eMQ@rEIeN00ic!Ak6B?X2%-rQP@ zMhwKrx86Xc-_MvqgQ)%ZaxA2J0&(>TMS4jo`IBFw%$lDk&`8%gz$1j#kIrbrI`Upk|P6RFOrUCo8M%F70PVIJ!GW@ zy4gfHdtZ?rJRH**=PdaT`pJNp&`xAx+B`O>N&4H#Bug7w#?7xg4{PjaK@P4Aj)qC` z07rCI*06lgn7<_HI*A_f4;VbySe=VqcNRtM6jnovf**BZ_y>*vL7H*AR$AWcmhcEl zxq^7Cg{Om5*qRwh#20h4l4{KVb3 z>kQ@#xpJ;VPwPlBs2$wRYxgG-H`d{AU8?M|0YF)f$7(&)3_3)rU41FWL?wk4(aK}6 zFUgM#qXsE&?Jn>t`V%t!iJX4J!j*tECW1yIo$HDa7X4gAr${Vj44pMo$(S?A#8u?J3UkgHE+B!;jKi)H38M5y zTX9Qao}h#n7Dvi)@&iAOxiXo-NN3cZ`R&E2FscC=9?OP;CVYZ~?!a$)(Cc(t`|mu@ z;o5*SfG{8DKKfcB8CmN&BzdX^g>xr)!FFuByjHi%R=P~@XQ&(U_I!iS%sNO~~@36{<8mqE}#M%xQ;H^QW z(28#ADxLD_WitT6ls>*3b#0Z_F&uvAI`GTh@kNqY4l7cZxQe^u>MUlUHgZK5C&IbF zaEYp36Z+(|@yatf5L>8Ynsv`W?a}+`pg6#TYI$>qQeyP%12D;O_^fi-S);DghO|ES zOqTMnpo~O5>URgsc6d5!Vb@TSO_^eg)m+d)*X8j&#Pk!q_=_Em%2u-OdZKVm{np2w zN*eB6SB+8}S|288@40p=aHJVMezcJX0&KN7Eb8jal!>5a)DNqk!I8E$plO+DT_12u zd7q2ALyHwsYTQzgwj(YjLtG_P)Xgve7(VBYjHa|yg&5tKtT%{$xSpZCW?+r?Oqu2e zrQFswND6Fns>MN0Mf!XK@)PX8T2A9)WnrtAEigP)2qeUo-Z$7-bM_@oBToay#ig|o zf^{+Gy;P0Mlv5OJqMUo4eN570G)#5w$eKW(+bd<%T!{|a_PRr^#ADgCuoBK}np+ui zIqR664GfH6J~@b}%+$?&oPF<1jpK-LfQwMW zAe46QGd1jr_uj|!rK+--cF@Rd@tpLKSh?#vr?u0AU^N~4%)u(sqhFA)w|?X=ELbTc=_>OZ}X7;_QDu;3aK-k3L z$5jQ#dDeGQgh(Rigk4O9c+^@-InC~cQPgC*xhy06i)66B6p_@OoOUk7LK`}qfZK1g z0{jez-A>E#rAsKM)hFV^*5q&vWp2H#FP8(ISVOqKeHLo3wJ8$Xe#_f;x*GW+_?g^^ zY`%^wz|}HUey1+=iu|eLD{JEXOSB{&WU%PSr*LqVZ(Or{-W-cSde#7% zDKp>rt|zaYYdKM>w`#Wnvw0#$Nnc%;L}4woTdl2 z@Irt{SEfxx5AxOVG!{pKINa-r`{$1x6CC!64j@#=E2TfSH({WP;h$SvF(~n~b!*)= z5*la$Z;pV%K-Ik`h1G$rR!NdBM4`|xkQ^c|Pl+gw zFSnb{gWMUfy5({TS|BZbY3bEw*uMVdP@kVy%df}3u|(+MA{HwTs4I*f{~jvSeP=*` z3C!sh4GF@n)S2q9O9m~-NYk4a7C*jnZ#^PsXL!R~_*Gf_2$p~OW6xL)q~Esljh{pC z>JPj_{OFrXPs4jLL2T;5t%oZv;OymwzCi%)cv1LI6CH^RvT`Y^-5Ck)?|@%$rTI;llT-^ zdAamf!#o7uU}AeAQ0aN$63A*us4XP}m4 zN4L32?y!KUgsx}Bzpy=nu%_q7gw(zr-!z~o2QGD=quNJjqZmSb*GS80c8g*Kyej`n zD*?lomf(|bFk35WVJDLywOF(5pP@YtYo=5PN@4-$s|>K!3rDKXA6MWdYvbbWDPeT3 zOl!{933n}iH+5dXt%Xm|+KA}A9h|RD@DxR9mVuvauz1t@`&6dY>g`AOmPiYKj!>a? zU;O7|TyNu)0Je3f@NoH{4j-pQtRMi%l6bP<8n!NK> zvgQqlHty4;rwd$bv0t3=yUdCQ?!#pE*>A_8V}haqx|aBgIVh4vl1|<$3jos(Qs3hp z-QZC+I!=g2PxFJ)f809Ivk~m3;@Uenh^O&{EbcU8Eg*fdBIW6xmQa=H8*?IF^h1}q zr>2{bml8|A$V^>ZJjjYq@kl>qotTzN@rr2y>LQZ9>8JQa!=2cqkrl|-5oO8o zQi)0*7c{|5O_=y>2+MYA9SxO$W`hS;^je$H`+2J}1I=vStB8DyD70BH-J4WI?0zBf z1eOGqfFW4!6eBhCcuZU#yrnty0+hBZZRoCO^%S?6+t7v#;RPxi$!`!t4 z>2XYO6VXM?goXU9$c^H9fQ5BKh?L~ku-x8*u|n7|20p&bbdwC^V{hn=TgdC-ufWK>kDbB-Eb9cI3rPp848!opwZJIC}r4 zB$KO9V7HX@{PN9cX)VJ=1o^q6KYUe%TR?j{G43_;je)0`jnEP=tlY$x65q&g)PIo< zf2|j7X@5niy#wKTV)S8_C=B$sbSzG@9NKL{y*EOt#rgSN48 z14|`u4?OtBh2&EsKb4au#NOB19X|mETpX!Hy;1YzK9$!w)?EO3-V~pMC}h=|bY>}$Dhph7ID8m z2o^T8lWCR8@cHm#vXHh<(P%w8Yuq5TLD~5XG5KskC2xzQz?jx2_`_lGun$DRpYF8d z1^TV6f9Y_d-qXCAYLsd3cx8}a87gzWW{bZx3bXfw*#`xZm_DfjyN!z$U~x)Y`x<9Fm$(HobNS*)uTuMv7JIey>z{R7OS( z)1{^O@VjsGTCmxN{e%rgVbBH0y@#Tlnj2J6%zJ4#VX`CFqmwT&&@oh^$maSDPA^Vr z*(A}`t?Zl8gjz;d-?#0f=KRNKyN$hh+@hkctWhqA^qR!?d!Ht^N39s(;bQW_%?&Z= zj5JVKT2ornU}Eur-|BuQ#oG+-K6Y{{6)>*`I81j%Z5HCmTY%i+i!2>(#j+jG*skS@AKlC;knl_hC=CV=Q<$;4=1^6Bm~Ma@aV6*$)*^aN zHT_WP^kq0(3fe2o&8?MS&Vgl!2p^aeAnnd$4Kl zAy*`(eV2;+8VdoWYclG_u$!0kP#kSBVb0I8KNsa3h>W!A<&3eSS9x6z?)!)a= z`$$zF8vNPsPdeTz9>E#piQ{`F~F1RAY-$!jF7cbX`Dmvso-gNZtvCH znj)m6nV_gK8_PFqnz-+3%on>JA=!4|&3F#!fGRnwqArfx(7@M^WP4}c53JL=F`Lc4 zfH&M_4{D`!zOj{hC;c-(;cxiMWbLi3UET9=EmXVTfTDP;LxD#rg)ii6ffXp~%Utqn z8<)BZx;WFFJ1`?QRm^lhUFsO48!D1v}|p4KEca{^OFRwYw@!WgMEkfbTo@&Dxs?CO;^TVkOBC_D#`70{9 z3qj03f+0)3VEAKLr6(^uqvLbc%PMxvlfM%BzPi&hkN=paD7O8AI+5fcN`}S4{UX=M z+s6)y0^{LUT3O#$Gm$wk|14-1+AH+Xl`>TUZXtK5;sw5V49!chkCN}h}4<|h0 zA8LUWeb+{Gg2`&|P!R=Ip~SfqMNfkHi|F{9@A&HwK=>z&ikX@l$6N0J4@wuW>9Q{d zmd2{BehA&awcR%VY-m=uOmQJ{7Q*38CLME=f%zWf9~63_^OHR^$ul>#NItt+9<ZnsWN2Z_7?Z{)?FT@8|t@V!9y=gt9fa<~8OT|H)SW_n9K{ z(7t?R8%)W;`KSH<+~fay$K)3pVFVI`u8aKAE*2wvAxrw8_BIfETb^vf5!Iz zZqnOuXhyYG*j@HgW!Y7#PAh+Y^a{a;^iYwMh4iwUEaJ=cdc9i{g3#3m%|{P8V;zBz zT=Df;OC|1a#I>`nL|m{ehRR}6sJE2?Ila<`q3S}ZCuktG`!EBN?{lZowqAo2SEGbN z_l%{X)|L<4{~DQJpTR#`VduPf=6~UzuitWAiwu67k-OYG7+h?BynJ+nIhT#Qr`Bv3 zdu!V*&GH{<0I>FYa96r6bC4iag2bn=1oh8!E$C6e-Es<3`S@wV=ZH35rwX++u#! zv6EiJ{+t0?veI=^@#3G;H~sZ!inldCYNgz;tgh77*@*bwpVIVXd+DFs3!kiRBdjwu zRK8EYwJo5&x3yr0Zs!tp)J83KLJP*W4kz(x8`}Eu z?ahNnY`0pNn)M2_#z)kMy6N`|1K&aLxa4%&&n9wt5mJ_`=y{IXfu7AIryZ~#={qc+us!@N5a$eCTp&QkI>3VCsr2F;dRFqehFsV71pl~@Y~+@Y8XGcT zF5r;3u7@X#VyH>@dCcSReBrQL!wN`?_*R|>P779RdU|01a_p|I?>8XcuTMcghFzk6aJTNT}afAnw zye)-l7TCXl$$aq4fD)S@i*cC{9s~CY1N)erx=LdPwZ;^qe53xe1FT{GK_V#*pvC-3 z#%8dPIB^!6uQ;mq7^0}lDk)VHsv5uyYZFjVbB_r;huSBkU8y?ns~x6(z^Un)c6zCQ{6EQ zDXtR;;8u59h8Fz(J<)fc0BS#sDH*Cg0s*(~mbmQqH#=`SZWPpal9c#ai^aFWkjt!@Q@V zzA^kkUjeBLZ%%C_cBH1+A1y>$-kOOt4n`gl@TEgEeP-%EzCJGP#qg;^AI_crZmmAx z|DUyg&FoKD)H|gr39(u%66Lwx@7*`#I9buzupE$PmqBcHVZ=ZHe$t3soRSi3biMml zk6IBU!zJs>lOu%MZ~GD~TVCUd&u_pdl@g-AS#JnUy>V=qP`VhIL57RE6-|i{spS%W zQ$-?w(lZpJDJi+GIfVH&l} zbA-8WmY|1WS|%s^^8p2GpMildCBq-@;Sxd9_ggI%jNZ#VFnf?9HF*#l&!Z%z7LBeN zcW94O1At8E;RYU_`w-m1R!VswdGwZNmgZ1usFrH3gjf%SnzdA9XO~Uqr{nio$m6{@ z?wcFifceyAW749oTiI8!1GVD*{2kOz`CnI>U#Xo1FR~^ZF1)j!`1nL~1)@UEuEIhPoZY)^j{+v%MGjvQuH8eD7*9V~H4^;Sew~V(f^l7siF?Z9V2=s0L=cB=NZ8jTncG$Jtgnz!#xd-&z zMyy=zSwKIOw`#E&JlQ>Uu)9nH+jZi%KYj};rH_AMz}Uz0qTtI}Dx@KF&5C=6CA?v5 z7ZAC{1&qw;xgWDih^I!BF^Cl$)5d#Y5`IfGVPSq|i4e18E+ldx`sBkPHp%P4oAZUy zlnFo7mzk-1L{6$J0U3P2fw+xYZTRyWG8mI=?bT{q=yp`cn1R`ssGp;0?gwrFZCB9% zbIjNeBFn+m#@%kUC_ba8as3To@{@Jh(Sw;pc={GdLfNVfd08)-EXH zX>HrziFv5`ZntnpI^B0CgRfGJd(VY(8WA^301p$u0cS&l7NA`qY6^I*oC8vE1Crz& zFNVDJSNz_jFwF&j4H6|zh;6>LBl>|7A{#t|t_;~GYz(}80DNC>B#MCD(+3s44*`uG&m8)*V1P*^&_5)lFXo{g@d>T9Y@{1^{Q zXMLs_K>Cx&!HHbNszhE~Lw=!^adkt#=M1210#qxgsE8(8r{cgbKtvO(Fu5*6hR7Sf zDG?8OlTwDl?Gm$TT?Wr=W97}$gY(60he(>se3`^bnD~7%eh4xZj?Bb7K|3LVm{L|y z*uJr(fZhKoxAe&Z&9ZGXXCQy5B4KYfq4ypa5icnzQt?$30Db|%s_%6M=K!Rtmt&N& zQn%KM=ry-liRueJ*Fi%5s4Gdr!4(U*WMhZ1zbrul62544dMlvW2(yjM*8F=7pZ7nv z=mI~i17@?gFBJ5}rdPT0f~28jFTrW5N|OcJ2Zo^o0*vLN$r+`Q8l7x29Ra619pM!)fHqMHB}8V%5U z7>uZY9mS)ZbkTCe?0qmNU%sUh&;8Q#-Gxp7-7?HMx4On^hC9H#KhpW*{Z#n%QiRpQ zmcg1APpHo_+NIZk{!0RFASbtZ2Qg=3wA8OXU%sOxCel}`jWOx9WxP3+M`5Z99Plsu zncqT#qWB4tNG~)wURRg1$LfPx_(xjFDLD|9`vWd+n*%DmVHa;n{Z~}inuu=R(EJPS z73(p9dw|R9tD_b0_!T%`PPr)j>_ruIB+3q4bw0*yVBa)2ZCc-kl$T(J^EGg2%OyF!$*7=2O zzJVfClZpEM%JCnWC&rbr(IAKb8XATcfCb|BkJgnESU#allP^56Mc2!eswBmhV@hmZ zmPbLbq*jlSEpJbw)x8T1C0oKYShgqVWVj07$fW50a^P$OK-mbbKy)776hm{}GB& z{6#Yo%(^Pk}pD1d%63QWrC)juVEdOtw`!P+AS(LF{^Ze7QC3sVSu&|EeY7O z!qfC61$fNm96*dubG0Mi+byCEx zmo(IOuJ2~1OZG6}bUuq6%b9n#e~|w&OSyYk#SJ*jOer=v|INr@!N&x+)@0oO9_egK zPjS~NVg1@}3Rz8=t%w9uD!rsPUfA;btV)G-e5*xz8Df6-UfyMI>yt@Bl?*@q#wq0< zt9JxfSm$RvW_8PHdRofWf*U9?UHwP2nc(c%6xXHYS0MI_)Z+YFnDACsGH;h(0 zVk4m3I8;B4!FTys>+%o>E?2Y94wAyJ=|}imc)4Y?_}{Y2^OTMF3NT*BqY;n=X+mpe z$4Oqe3Hys*Tz~B9?ObM2Dr`qzM+nPXomPMxD^fq~vuSUQj}@7wl-&PNT!P_7KYY5X z^;HARE3BaDl@i)OWvaLa&lH9nfa-{|D2|=^Le$l{GRhb_>&6grUmW|x7 zyf+;OORDV|-P`5Gk`{RdUZ|8MBwo>cK+>Z>icEA~lm;kCg1kTE1a^SLKZ!8%#Fl)g zu&4*p9vwwfG9VSySP$w7;YDNwKJNainrxE*#tm(SD<_>T@~q&S-Rfb_g3H_Hioj+# zKIo!4GBgWGZ{){p*geIxzfCKqd7_mLLrapFTAkB#>CpL{E!bKfB#U`HkLX;%6NGdHE{bWVsrKaWheH8@gs2|g+8p2}F;{M62+>8H0 zX2T@trVqDQD9DKAP5nG9@}eFG?*`~4)bL7RDj#CH5>uP0S~h9UaAm%vW;6~wOz2=7 zI=vz4U2@S>rph*e`S9D9C@$msw~vcuSclFL-y25$mScY6Zv2gFw;&Qc7$Y3+RUQOafd7@fw9ck;V{@tk6>R2&37=a+Gwq-c`^Z{VxOfmA z7>)qz{cTG+onT#JGQRhNcDEv=;y>*1@@v|s+W8WVBG zA|s}HKcYIeGRW7TcmB7t@`Y$V*bH&~Fvy-#1)p2m@B`cBfrzG14!v#h69aC;LAx=3 zs;-J_f#YpK)XyGxn~$!{wxC;C^N3cMo-mJ!ri(jVxex1*IiHUE;RG!!oRn_fSz^ z`S8c3#k$-m+`y)YML$kO>=2fxlR`Azsp@xgU;%afIxh`qoglc4cEKTWO%|t+L_(LO z&~AyH-&vTR>K9&O_%dce7t*)(>@tZhl@|JOm%^tBs=d%F5$9|LeSSUqlD@IH-y9@^ z3HPt63r+bn?*MbKB0X5NFs2w70dz@=ylWm`MarcCc9MDWndCB1(P4IWI)2TmSAq*@T(S!kP3*H1K{}=WP zm>@_YwdI#!*%hKUeNCRvRCvFgO+39e&@L=sq%{W#zOM;V{jB?N#6#R#N-eKP%Q%&v z;p%L=0+7yl*PIraa9Dpt3D>OO8y9(*$l@)>ZP!M$dI(3UpS;NQ+uNB)4`WxLWv7;fOZjYtk%vA6GT#@ryOaYbfL*BzC2%fAJE6T!7=y30A zhF2Mexf-n;1k7YaB{$veEr`G<&LCR<#roQ_w`iv%XwqVBZ*gi58bDZlqQ=Wkk(Qp% z1>C~5zlN*}L~60HF-y3A!ju1)rrfMvr<_sy{U!*(Cd0|qA&wFn!@s3V1$udGk6dZmMN}29fYctlmhyyr*zZa=RuA&=Am93=#&$7u`tdJrlZgB0)F(xw14yZ(k51iO z?Ad52RrWzeiV8&}z#}Tc)$S^WDp46X?5mj?q^=Z!D+}nQoOKoI6KcqfiIBZ?FZ@3!?jNdxWbxNq4pL z4o_=xQg`ZKfMzf<1kl7X``7}mg!EI?#Qj5OPSf3j^0o~#;&}Wqigi95D`;9)xMsI3 zI(z)+hbg^EDS^wake9QMas{1KRzy4Ksev|^3O4dXxgkQmLiGy-dxQ|4x!QCpqTGp< zZ-wXmgV|u)7ZmZngs6C_ExDhNp!|&O9QPW)Oi2r04jR6-gOHd9c16d3mnQ|j{w052 zS|LN)(JDY%e~HZ<(}Kh8kaqiz=bh7L(98UM9;veVHPz+wtWa0_@6He7O0o=lWxwob z$P1}y0;hZAOPeMC7l?^bj91(-c=mJF z;}Kh?&Kr7wvMZ))1t;mtRQq+5pwi5f;l`FZWt!|w*Lg=k^Wi!ZxROyvGz{1`{IRxV z)X*(anP&@O=Tbsb0x;`-5lij4YhQEYqMeLsMw}O1DyVlX3qs80P)fx1#i!q*k+0FE z8^0?{qa};BbyaxKfq*fhX8PEt-G>^r{7k8B^h+UYy;qlr4ETjJ3em2km`6)D17&^> zz}-Dq)5=boM#yfW8Fme+?r<~U!}gfZQrLQNh;sGa&(!M#{37^PYVD~W{1Zwsdz8_q zs31FX6R>l2=yU#@`tEm^dJlj1OEfV9N7*VrMAIm&P`ZlH`$A;+iMc*c)eUaS{ogF2 zs@R`&huCtToJB0Pnq-w3o3oXLA*l{@;9s=mM+-}+Pp)=CU&-5)0qrh`Vqeop!OcP$ zK#E`E#G60q{Z9QJsYvBU(4spI-WDgr-<{A96H*8&Rq_&@MFH}x)P4c>2YaNT8nG&`hdS2S_jp((SatdQsHj0{fLB6dE}ZXuu>imd}h`ofP2WRQRh=6CAahc%l@$BzHCgudxaOBv^EaBawgfapWFIYEtXe$Z#F z%L~O$D{G99mji$&NWz)_MzeE$pX1_mK@{3phqV(tj&@blXc%bByBnnmZIn*3YF415n7wUsmk|scQp4ZPaeKQ5 zRCteY(lYJc$vaH`E24z%%U-E6(Cn}RmHK4l{S6$I!gkKEujTY${~(6Q)#@NZ|LR0xQMf-5H}de{K>&65He=-&gYzk1f?oaK`wun zWKpmyeIk*F#J*99AozyP`Ob14Rhq7sf<=p$Gku1vJvaWxQ8%&_c6H2;7l{~xylK?{x{JH*P8C7X*h9JswlgqnCje@#Mf06g>|*C}8oPW- z3xDscOFYdx-JT+U`h8-0YV!?QXI9}At=#-)6d!XKk={do)1vN%u;T;=paB%w_#^Je zlmn3Sy+O6rt8nd9RCi@*^hO$`5T2q)>&b|+DZqoYckM!A@ELH%l5M=TjHvvB%NgV% z+#MN_UkMo4x$OxF7TU1uyweI>uj1G`*HEA^kF)&?!~CS^-Dx%ilf0~hL~hg{SchRk2=DU+rOGL%g)dZWPNlb%=A*{ZB z)?}d)C9l^>FHhom$XP|*`FR=n`U)?xw!2Z_YdMq#&fW(2S(=a|-nw*+lYDPpkjmVG z?9=1>QTmydRSn#b1$SCc0_olIMzq{BE8LIl&b#tV@~7%Fptq8H4tl*t*R)0A2h#p! z^dQ2b-c4D3Q7=(|V`zjYNg(`hK>`5>epzDa;2&?9tYvc2f+kFdEV1Zyb}tWP1UsYn zjbD!(!lP>bP}5ebhE z@xZpI&?L3KmT5j9OvT>wqP}umLqM$s^j80yh?Osmy|{wOLP=twu+gjQjyKcmuB5@1 zn81!e=0dNJyV*B&4A8!1H+i|%NOYEdo&%amH#c=uiEB@rlNg+_#>u=s!cyI2XziXX z`nqC{`#QuM680Qw3FNJ~N&c;}GJ=}y zxQlWBs00IlsRZyLki+zWBKMI{OMYD;ZL0lPSRdNzoRjbF#loH!uuJ=J4G(DCE%*5jpz;;p#`>eFY} z2*+aY2NjgM!6S)I=lij|LkGnzKgFsw%^=c0gw-$YPKcGYDx&lk5qaQsPDC|Eez}~g z)r9wSa|;M|7f?$wJJ$vXv=bbJ3|KChu3Qx0{wagDx&1OThnnm0GcZ`x%Zys@>KJ*u z@t~--=IKueRIpczi}D_{k>csiTPI6J8XjRjK0VM`6w6wBbterRktT2kEBb1EOrMeL zF`0i$@4tEWK-$Dq=8!RGKRIfPFiNBs_T&6goa6LE`(i&k#){&32R2ct&!;VRig zSG(cE5{cA7R9yu%1N32F^Uo=lIizkeDv$Wi9BQ>)Ql<#kQ4V5AW-ZUKXT#W085A|0 zK;VnC$5$m2r17I+5f4ldCj4G|ROgK2q3#_tJ3HZ9IW~&C5tcrXypVDegzUsB(N*~kBkMbBhB$Yfvsro4EFlFERfou2LIt$DBTr?qZD zt&^d}{RZx&M!=l8x;7Boa4V%Ds@6D>G0-$I?mvQV8gZzFKSmNs%1Zw%Hn?IaUuO1) zj9_5sd`Lah$$YH-($~lDB9IJmkdbagZ-^&J z#|wf7SIFZB77*f?mzIhH`ZT`ByGuKgWf-b#&bhLQxO~cQ>h)TlSQWMy^z#s$SC3Dw1gUti)SRk0WQDU5_4 zCL^;$@hE>jPIUdj*0jFCl|k0W*siqyMj1YoP+m-p`4I2k>})PBHZ6E-*QDQ`PQ;!B z{{41+hdKEA2des7iS&rq(sDv`QrW~4E2*|2UW-UeK}Dg6Uf(;WAW09a;R91kJQ_Y$ zdmbS$1;4X#Wl?%F*dFb}*`FqqYHZi#<;!{7EWTfH_~XMXA3w(cW{0BkKn?f9a*6G# z>nl0i+v&>78hb;RWxtW`RKsbgr(eG@8}Rmwhk79M7<4xE$>iO#sbfa{Ty_$>1J^s> zCh`5~>HN8M_vxiZ7l&AExu)3iADyGM{4c1QTIx^Bgn-xO4H-tQO4xBn-5tE5P_2yL%>@)H4;ph*78xWF5*eR@6f!||I9e6!!YW{t3y>rEnZ zmGT2iU<45)+A}}w{p~j7Us(<&Q%_=v6a$e>4&#+1xi6hP!qnI?Itdaa-*L(NYI~gb zuSUhYZ@`nP6+3~B!Z79a@jWAJpUet6stxH@{tliXr-drw7q8sbVp_(jL zBh)Fn6sp?mgsqcpEiWI|%q8>qgyh+@>d~c2Nf8_xsUrk1Oi&4cZ>ZTi50#@{_(q6z z3X*I^@rmkLQrR>G_C5uHlH@vZa=q$9qhp{y&AQ`SRBh}%zVWyOeu-uLK>2n!VI1ba zDMeA&KP2R&TzU@q-_ig7iG&nV`9nfJVN9X@KS{{_KO|&c{5uh`|Ne~sZ3&N@KP2Qm zWj-nJAA;~7g7Y6(^KKGRHSt7>+{D}O-*D;we{ZM4kX%sPrIZFA>GrpV?!^f`s{2j( z3NPJ~GYa9$`h}+^W+Es4Al@B$bdKjiuGY$uOh5UXvOvEavv+;mSnppv14=Fg#lFuV z5*l{{O$fAzpiZSGUd-4^P}keGUe`Z3k(uoo_#fjHU*AJ{Yw=G{7m_Up~ZSWr!?Xi;6AUkTQ@ zhdSAp95+pBr0dp+c=3d>4fyXHJ$vE(X;OztdRi^W?MTh3uRA!m_x330IH4Y&sWFWh zmhr=FV^3Rs3Y0!$(2@B|Jmgz(^^IBwPxXjPIRyWur%w9vu%QS%GPBCs=yE#13inR! zmpyXYEMhMSA9b=T_OiE_djZf!<)*cMoLl<{@e_e1@k0TMfZoCY42ZtWQt}OJE_kYe z8)uEoGsv7n4VC+J75}|pCe^_W&l8SnL=EM>fc%Q;jqnQRpF-ZwAR zM`C!TDeqlx?st`bYo!ex68m+7i>Cn@J~Q^o@mw7OR8G!pslpnqZ^~@zV6@cXsk~n) zD3qOrc+gcc|H+j8g_uXVy75PlhXCkzsh>>5kSPD~S_05B4FEYq?|WgV_X>yGq3W~BP2vtTBwt$Qga@4?dkP@SAWdli>EYOa2XSYRYCFUKy`VYF`fxf}M&=zhScx|aEva+1>^vL)8f<%?uP+US1q1| zITY<;+j6;5y8639PKaryyKn}Ij3BwSzHdm>=K@Ya+4BP1?H}a}z^j2D3Jm_?$yaIr zhqr@--yMOEMoJz({1Z>sVsw={9*qvzGQR%J0^oofTl1W<8VHBFuvOQ68jAM!Z(pST zH|zMy_nEPj4P;?*m|A|uj)%mf$(INyR*!-@HeJS%>u1CQ-vP4%>Dwp0gL(wUIEI8< z)iekwaKNJ*{tw*svOf_gB=bgE(1{7v96>Y0iCVAlvq zm=t92(10 z-1KG2c}jo%UKb{-@m$&Pc}xy}V|4FEheHG!J_!f8<5Tv8WQQY%X+sPY{b{x^?jqyA z8&wJXAInPZmqodfu&OuSIs{X);k}#RpkU^L4fG&i@BB5tNq%SNZPQ<8>uJ6kRLc`A zP|AmcjTtlMHw9p`a521^oH~YtY@ZO}zcQIsur3;{Q$JnPL|0TI^SS$1Rj!JMtjH0Z zn8O)bv*m<{c00Vn2(Z5^lLlFL&fQb{uFew1j=2uKTqNQU2Y%7+K6{F7=GoCnWP{Ul zNb72Ap(eTFNytqN*-C?Urj@}8?405W_QBV7t>FugO+=GNXQE`3ljrw84rCAkxF;yt z6PuaN7dh3<;n$8Szo!MuQ__e;Mk1Khm+^r4^{GAmK;&klzs?70GS8IQF}X$?U88{V zHRhpU6RwKQK1SK@W0ZdXCvo>>Pu#g# z-Fon2C=b~6NY|u4t7{+B{k4}rnTn4KS4HY%y`k&|nQY4oT!$p=^KIGCe- zxdz7U{e;=vDJ{X?Eb=jNW}s0PWJGB3*-F1EX9uy#5Qk%}-)D?1Etu#k@})fW8pldZ zzsy!l`YnZxZE&msSN0BBLq0#sn$JmBo1|<)f;5Qr<0V#4$4NL^to$~5B!%Fwop(1Y z*!}bzR9iWy27@DWf-HiWbidXdklP1-wiDiYb+hS@CG>_8Hrj>s-5ExR&ZGdFhvUg+ zY8`?<8A=(?Eg8^J4qmp|j&mgX#2m+D4J|JB_zM^#B{VGhAnoiO^b%;5O@2a?zU_?Pew71$YujMKkbN0uG%#fYV~-D<%|z<%fo z<#(FUx3<_Fx6e;3dgkQf8BrWdVRiuuxNK`VogxNNNY%3t22oI``<)8x%Q^S$xXp19-TRU&*RzN^y@w{P@{nV-UAQ^-!UZ@w_(Ny%>PwX9uZ)S<8{{->Pvu zURoIw4U}30NFHN?v!l6OT?2wf0W?M{5%eaJs;)!R-&5zgGD#9z&mqG`4c(A=rY~&x z+-NrAZ=|f9Hf>vpad}x8DE?Vzyo?m$&GY=aM7)(cS8*aISxph@P40KTp6|B}F9+DC zKzIbZ#}C^aB9qe;==0>V)IoNoB-sX&v+~%1^y9{wH1o+lQaolsLe7+3{5UztQt%#% z2d2@M+RyJ)j^6f)Jh=jiZ*W3rEvV{LX;yR4sGgn?=|s|&a^ycyUT|VLi&7CkTxWjw zSEm+k^M7lkc9{6|xRybg9jk}`G`SWhE=e*jXYsvv5^F^`%OvR*;nL&$SY;S#T%wr~ zttvsK`n0Q!K{}ZrPrZfCs_Y!+(BrGex5nqN&^)OFN&!09_-Qa@>+%~`5u$=0&TQ_d zMet3E;NaZQ_wX#F`!LyijEz_sitVygGcK+{X`fg=kw@W3DS83Y3O_{z2K$)0wm}_< zx+2o&d=5~BQcekS#c79(>YIeWtzoAL@2?b~yDo`e&fF`J-1rv5kg-42f&Q?CiI){8 zM}2CTZkiOe6W(J^whJuhBX1&#UULk%8W}konz&8IZ2);wDPcD@f9nw+Ne<|jJ5vxV z#Q;Te6K|H2itd+X2Vl!VVcbfR*2iW|&0*ht*<{nV>`J|eZu*6tH7Y$>vW9Ck?j+Is zvciwkJ9eL6p(vbuX}v|Uf>6NSYimVuyzG{RJ`y5$|NGi1Ik0fVkr5SKt8~1+2uQ?7-zGg?ixu9*(gtlFA91OzzW!>g)y?$5;Pbzcsg zPfi1QdoDdx(;dUT+ggo{zecUIYg2Q{Ec+FKV|c~JLh`g&u$1A~Edt@LNV7~fKE%o8 zo_0n@k-G7qphNEqj*7(uuFPT_dJv%ZfJ}~f0~XJ8sV}!_>^{0ghH41|ZS$X@N=+V} zZ#=}3_0anQCS)b(?J(#3>oP@*dWxbs%vRp@Rvt$}(-)>leab24_+rf$!g?G@oz|-< z2uvgG;wEK9cD;B;i&H5_i!-LkKHWrvS^1o&?u$RKY$)O0PD$i?7>h6G>m>9<%dJ$Z zYkP^rZzD&s-fJQ}W*dPQyebF%3-BahPXm?X)XkOPkfFkbgW-$1P)E`gsp~}g!sG2# zzR_L$#hFsknO0X*EsFbi<8j0lrFyKdj+*a$JygIO#V#-`Om zqIH%Y$}@1;0xrvW>_8JHyC`D4N%5H%mnmZToHk93Bm;tjIMc zw<5yUlSFIRlRdfcjsQQsZy$Dr!JqdVuJE9cwma7D@9)>|$hGC?+b9sCsgK@us3Y>) zHH9r{+!YQcDL42DRS-JRZ_O{l3G68wH^tDCpo5{n&2_99{qj=SbM>(tKhv0xT*x;4 zHBblcYD!VSNaSYckqFxWV?39qs)X!EwF|8GO-Aq9zn*a5k$wpo#p1C76X&^w*Aq-j zM>D;dP=)UxUqy!rS|n!)p7+GV-IkPfz(7rY0`ji07E5Fp)Lw%Byl~ z?;WP06H`praGS@u>WRgIQMjvj9BK6iG<_?=SFMFerH7v8M7$i5D;ZZ{5T4$cq}^}Z*i?xtX89kxny_nUvonNKzY=`z zLJmw3axrlJU3c0{5Fg4XTyYfJQcM(gbUX02-y_`Mic#43jVzdhReX6&5ItlR`^0p2 zgTeVa<&G}Pce6+hiSd?G2OH13D&ZrAo&cqxiik8wt=DlPbroS^rLSXbUZNup`dzyr zua;v+%+hCc^I0juMBc8h$d$==*Ldy1MD(R-)3gEgpBu4Fm2)W8OQPn}2|xlJRD)hf zg*7ZPF|xr-SX^k!80_DAhdpL#oxq%e(n@{5V!k`Z z&h03f_9A{My9lp+>AQpe3qkBSFCmg%_blgDF^@d^Grh(aC+Weyf;+YZ0Z~TaEAq%+XHVp*uatmtj)9%Fi3OgT$B)d`iS)j6j$Gfcw9Ylt55|S=bXDyIag$N#1 z>9`gyh!HK$Gp&mg8C#Cu+e)NF~`& zFg7$$AGRT*o*M7LRkDZPgClURl*uwAobP^LCw zx5uc24N+Aft-kCl6mvFqV~ZQSc{aSjvw+xO{P5M3qc`2=NB{oeXd>bDbr*trTD^pN zi>8E&vgP=%)v4bD{dXbc|G;C*VcU&Eo|sxs7O@}E)txk;)ZFDEB(sN=jUVb*3W!lOhlS9+F4y8msng> zJe(;*R~sFCmDN^bQNp8%p4EH9{~JU~%sEfziT~xJo%fH5bzfQoK`lobV}^6dO)@wi z)!_;pMXiM*!E7!b)4110azTr={$A>uBWQGW=LQo`GvPe=g414f*{Jw1@-&^J@t@rU zd^}kq+wr957qi@DlFiHI#k9EbYCp!DBqV<3{bZUwBw^6Tul z%b6J;Gi0Na;I@Gbu&T&f6`ro8fa;p@NQ>uHY;wMD-^f<^WIk8;pu|n!LD<*-SdI|; zPWsX@t#f%B?ZmHHrKo!#`K3MK#gDW>Or%$ogmb-etBlgq`H~OD(K|p5mw9h{AUfDm zss-Ep(FrNvf}7VVGak$wPH9&|A7?O;Cf@8_W3(~g;K zXA7*CUylpOYA)iFJ$gZP$29s-UVioKsip)9yvcjhIZmyQ3q0!9fVnaBz|9^-Grml} z|2jTro~*6x9Yr@q8( zWH79)cf-<1Q3~Wb7KHQZu$Hd&5a5MTAitii%}|Big;_9q)?}NMwg$+h2n(VA&IcQ4 z=nbh~3Y;gL(6Zf!Zsv_fqfSOx7SgF-^IeK0OEz0SQm=DZG0+i)n$6`PaC;S-HkWfC z?=8eY+|_LfdL6ymDUT*)wucv% zyCH1{UsDo0aAv`ka48}q#iVs(VI5&{buPNb7^AvAhf-K1BQMyCGL8g@@3@&J=!O*)mgkU7vDnL^odavsq$-OF{8{F&MsBq%$xeE&9i4T1)CIN@>$AkyJqGV zN2oZD%H`f>_;3EU394=f!_p5FKe+LpcC`Si(k}arfbcW zZse|kA(iK~uyDC6E0*?8-3;TI0m4S3A_7p&d|;$2>15S`;P+8soH@+@-hCVXL@<2( z`HD+}meW4p+YB|E;wFYX_D~L63Ro~ql?N7oXZvoDY6H)?~vN zO>&55qBPfy;ZN9!+W!>}9&5GR(YsC<&$BmTIsNppFoT`UDD85u^rL$XeYOS3_FEtt zTs%QkqIXStM=*Snpw(&_kEo3qyd1VYlq<-^FU1Mo4DGWfB1*tAXJaH7X1L*897p|liqbXb1dOSs)o-xgURui!?Z9|6~;FtRoiTNN_sUJ%BlKV8a` z1#Uz4=1Yy6966NTS|U8D7(4$lq+#Z2$hWk_(yqE@?~oH}|JFB6;ma8mq|oWQKOUi) zC*s$~`Lr!W%LDs=rF|VxgE>)NiW9ymox&LB5|ipt#^csBqM&CYo51c){Jcx&#b0KQ zHRw>jH!OZ-^U-b2ZZgAtrv5<@&h(2i#$mcS!x7xm+uV;2{GulBP9nZ+#0aN$Sy~uL zN9pM``J)&4`@GjRuozJD0?fa?ZNKO*ZAtl(dxs>Nc4VP*4%YgnWyb2Nixc6;>S($Y zuKpXTbJ#dB*p+(7Wr9ue;9K$X(Og$`%9`m{Y_jc;u1sU22*o^ zkm**_6V;Xx9lS_ovZmA9uTkk@hW4HiPz=Xj`|a18{%xsZD@M7Btm14}QpolcmWR*F z_-|~V`$0Uw)zPU0Vr^j&0%k`5_AD@5BL?SO>E}=J2wQfyQ18z;aj>-1qTwwP_A~9w zUS)+F14)vD-nk3~5Xv z4qnvs#zex0!SqPte3dn{v*9*vAAsf8_-J}ZiaZ&<7!S|DB&Q? zHXEq4j=UJio*bETn6b)+yEy0p9>fO3`n`Fl4eD;H7K3T8+hjQw zT=o^dP9eU9->3leKeEgM<_Wp0R6lB;J0*v@DmwKZ3#^o;XdXQGIUXJdx<1@pK7MI@ zso>mZ8y*&y&c9kt4s+EogYk(@Ml%f*nBh;D{ z+1?=K5CddwrzluYdC^qbltt@M_xTQ6QG~~T-RK?PUm=WOncC?uCOy8sfntc~OgbeJ zt6F!VQ;sc9Q$qwXuAMMd8mp&WcO*s8TYLPNq0`d~EO+$SVdnijd_PwzZj-$kOisY% zT&9+_2z|^6Oi;ddpEtfsm^Z4=qi!dh##H9~v@`ng96efK&%7MdZ9gz_^gyX_7FihR z^D(b3-3Nh3EB|LzJ<;5*3y&s9bG3-H?&yc!B+`e&!Qx8EpQS(LRMQepkQF?R37W`H z*&EqQnVfU^;mc*CXuy?N2?gM=(|DzjG012J`%utUYEjFazPudk>|Azr>SCaggHikz zs#yP%`?+TQuI}}PSupjc)|WSlGwzD5wmVA(xYl+c6Jg!Qdg+TfnFwKaqqn-x>4Wtx zpMR8ULVT`Z(N4K-r>! zSbedle>pk`I@+Nsbld zy>e2m(CjCsxl?|`0`GLnz16iXd3w-Hpo4s#;^Ft1TvoHo_`4@nZ+m5_gFP*K3Rrv+ zj;uxb@-iUwmJHy~7w7`5K0uC5?C!GeY_)Zz0C5b%LSXq4IB;WXzt;>XJ-{iczZzvZ z(0PQ6(YKMyu9irPx`oPJMJ{0jriJ}ak z7``e|bpMz}@~lgfACqzIVGLOLz;YbjYj1Y;`0^%lp5&Js>tWa=AlhuehzB4?EyY^N zRkFilx`fED^z;Ui*?T?URXy~wkd1=$mx*Q&HN*qY+A<)<=`=$jvpWUiYQoB~EODWs zQor=lUsjIPIdMgfr0NO)CemKg=Y)+4KfC`&h<||y@fB_prpJ_|hc&$Iv`53WgYJ}( zp|0q|c8p(Ii8E+cD$M=Y=iDgpyi-ktXmcJC`=nBiD^FHx^5apd*m6wUWL~XPT|@_2${j`=>1 zi6xDs0vmJ_5L~HGOUk#aFVjSb<#_iVtLI}?hgP3?rUc_2knz{qyiFQ6nCH?>QZRFM z&A5jfJsHNnf1h?Q8QwrsU;Y3IbdFdpFGrVX55321vweZ9i+&i97S9hDV5wJhlBUNb zQ+JX!{rR+ngKDOpyko9i#y4k`9{)#yZ>qtdj??yrrWW85$-J-56vRTLf6Swys2R4k zG_chvkFGtV{O6TDoJUcXAF23TAN zM$^)=+O-QK5GyK_OKI5mr6u*+!r9r9FvcmYA^Ib?J88b}%P`P(5{mD_vay=}CDv|L z7&{nl(wLzS15NC6Wn(J&YVqdMl@Vwr+u2lfB#fxjtu)*~Rz0qWCx zrgL+UL0>|g*LPFBr~_Q%TLvtLi!Jb)P zli=4IcGeZcGO&;L6go?q4hP>Eup zI+jv2)c70_C&&k+@DV*fKcMlvTg)?LXD3JpQr(Tr4k~U`XXQM~S#hGh^C)cp}O&rXde?j=~*jjpo}f>0DB6RYiAg!uY71iktg-9n4E4oa7rg0U#N+gme8 zaxnh6;VM-_;j0YiDL7T#Qq5Q}s|8*<8#{^u&v9hPO2udJzt<5&t+V8j$z#sPb#cTK z1|^#jgjD9jx%xY(s`I^A9A4wki;Z)`n@j3@h zmpt!&>O+BbcZxT!w(JC4{C8A{0T)*gJN4$VzxxQOq4#YXg|Hx(O znU24)`N97QYb^WpFvRuRhrM^v`eYDYHy-gl+p`%(c5^+S?!*%oTp=c))d$sLam++% z(F&}S#~_OYo~hN#>$`)krZ7+sR-vZ<0h7^>YH~1{QAtMcblMP{GF}R?{?Z`xa>uA#)5&FJWH7McE6=d&jR{qMvUewd}i z1u9kU1T%w3sTs6@2|!=z`*@T2VtDVpwKNUT`JvvdV+^K&{v>EPT}1ZN^I=1fbHJAb zGd!7uI5P8?tQupKK%{T=+C0=gzMR#pf(zj9>8mAcP0r|3vEHUXl_WzI1o4HNJW1u_ z$o6->$IJ~YjW!3m`W6zBCsTHug4V^(SC4Fuq<)0e5!3mBa7i;}gX_MLh03)`D_l{N zEV_~m^psT+sP5WTEZy`RfeoEJ-W7dRoMyg*jHzTh6e%VFVp}h6w%zwwlPyYB@nciI zSk~|rlKN$s0N;Q(_O{X1nxLl&zX@E`NyC7<&v^&3xZSL0>j+lmj?hV(Ql65%IYsCuyVA z@b_|0wwm$-4Xu8Y^F-_?tU#^#mCrvaeXsQgWI0XvIKQ@{=!RIh_@(*E5&{N%_2>N< z0{2wbH+L1k)8kK+TwH^SXgx8;Y0f^sH;@wilsW2Q@vuy}FMp{(9Us7@`JUeWj(|EA z*oC>g$}?GQ#;!=Pl(8#1CV{j0d)gJM?=64zDIL|XZIQaN+^U~05tn@jxn;pQ$iF&g zkxHA-5|s5e;77QEIyGGwgIr;*``BZz6q*#8)lT20uMs6kGJ-$d51SA4wxqk$5W!WD zii>=EPR-*N%dMoJ;#YVvhU6jBs(`jX3i*$=VKobtgm6{nKcJPl@oKah>Q2I5^t{)U zpnzS1kcHk_f@I6|2&Ab>XJ1ux3RBf#ara5mUGtIbf6urpal71h!rLEB4eG>Cnj?Ny zOL98Vr5G=I*Qvz;G(%gC=#J28UrQIZCSQ++*2irOjOC)cv67t^I_LQocM7`pacxU_ z32PMv6h|tH62EH+7i9a99(&!e!{w%lq4(3q01` z*EA_yx~cfPOv=PQ8~O%UwE0+URx*{T-4e~odTek7LH)b@bD^MskB_x@H&^7E0k$4) zd9L#XxL7W)1wl_EDtZPTsD8rySi71J%a8`}HR-|LGbcD6B|?TWFW2x3{!O)x_uxoM zmoCPj)ih>}&uuyCwhM=}X!nAf1Bl=5s0-XRE35VfLw>yA<6v~X#h$B>&ixsDXE#p% zb#B@Jvgxn|XZ=c7PXCn&{}P&ciQsIn((;nkuJ}q~blgE)a`x~UpXZ5h0)1l{2KMij z{6|C?E}^NQW;lcVSBe!Qj8oR9lIh9Pg?BwDa=!lERe3yhp2XcZ2L8$Er_%j5W3w9S zt)Y?#;Vi`gVWs%Am3|1>1;p>%-XE}}s7`y$hsvNk zH3s)%0)AgHY8h>{627jCF#FbuL+2)Gue7-2QWg&HzD1rPR>mDVV74vEFIbIu%?f)x zA*9O6{wGNhz=?#ApiGz&;syiz670OP{Q!24RE6E`pRmgo>G7WJ6`H zo*g`UOe9ugNc-!-gsJ(dn2kN+&i$M1{P)T; z6BlBRC1G#J-!!zRo1ch>=J@>Up^mz{H%Zm&jirl z_?xdVD#em+m%K-cYDYIXODormeSc{WqM-LaoPw8OFfMP<_KZY7qk5u|M>+=+b+0Z* zTz`9y=pWKXjJ{>ZjU7zM@+u8$x4dX#<5EC`_5+38RI2*GZ&&ObC&Ucvzm(xWcj`Iv z=N|P$1G+bmkr4i$tMwUTy^~{dsST9Bzx)5&&(+VcFo4@s^zTl0|32FP=PSn!$oJs$ zIH1Z8{a+j8zp?VaSAh-se^N|4&^k*!^VO~cQ8lay-Z$@3#h5BSbLsB~60=C_V|12p ziz_aXhmla$Vb!zxm?*ImN4iJePMD7G9E|l|X9*gQ_{=p{ztXtVq|CYBy-eqFf%)Mc zQ~5W0mv!*0z#tVb0Q6$6>d{Ebz?T{eaAo<&rFG7E;%oA7l>6uqYY?-V9lJKfr4!d*z zEVMoIrq6I|W6)mrBLLp*3wQl&IHXKB+sC^={X@bVaIb<5_*>_1MdHN_UV>{wmk6k* z7wm)+rHMm6XfVs9t*Ov{_;Pnm%Wwbr`Q(-O(iZ$xTX_8iH~e!X4D`N4bDY2TDb5|M;garEsR38MXuU4bZOI}M;iIJ<9i*Y@hi(H6}x zMDkm?ff&7XcP297I4wT6zF|arV|u?tnvTf5g|=f9W%IPIMr(XK!pS!~u;+I#^TY^@ z8=Ym%iOi`=4#A+zQPG?sUwu^jN3`x`yfB8Sj__~c)H{aCjEjzc8UiQftnb%BhHNMz zjY3q__){UP&E6dKg=}41fVNax*J)32WWA)dk#KvQ^+4g?kKy=)kI(%C(^Iex?)~qk z7$n@i1y5GdyDFHxt`d8#Ttnwrw@G(InH@PVW4k^PK0Ld)8fd%|H2O zO|oV_+<3kBmeQr#dzs>(swofOba?5OHqS5FX}odP>XTO z44$7Ne${xZZ=>=H{Qw`%|9(A|{1?O9sWj7{U-;5SDf({LZ;R{VBleds{im6JJuNM>ESH>{(x&1 z=R^wI95iF>%-V7dxd1k`^{DnuE^eT|DE*7B+xFi2c+IvE%|0~Mm6dF~off`c_6p^k z(q8pr*91`a*hU)Welu4zupmka!V_R%mx~!m3H2R)XGq5B5>b(1AU8^tCnbV|-r{xn zQbCTmB3_0+=K@v)>Io^_8k^h=PqZ2`yuHgl5QOZTBDHEqME%0j7ggWWe1|;TKeS(N+`PjXWPizyn>qHN*EpJJPSL7>wqq7r|7d zb3Jtys9y`)M;>L)E3IS~Ai~zi#CiNnH!nLz@Dy<4lGOZ!=exm( zQE32ftLn`3Q2_l2o-{S@Qv$KXu4xX#j(Ombib4ymcziw|1S-i0^VQrhvM>Pow=jcY zg`Tghl^RH(~h+>qM zAJwuxE1V4@F~{sO$`cp?*Sz(R2^2>pGgM@A%)MJ(clmyKz%^Sw^ehwMD=4GRSEJJ6 ziV1iMdwCU+f4z3%=>J7TLVZA`t1g1z6RXc*jDXen;HGtgJ--;=ejeSOs2%hmfEYRx z#Czn4_q5_dGgL}1+l!ZbY&*apf;R3$A@(8OuY&Dcg~2rK>H;+w%gb5?!AAih!CbAP zR0B#wK}^h4@i!2ptc8JQVtj`bAKBaoYt{>gIJlwg7=CucaZ!YUTXGLB1+AKIfg2#v#`dX|55}Qsqq42Dvo1=jx(gw$aoCS8 znI#j9_t%)*+o0$~HJ-6N>^oW;KEgG?9TwTRqyS*xX=kV&n_iYr7#hF*ekgIbja+P$ z8n|7*PGtHZ^Suw1+et<_JAz$H@ap$d5X6*y(ITF^!oS4wyDMn`)oeg@Epe1N-7gCQayLM4=bFjR>a%qE8(zPo zHf!zz`hO*a^X%_R*>d0cm%PI27pX+>c!M&xCdTmD)2}|lH|DUW@ zjSAQxt8u|i3Bx0IV86Xs`f|ZhA6&$=Z2A4c{ZmuHfsCH2XX*Xv9Hl_5z0^s@fLa5T zOF~HPk}!5z(JN%U(3%&QG_$rH5AI2ygmhRGP6;i`O6{h={J

U=@UA~ey@ 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

SGew2 z5w)G)l)2>+2I z@!Y;hkxQOzS5JyFM?`dRjGD7APPVKR3fSQLi&W``xwW|pckgh_EeC6nupl%7crXGFTmZ(~W`>l}tvCa8*y>4Uz!SK&V&2-Z|El=;rMF;9T@Hu4V1t zhymI$IQ48F1XHb1Owa4VOeMw6zNU?&z?#z2J%xZX;HZ3KkYvxr^0WU2W{%Q5eEp-3w~XJ-h(~a2f4#lAyx!i z

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

>_ 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

CYDP^2n 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 D`-`vu literal 0 HcmV?d00001 diff --git a/docs/images/remediation_enable_compliance_rule_feature.png b/docs/images/remediation_enable_compliance_rule_feature.png new file mode 100644 index 0000000000000000000000000000000000000000..ea9ebc51f367153b4c42ab810ab4ed1488b0a061 GIT binary patch literal 50350 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 lJ-HN{8k3PQ_eSer-_2v;*m^CtmYSXs_X&={ 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 A761SM literal 0 HcmV?d00001 diff --git a/docs/images/remediation_hier_edit_options.png b/docs/images/remediation_hier_edit_options.png new file mode 100644 index 0000000000000000000000000000000000000000..a9ffcd6d505f77ae8ed32a26cfbc08d6d0a8d8e0 GIT binary patch literal 119945 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⪻Fgsz@wqSRaO+H5< zQ(LFT?jK>LkHX@X5)Y@PTaw|ik4x-tQWxzka7RjMu?lbX3mrY5@o`4{`|bqA3CPX%a+?B92t^=yRPN6z(!SA}#PU2vrF^zy_~gNH zT4gFr@G11hJXlnT2salmXV9QrboCVA)$q3E373xh#Q z(J;`(>tki3*M)v~cx5x50+&o`9E_`!P*>1dIYSN>Oo}b`+MV)NbwH%nWkgYPLM8R* z|D{kCv~iZbZ+i0>Y>;Qqe?*Jrpy38-ab zEdf`DLc~)|iA@}~K#t-djD5zZ`O2XiuXB?g_p^3Vz-7TuU?AlGlL72&=Qz=58PtHc z;ff8|F?a0vKBhH)zEfCgX~2SDRv*XA{C;3HDEXSJvxEGZ>nUjrR-j347QKTZLR?;X zcy|)TvuSx4y2YEBo|&H);cc^Q>fMoQO(m?$>h{gRwp^M;95o)vvJB zc_x2+AeO5R%@J3~ob$B^iQyt(^{5{r(^1u$)}KT<7-WYd9n?Pg3LAWdFZ07(6iTSS zy3Ez1y;0P#9i$(K`TCem5D1mB(!=4EQ$X6hzr z$rB(~xGY}y4lmhqKo*fxpZ6EIF-(eFUeO{IcgLEVo_Iu$j+R!$K)6@@5koB9vP$8% z74V7-UZ5r+mB@7!kvN6^+cruAg{S&*dUD!R3h$N2tJ@l?skk2V*O0wlMA}hyk@Kq`^avvH`eqU+cc$dYXIS0!lrNtzjA4h9g-}RwU%ws4vbO~_Ox&XmN&VS= z<@rrPdG;bKpx1Ush>im6#Z!S9@|r-Jb$wKs!5u-~3G zn%t-7ppe`MxEJQsvSc;j;7(bckc+^ zi3{;7sfBv$_+D4uFxFDDT)LnKR&4dwi}sGdOb)$zh%nRLM?zB<9!0crU8sALf~uug;X`ZoGAXs(&^cT=p;DwfBTw*ZjtrvWdNLOjuV5CL684W8_4i@pvf>`g2pa1XzW4=+eNJq zL~Hvx**Af|a-N9~_@fo%YJbsX^?13i{a>MD6N8-wH|_b?m+&zk?Jc*iUsB^DWQi(VZjSuj+qefn1w`_efC~ z5SQ%0bzDAxAx(o^n|a_rNL2#bk&!U}MehK@_!0CQ(eyrQ$oF2Pe}k2m;ecgv3)JCK z12Q$LdXYbYL>~Xg75x7mcMfKDN^E8s$DJ?Z1%wMY*1ToPkHNOz_WpAuy{+~XZLkTP z@aBIHmLh|QW$)+@=%mtyvOfxL@;%MoB=+u~-9qIC=Qh9djXBjFt)*J`tg!VM9FiTc zvUo+l&1?~rssVETcA4sYhnDd~$R^_KoUTyGDx>nu9{w>5h3##vF4btQbO&S03mdP> z*uYKhr%FQ?CR5%g^*x82xmXsRqVv6JsH-zEo<8q}9aT`eKEdbZ*qsJ^tvsU!5UnU5 zmoC!aI%tQnet}U7dYN#4ktyJ14nq5)J)TpEOVp1GNsv0&WnhB>2#XG1>cdjbr-lX_ zn;bqUMzQp*x8ZSelQ~pMLIGG)+9AT(en|FBum4_p<|2J8Nu}wAD5LiPA2-?I33j)! zu1D#qYV8~bv!Q3c`ikG{!(EZ2JMNdHRfCKm?6>;!u6k8BxM?oo|I8YbD(q&tR8QWm z>qxymxiL;7YHsYWBn=CPQ^@^BjY}6QFs`}GWAcyG<(stYx(-nvyiX8L!J&^YfmCpg zOV3;Q;yiYUA!R9`jFx)7~X2qkB_seUxH@Xg?03@d_B` zE$o0iol|79m+E}!+W6UrK@{3r>j!y>yU&9In8&rFdnIX|p&h^QFe;$}y=}v~C_g3& zAriW3F|CoVlR_j`l&bs{pJ@W|`IT(SQ&1G->?<(v*AC9x=KUrB{?|Jhu%-TNAod|e zwK)`FjL?;nF2`0f(Jb=_ppi8#^=m3pdCWL0nfVtzDW*^2nZfT@d!s2)EFVLnF0z*5 zV$DxXoaGB2ybWd$xNz^zhwA2;Djl&4Z@XG$!6cWh0y<+!vb2z^#HYM@yi&=eQ_Tbu z57z%B!Eq0BeuxmIYX1UU*dr)L;1%NkIS8=r`ygX;O@?YfZ~$8LB}lX`F7Y|jA5b(4 zJRat0t77r8jJFV}?q9Cqbq1v=j))ZA6ufBXB9tr(wGoMB1g{??^gDa{$jQ*_{ZM{C&U^+2Zh$}|1MussM5FslF`!g~nt^8q5TqDAw*Qdj3Z#2VbnB_3y zrZH2AB0ZKg*YJai{r|<-TL#q8Y+1v&2X_dT;O-JESa1&<+yVr5_XG=?AP0xw?!nz% zf(CbYcli1|SLWXP&CEOh`bc+G?W)?f*V?P9nUpem#VAq3lFhgi#C3FI8%m7Iq~YRn z)!v0q*7cyGAHExF`O`UdAdp-MODt^~FGH%6BSh10U~jvFqG2a8dKH3mjRsmRneN#6}(o>zm=DqQhgGO*!Pend!)Y4Fq+^IT@Rj=Jx!Au2fSIDnS zv5p;Gezy!&g@YnaEiTiC&&2seZa25#Riv@Wd=wlI=RDIP6l+P zM4+;iZ{^eJ|3{iM?O9UL5w&czn0@zBbz-me)bw+d)gZ9*tXS4?jTJf^L(Y6I1UvBcA52k4RUW+yqufU^3U20m>5cSW@};6jUEcwI@Hrb>RBdO zv&_Z6Ep}&}?UZ9~7k26?%f-7G=q245kedY8thN>1U0wl)Lq@vLDt!L)Q^54Ck>|@W zKK`?P(zU+trAG9{T~NIH?P0z*MDZ{aMs-%lUwMP_G59*KR-No-eL`E%r>k(z4{nJh zK@#63BHk#4{b;8v5Ir}}A(mFpcxx&?5yK(hX;Hhm7T2g*XT{m)$6JSbAA$6cefG&F z)?6ogWa_gS*7_#W%ocUe`5JG}fLxDMl)J6H`ZSD?h4FF+nV9s&&CWZ*ebD#6s-tk*e`np9z!R#$oCdsFv zRy!}*_SuS4)y>^vO>=}8DSdV1`OH&s7q_Am=xuR*LpOefmA_|T<#Z6hPtlqc_s(oz zJ*Ozn9;LQf+kky3tT*r1M_%8CEN0b>A)(dYRXQ-mVT&>;%HmK>wqwT^5XXGuIkhs9 zP)ja36~2vKDLqlY*CrOfbGnB6Q>7vdD5S>p?FLz+%?v7DFAVo?yekT5j82VUOc6Ze zpN^SJU!n&GStspIiWrjHM~*EW?rC?$q}q~GD|wFIF~1+4|491q-C;^;p_&@8h}z_GP-Yob@nb62!Zc7kBw)59{w2s;ifzQZb}yiB&%iEH4%H3 zsQCm#FcttxGFy`tqGpr%^hgwZ^Tj@bVK!fXq-g4K7f1N6fHY=O`sp(+s4748*@gPR z^+mk<$-JAk7zKJnm{>B@i?&8tStfgKXP(2#5<~VA9U8<1k>v}ny>;q+5uKB%w(z5c z%g@#P%q{%=1y48V$@mQ^%m-zmX|7LdhBDNF8HhP?JcWwi&{|faJ)&$l@%%mNc(~0C z8;(mN>Ru>JX~K2!2Z(tw%Id&X1H!D?_zFpV5=na|5Q*rZ+z)k$B=iaT=zT}UcwLZG zkjw?q3|lqMItKx$YPa~Y)|0y_N^iYP-7zUgS6^!C_3F^3Z#tv$Qve+93ia&IS}}E+Rkf` zk>KW!(6RQ`%6z^}qmeu1SVt5Vnr>6y67PrfLbwP;K|!ijnMh(sr_ zOLqqc@qp~r;LV#}YNSmJ2r`Z43)h0kUhyFd7d&WvqE7ZN*(?5k%3igG+Ersiz1$@& zkG;~v&7&OI9ueZ(l7r3)LLoW^BS zX7+Z#6eXVlt-}*!#Xt}%dz*!^ZqkyxZ(&>@r(0ugOLMk+&p(>l)}OS2h}`yRnBbW6 zu1L{no#ipKE0s^`UHtYAH)}yE=KEZ`cc(XTuRtERMhbHEu;(cKZiF!Ah#j_q$ZGK>*+9%AUaujX*G z+DuFaxnXa;%arr0PyPb1;x0RH6=kV~E{?Cw%ADTCEm`Kolr2@$R0#M|bO7YKd5(FA zgflIjg40!m`FG#c0bSjl-bEdk0w-4ROw_ACB<^H#7hMw5N$D({A5z*IyAWi)>waF3 z{E&fRfc2$_=9vFY#ik6qpao;QVl(E_Q<74~W7ZDT z2eS2pT?WFiyU?D~soOcIa>+nyT!5&q=i*R?Yka3-(I6%Z}2pQl43a;L{Y@EGKoUcGCctDWGGFuS_z;t#fErOsh- z70|Xj7})SVMFphqe=b+w(}Qm)_s?&HJ4>lgngI zs3jgKX_)(p4Yu?_ly~1@jO-kirTVAW3U&JJrFpf1t*#6O*R*tH~5s*x(`J*;jSWYA!)1Y8(_wnyxS&VSZo?V zCiu#q@FY~gN7Dck99vG@02zXZ*LOS5{!W9dk&qm8iw}bDy*8+LNSnJ$5yx^$e*9C0 zJ1uB~@}8qE>aqVzJYv14!5|BJQHJLP__e<+2EnZTF~vLT#LOQCI@`1EBDtc$D9lYA&3jU0!* z_h=`RP^hNLcp>lkFzrjA)8D@-pb;6-CGk71y8)vk6)?zrh!0J_b_%TepgA9{_4RjP z&dB<(b6HUrn)4juyq^;AmaS1~T}nux2T?TMai1G61A*RmdI;aS4hSIsU63m`l3YDM zsAn+u%>fzaUV?(3B`nQ}=Hf4yTwe@)XzqeA^&wwx(lLaZU=B7N5g*-_ zVY@n=f1z$2n86#o0Xx4C%86?_Zl3E!5J$#xRBD?u;~WS@2PCFbd>4W#8fJ`k`2o@> z_;8|PvSo9vZ38oK@-H;#=;*?Aq)g z1+P#sY`;Nj)`48tty4=e0>-g}1ip6ARqov+SOA~unf)P*6%ac@Fb@(;A!MqBL$J`l zNmVZ)x>Zjie0I8Tz=bi<-?Z^ao76y4&tqEMA+8)?qi6p1kUhvXI1pf_Vg4R-0sj|$ z2E_Cl&!N?cxfDOkfnp|R`$GZC11d{kdj;dzcsQaJpu+@%sQz9R4;g^FYtCU!hb#@i zRzz+{{l16_K(48QZHfQ&1fY*aAYq)yI+Gco<6s0Tb;-?PtPAOUbKrl2oR{kzf7kx~ z)yglT`VeI&>t47y;9npudiC%5>VJ6x(4qelFy6~TsJh4qLWm%FlL*p$v=;XYe3&^L zkj!JXHMZ|U_IH&~#p@N$B9HeSf*8nemzTqux=_k!2k2F;2%+_b=xh@?D2Oz9m5k2s zrNhAGfA87Nn%|bqA&>O$%;u}svyiteYs@$6pQq@P@1d?*HU)1@cyPp`V*@EQe43MZ z#!<2bH)C$16}KOW31G^dDf>&`Y$Mn?NjM%KU3J;6t*8pN=g4E^0WRD!piUsPj^8LP z1J7&Uiw3UGxOzM|T7FrN?DvNq4uMsQZxg-`e!77-;k-DTtt%=da{}G@!0vs(gDHFA8jU8V@nRvRp}q*`uLX5)j|L zg~xqOAfJ&K6k(thH{fx;p89Wmw87U*7hMk9y4z-*Hcl zPF)VYl`}eo_G5UHHL3Am`?5ruryq8acBEzV%7i|C#cRUecRriz=)e#>B?HFyfe=bwVi;u1paEmX zF*v(kZWPD@G43R7FTZy2p`3Y}ft#&nYOEk~#{R74rOF}xkh4YhPsyu{YdpYG)Zs4g zjsmgMs}xL-*2dMgW;j|2uQ_cigxsD3s0)p2qOfF3FB=W|8Ff%>yz z-t;ztY?G@HQX!9U!mrp|59>O?ZZ%mI0=aa11N^@FjbB<`Bu+ak=%!PAM=REr3eD1u z_0)5<{udEzW}I8xb*xH~!uI>f=vyMqXur=?-;x=<(4DS)VaUCwNDdr?3bP0c1cR#= z5~__>w5YPkVn3;p7Sreva$PzV=@4cOdlO#aAYX-Hd+>yvzrI&}7)7s5SI8MK)a-S; zQ`XX_4UaTD*~hbf=l$cs0iI6nLhU}9R6ZPq{!W0OwxaBXBi^DfWp!sd9D}3eXp-hH z5o)jqLnDWe{Yb;=ehAoke7{RqSQc0sBj}PT%fm+oY(&J zP{H^WbEV~SI98W{T4BFjF@e_uA&G{~`dBq@Xm2V?jSlDP!OQQTx37Gi&sS&ryPd;n zZTL&WHa2TsWacr4i6dw>Yp^@{%E&+?=aC`xjv{1}94@=#esE9PacX9<1F@qxW*c(D z=3m)`+P>n55ip7=wPF)s9xUj&R@VijSgDUXjPRX;0pZE z$?q3QEHx~+W#HJHie(hDGfW^C>7D?1@hcWdM!!gIH~1N94Mn|gcbIMheWg8Ca#+1h zS05Ahfm7CoqGxY+{bDN*^y0e@+E#gO2)Jo(IZJ*Jg%Qlz2$xw$zC@g~?#a(>zWgDr z4Xrk9HQLVM0nt$>$Qq8^9uZ9wUz^^3=TWD-O=a9URx7g5b8%I<=Ag%g8R~I?JGyqOD=u*b!{_i!Tn#B29FS$F92h^Wvj1xJWQr-_#|+$1s=TZtk-4an5^VAL<`g~nyHtTY_pP+=GX`po zujma4y0P-CC$2&>WseP(U;J$_(MGbGgjo9HC7+Yt4yH;j`J2}JK*u2Cde29SF{`KO zD2*avvBr2zvt`(Wo`x;HF+s(p%$ZAD^|*pJjG&5VGNHWD&2UQ^OW=L3r=2#HF0W;} zvZCkk)(7wr*cURH%@8=K&`UNzU+`X8skcvT!V|bM8SS0P^1(;sxrV(0bJ@DeBGp84 z-VOMAAI_L;;r74m7yJ=?U_^U>uZ&1D`Cx*)8!l&ccKIql@9l0QFH5*Qb|_;PkIDR4 z2=Z%L`XSbjFhl7Ewtk{t$3C#tJ2A_fyy16KQ#|w)snzj2>>#wif|eY=GZ;RaB%lQ7^Y$V{GXu~p_aI`Ij%d@*b-gbc-kL*+Htn{!}%r$w#IXXXD-1$i} z#rU?B~H{j5vqzXDkK0B>`>t+ z*lXz7+r^ReGHxc17MrMAueXp~bZejG+AhcUd1};_NZHx+A#;Ijk`@L;Jq&w=J$eO zOz+C%c|5Hb2~afyiwzE%y8T(*lW_k?``B6*{euH`DCEP^qpFv+5I)~ z{PVvYkl?jF068FmT(XS^kQB$(I)}B-n+XO&-LQc2_ya|M!;T(En>^+__nj`{Yh*A; zzPx8<=NFEaDQ0%a5DFYrWr`;P{TG40Cr9(N{@Hpx{q98S@#+nv_t{ZBHljpx; z6J0w^&{X8KmD_i^E!dbQB^U)nJLq!!klI%pP^S*e-^JRM@iJ{m+rRAjn`l_WvOi5? zY9&Rh(m`a0>KG@MLJiDBjBojE$XJJ%kPdDJVP7fZJ?-R^yON-MAEujj_hVSo0Xzbe zbI$%5MeoQf&2;RW{d_1J8+;jRwek%7#Jl7Pnhe~SRp^Ip1(UN(I=Y!3^yS=sGrrNA z=CoRZ+@UQ$DnVRzM(^*Xo;?^UD4u6*AM;q=WZApy&lbPGB7S9YC!-g}sAm}Sma-4) z_F=<$D|h0(O)odm>qE&9RSubU&_&n9`(YQ`1exlGLsLU~)5wH3YZ|KfYvc2lM9C8M zT(u{;U07eJ3r)c#43u%N^xNx|J|2kva4>24L%1`3Qt)Q3?~hK1R<$we8Ud9Dacqum zA3`wo9w&9;OW{^|R=`V&nc*IXq7&@i^8>8Cz5%JGOvy(D;Q`V@@A1O}!&V!8IFIv> z;CG%CPumB@&41~c6C|?VW~j;{y%cSoXd92M$lLG6Rj+SqOY2zvuT z7$#FasSsf^iZ%r5v<_bZ-@_@P(Q5UVux7iv^YzOjk-rOi9uOSB_R81h2_z$Ha zo$r>gFv=_Gq_oF;>YMZu^!`y0L!`=@jBOgOCY?4MPgUV53sbD89YEc}Hs)j*ZZxIX zoa&e7Za@<3QlucGW@7w;ZsKjvgoD3O2tOkwW2m5sTJpvj#UZ=lZH3_5fUA#*Z>FD7 zI$b>|Qwbt+ZE5mD_gaI04doN$gI6)#(~fOpcP&4n#m;tT)Otx*Ih4i)xHQwCkA5w< z2xv7mEc{H}x4f}3XQ*I)Y21XCaf4AFg!mW!5QLN!adgL#fj;Udy&Sxwdk4hw*Tu*0 z-c>UOwPV9DJ`_tYzQ^ougTT+WN&-%Z$VdJ!TpSFDe5`;4p%!yvhkruM(lzRlzsY>A zYTy&@d)FdtF}K3N3X7r=Pc1P%uI{h3gU*aDIBv`^2N7{bco60DEb(Wn=m;L*CC%}u z+93fOFjo5v)wMb45({~2tz~rR0w^W-DkKi+-ic#*_Y*q%UU4naJa=#ZCR`r#GNi`2 zxTJSD{{jNx57b9%T#GiJAML1$&@`>)d)M`UGgI|g9Z3_ex1;~&v`V=D2}D-F;FQ)} z`YYH8ukV~0V(4u81sAhzZ| z&vuYwtXLhOEWEVOg+F#`&6EO56ka?tv`m8hWdcw9n#7OEX7`Z_>5p`vk`{fS#pN0 z31JsUAyk05M_3cUMYMZ~LXZP%1q?HhIX{REvW%7Kr2c5KLTF&ii*wG(HEQiKdI? z-F2>a7m zZjDK<=LP8JJ}i%WKGq`d_Xn2rExE>bZ~g>-RPtKosVsJm#0u_(XY-~0l*H@c=W9m9 z;_IhkmzedfDYxpI*Y5l~=ahB16=HZbCCXtgSUKN-3YllYJ+>ejpCUt2pCE;fXKO(d z>GA=Ro7Qj%f}(a>1Mi{GV{U1gP#I6>;8${*=MRM> z5+oqy8VAkbs9nj(EP7W_f`D8)`o`hBaY<_tqJayz+rQYCR?iqMvw&%u3Y0;U+nc&v zrsYdsrCcVIaMhZZgAAEPa2Ef%7TLsUNI}HQ8C` zxMF%D^YGxTj=M`7@(q!i{QI2V%bOWTj6$QEsH9rblEbJQigVkS! z#x|}i2sL&qEem-4r>xRd&&@@v67SFzi~3M^R=cUmiNNXzT|yH6J#ILu*>Msy?sr1t zL?^TKJMUwIbpD+iU%wOg@-d&4n{M3=FBC?wZP&*PH>8A=%)8x>x4E?z!$#|<4sUd8 z_^%H7+Sx<|l){Djn9-K=UwRvt^iR>zLL>t?J}J005#TSpdhHnq#P=vfzjU(LlGClB~OB**sWiClt+ zxTA3zZun3~coe@~S{HO2+Os1pR@NWPGa5eLB-_bZMirPq9MNv8hB!>DtWtB%$|-_Y z!J(EimIVcmjl$Nxp869Co~|7#+)0!QW)HPuf>Rm+wD)_%jb0QQWj728mPv2#ZQpxn z3*f&oW-B0Wc)FkOq08DQC|K;$SfG#KL3<1-26<5M9MYm#S1|cJ8Nua_4Z2z6;<%+x zILUF=G^96L7as6bf}Kv}=&+o9xA?!9^7=_q8O5kOhisNvW^=Q|K9`@`V=^yh&m zG_+957y}*&e2EVEQknv&pPE<+&?nvVL^G1mz<3dXjF%4?{IV#aAN`@hpm$x3bfVCu z$ZUYdNQgZ33s7-IEELGy<9Wcf&Hlw4?oZ%i6u8+R1{qSI?7!ZLvKs>Y`n1dWK?b@K zXe+jrIfwvgD>qO@?d+YeYM6%pJ@jIK-93+M=%1_LBb)*QT=eh*hEk>ofE0)fx$}M| zX*{KvZI}}`ijh=>KRf`Wlc(u2ApRUQ^qsjPZ8g}|v^vN55Q}evpRkEJxZ`Nnl1;IP zm)oK6a7kv^UiTZ~50u1&U4(==J>`D7YZ;VgAx`oxuzmnqFx|8TjoBq#P`O{pw=eEW zD526o(?gRxROx<(0LHnj*dyhDr~BRvX(whSN{&!_%*NJ_xkTSW8eLkA?jJI-SmTb+ z!Q7+JXObcui`pUxs0MEBVmrMR(pf}Ut>zVHpWi0m*hOW{D+>M+Fq*m;jKIdjigqwu zqQ?Ea04w4x=WR@urkl184_XsmSQ9+rzb_$1|Egeex|6Vc`q-iojHo{dWwm`OUclZ3 ze`F(%ogdrQ7r_6+Y zK8oNuz*h2)Z-xQ-Z4?_YGZ8i5D6-#rkOPKh1{yk%)q4W;q5v~6l=2rC_c|;X+Ex3H zjT*91#fY!I^t5!<-ygn?K$#LF@9QWq;BsXI;lkJ*^#wEcIb6(n5q@F~(=NULY4;G; zZ$>ymyuB0TGQ`_)Fz^91KP7%}9`MJvk}$9S>OC?JJdEvOZ|{=6`|aZ^VacRS<-Pgc zKTQPt3m_!Mj!*T?6IiyiUw($pQj6nOXP_lOIvO2X43Rm zq6nVCMc>L>f-_^@UZvJ>MO2!f`ZL9ey!OJ+sG9A6tuRi})j`T>ty1Of^QPyV^C^1W zqfXISminY42xuS1=I??cJ%5wCXc`9j`G&A!^;Qfgz1A{rOI`omrq_-KDr{fR^`r&t zexf}JttP4t^oGPVI=(nGO6Yr_I|&=xiLr5{mHe-^4^`clOW@2yCir%a11Os4cMbYf zuM&4f&G1>0dAm=~V3oQ1yh!!f;Jtq1T=a1T=2ncIUSyXht~+9xHeP)=*bkz(X^Ut} zI0=y4;U}Eo5<&YkR%tPTtK0t@8QtfgbA5!qM7xT7th%;4A`$A~uED0BR0ZXu9Krih zrVNLd(~R4LFz()lr!dFu$`qn$9hJB#B9IC>ONYrKc60Hw$YZ%UKVh>#(6n3>MTj!6 z8969OK#j~wwwm=#bJk-PgFmXxfv_AGTwVD|9E}YAVDPBMOq^z zY1qqy-?l6=ADi@q-mx7w5q|Y$i|)#5e{eb`tR6#| z)NS-z>P&hh0@0VZYrDLm-FGAL=lRHVy4mhn(xQPqiW>6MTR!avD@K<~2cvW9BsqfD zj-k$HTKRo7`VRa~=~M$g!f@94c85KQsj;McxNv9<**2)>24TR#PV5{z9pa9+0`vdq z#vc!uB2>V#m76As>79)VRa^w)UYYw z8TyceCEzo9nfjgzIDA+Hz@b7`bVATz`}XTS55lK9A}MA^3A~SVG+jrL8>_AlABK}A z@q%#aBe;JE;OytF6ytrtknj41L(M*2T0STREFvkrO8yB~r$DDZr032sKF*;>WH=%o zEzxGHEbro}pI5xBvO9C5pc#ZN$Eyl_7J|!P3|><=GM7Iwiu@q9>dqf7NA5<&Zy3AVge2@5QXISb${k3B+RJfn1 zs%R`QsJRMIth1V5t`3*&88u;oKxYzcvmZ(NvvqYb@_&ib9 zxB-iq595m+unr!5c~Ev36m(|6d+ix0wEU%Vay0We@D>{EIJEL*r*w@yQ!8ss)tC2- zvm&bwGYY#FGYYE~QzNP==v3qN@N+f^N^vb_qi8I&#-M)ZV4lw;+f@#8-e~l)ev&*R3*l;7EOlhZSWrblJx?|k^u-{q~S@7*PWUhs|1X9myk;2_V*)Sy)(ROF_i-dC*n}HVl(d}VcPcBH@X7xW?6tIiiHcuQ3 z0f`D7KNhEFoY>==<9M(N(%mVv5sKQUu_W#ee!Yo%uaId~iZV#tfd~X=DS+L66^@w$ z6DSJ^k*Ei2E9l;fT0w&`E4+Oxh+@q$q}FO-$8$58hr5w%eEdF!7A)1v#uJv2Ozjcsbt+jOsTYP(gJ7f_Qq?YJ`Z~mD&Vna( z9`74}w_X=Cm{{L&i}H9h#mG_w_bEjSIi%jMdxBZh@Ydv#@>mK>Y#gizczoaxf2GbD zf7#vXav=shHi^>%+WPAgxwzv=oayTP)ML6$y9%ph&g(mT(S$EPV&qQ!Ngiz5q@#cbLLb##Y^xmqV<3o} zSXy@cg!@yJ7zl!Mv7!tn>-~9PnYO}W{B<5GEgobRFOk16$tmJi6+$(+ie$S?Hy7Ci z8Tsmi>b!BDeIB8~JqMWzJ#~M48~E}@P9oQPJ9)aAyef@Hj0EqjVTKOjm8(B$-IlzI zR6VQ3WWa#+i&&D=TpxdB;2j1PHm4LkZ&Pq(6EkO1!O z=`PZ82LTuUHlXPHgUU`^jCARY^w-VZIR zTDtA)geL3k*zN7)n>fhTMWn^>h*Hzx-53vgIDG+LjcpZFHJzL(H`Ys++^K_<{lm1r z!53|jMY97p`kAh)LT2(V_ zR>dF2^9>Nx*l9C21Xwb(PoM>!f;)vebx_J*LOs+LDBK3aeYn(u)sKsA{k!}k+S{mU zj682*zFEt}4vOX&m`jnalih8z5U%^RA+k=lZF-l}q$-_x8e*9L(Cv^7^QY@-_IcsTuPay0 zg<;Y47h|so@yq?!?-a0{t!M=kmfv>`RR3<3m>(^kaQcl#;yd-AmdJ07Muk#?xx#y;AUWGs6{xPd@b?9!mX}zb1OqZ z@#60{+h8)(CX94X^0YI`)3E-L1#2p;15ELQv{{H~d{toX%p`QR;mrL%mO-E1hH}HXW z03hREWd*s8|Ih-^0A*TTdfTG_CGtrEt@(Ek2YiVL`SR^w2=VU_=C7yF{Uir&xy&9T zrH1cj0G?8kW~2wKB{RTMX%U%@p$J6G`1wcx-vHQJ4QK<;)txl}PXQ7Fz~ui$LbO92 z=$MPym36X>Df5-tOKdSAXxk>i*o_VMCF;Sm^^{`BCg$X&Bi*KIN9O9VwDai zl`c0+!rJ}3N}^XkxnttrS*pF+6Z%ilr#l4}eA}#FGi4Maw1n`vN7OiJr|1F_lttx$ zR{nw;>jNef1K`C{kpQIq7kHPJpg4jCld?t+_g>0zuL)FAMad^e_=8c|N*vHbPco+e z1B3GZD+cYIw>6xHW%B69tAAJKFH7orOY=2@(YrLVDeXyg6{a)nGL%#GRzqR=rHnl{LK3<55cZ!` zUnyO`?zCy6!!4S@LT{`4s&F_X&||(RRE3p-q1RFU6X_GPIyAEFHhE0$CBP{vZ?R}YnmcNT>(Kk>pp9e|2tzoEOB ztz~(Lqmhe1eROK>`wg#FK_JBLCoc{{@fhCupu^s?MK$Pr5Ir-E`u^CD$d7deHhk2H zt;E8Yus_{oGKaqYdo~W~{Y+3#iW;cqlSsO`%{QVVr%YUTUt1EE4{>7C6O!LKhs+m6 z9%-K&jUydw+p-pCIloLTh$a5tFzu5{f4XtkZQ(8J$(a4F8Y)e>qT%!etb5XkuvrNL zy=RZ@WVn8S3%aY{@E4yS^;q8pCCe`nK$RQv55RzURH`@Z9NC%6?Hr+@SxERH&GQQid52M3cLP~Oleg}l%=}H$C;!Gd@PUr@C2v= z>o@nUAf6%A>Aon@ua6FzhRE;t2O0<~*U5-!`I;DVTm2rK5J3AnXR>;L_s_L@z2#0v z!3?;eiG70NT!5DZoU8^7#RZlHwzQXj{NqLzYze=+xya1{k#xt-61%sRqWm=>l+Ffb z>NRNqELeQ)TrNJ5({J;1SqR?AcBbc%zSQXX)-EF51Mz5kRDzMw6cZ<)*h7wmRD8Ex< z)_1C)$|46SuRmWS3Aqng1n9=%7)XU?7>lKh*N)~B%Self^&5<_OLAaKPQ1Y5at}b@ zOmt@*auH#^+u)8?6r|s=T{@=HVrL!~pVm8!m9JuV?EEJPHDo}EFCckCXuLYhQ4a*y z3`Xlgm=k3p)<=~3;Z|W?kBH{wVQk-G{d>ocUU>DC{LSh|N9?>OU2KjmloDifWw&IK z#yHi{cxhej?R8T5$SEn%UOf{ zvfb6yh<9drbA{=KzHakL@q8!sAxvO^k-l^C{#@_Ck|DbP?pp&|Y0aVkl0IrrDeuoV?{vy$@YrvPNcu%cee z*ep#Y+;AD)7}N^Yb8KEVFSz@>UI(@Dd@j|JdAw`eh@7oSVie)!hwIa# z^XJ(O)@Cs;tFVZkoiPz6s5Huiq*J*8#pY7L{X_4HBKZZqWj4Ti4AfmNofI=xfU>OO`*FH4eDos zcGXLL^bpVACr@&OhNZ7LUp*_t>$IX!pMx8Bm1!HGhI&_tc=(ihMyOhXn1f#_3nnz2 ze!ocEs359UOy59(=`FJL=Qj4y;A18EvU`B%{>D1jX`bNq3_WbgW=pF=Y7Puj z&@ioJc{fanm6eq7+yaYbS^%DomncICK$&Bf!QVg`lHs1xkF$Dbe zmQ~Q8>_!7EeA?swAPbFB0LcI-(CLHsVE%@syFLC3OBV_0pNSY@1mW>^;&)z`akknP zH_=#AUPjD`eSVT`(6c9JP)rILEn+ql{jHCMhhv>#?xI0I&2OF6#Hf3MMy}||tzl9~7!(7vG)Nl=B0T^!?=6vdtbMIN^2^~k04vOgXRm`Aj%q17;Q=xrOFmU%~7 zrw3CVx0D$~Xps>{*0>_va_5*gtKs$}O}ONiuR4FCn+7Bd3ZQpYO<0zVj}tpg9&@>2MC({cWtzl+)p#>m!F-Rng1BryOfsDs`9A+^D!BhOt8P|_S(uo-aGt4W2e&l}s zre~g?)y|k}4OpTqF1)hqD=S7$kM&Fbn~ZNWb71G57G-p$*PbkC<65{9mMHtffIX2i zwA4A&VUjR$%1H?A=O6zE1TP(#g;Anp;GgU5zFX{9VY{XAc%vO$;$f{av<<7cSo7q$ zoFJe-`0&;T0W6^3$#0^`W4M+)d8)Z7@%ubddG3@iD$qH+E=bvfY;GZCq0)VtQV>%^ zCJFqvWES0MQHJu08mQ8lr0l*~ynYdFMC~kCcx&yPGsvmJ5e?*zrQp=td)JJY2JgmQ2+a~EBC)(XGw8s1qV1?7=`DSRl#lk>+52pS)?o{h%K>f&lJlbiBJ#hIb`)693hiN?hJoK`+g~yC#Cg zuHmfuM%o=-q}vM+q)Kr$vI<8{9&9EcWvcs$L6`z0rQzLb& zd7P)FDP@}_fE|Dg;vB}GXyw*6HY!cm7~cm1ITr~HW$KbjQem)x5Se;yyV4m53^;+O zb8QSZZ>UJD~S|VG$|S%vgh$Xl;nl`*2LD{^Pdv z6`E6)REldsVhFNn@Ww?jF6IwWYxj>0j?_%L^+;_`Ja9_sf@>&DSXZIB%Ay7kvRN*l zUlAzO255$*+F7SOP?7k7Rc}%Vo)#hqCDCWr{zd5O>bfXau;cWlEB{|p%My?^D9*-6 z<*!6B>|crEex`u`uf41OimKiBF!X>hbeD(>jR-PyhoT5dNe(UD64D(~3MeQIf-t}! z(mkXgrP4Vdf=K7kcaQJ;o^#f^|G-`Ap80Xl6MH}LjnC)v>>YvD>x{alH$&|Cqi;ws zB4Z3+4tV?+ASaBc4gxpDb=}4l2*q%nQ;1*akKr4whYw;Z+Ew!LI(e7(IoP@nWZ`kDTVM0U}~z-xV@+ z>g&20x8?-_9GdYX_p6k@GW{o*ulAH!qPWMN>1niz>xb9|%B^bFp~qW!1*_I#U-mC% z4f@#ND=~~P#@vAL!dvSXwfDL9MfVPa?t4fPH9ZN=O*lN>&VR8p7r(3Zc9H*adwU-p z-ke>&OpIyq9u*T8W4O>`6SGWej7frA5fej(dogW&$f+yFq z?c_m(k|QoCs)G+NRr7Bf9}mnoc+w*f2<>7m=Py~m!7CXCz~|vm`Ks~23Pp8tAw5^M z4mPInC@CpR_mN*u{Z0>f5#{9;)?IaP-j5|O6oklO0oL9M&o98ld<5nLrr5;?p`r>q zJKipMI-1}2isvDpl7OTcYes_oYe$r~k}6Av3_+-%3>ss)bEEfn{EYj7v+9A9G4A`% z3Q*-Z@dCSL&ECk^S@oGP(b;Jcx_Gm?UQlrlaztB_(;(eq%|lWRh;&t{e-T0$2MhiT zCEjxJyfRVJ-B=*YvKr~CUOrW6l?(Yiv^oO+`A!87G3i)P*%Z>_X?KGWu8PU-Sm?bz ziZJ)2xsW5(tP<2=AA%5jSMe6()f;zb>v|_ccq5Y9xbj1s|xuUPeHYbtC zbOOJn;o7G1=f6A{$J8C4%J9-KPuw{;x_Ry{#uLOo#YFJpt3-dqLV8O})Zp)ZGqb6OXU6FNA#<|JTTcNFUFGi zI^E%TKW>TN^Xa4U_u>D^HWamxYVkHt3?z^+H23|S&QFj)1&a+ACRjY7fiwWiJVhdA z1z4FG!T=JvKX{_zO<)N^42(0R!&mNqe=aPL^&E%bxt8ig|NHfM2)KboMC`s#A7ne! z9S?EZ@V(Usg`>Htc%xoq>s~?O7UeG=s%+BATvWRSQrKp15fo!J}akXM8v(1e3IF0 zNA2%@1Q%z^95B{bxfNHEY=Xag|cUp`lo{@_ADlJ(c#*H*B@UUhQxhQmMO z8|GYfmQI~%BZsZM1YAL?)*KbAvN4`@0T4_#@rmZRLi~}Swp`_ooyA0z|F|lROFFAW z(tP{#NP;+B=lHFJ2W~EBK_VqR6o7u@(gF_$%PEeBy%Eo8TAt+lCgGZmyfg{&`XJ3TqkY7u=JrBM? z5SDGy@k+z-JJbND2O#BoSC5t!PnrM<><5xBDav_fS)Eyvfp}(0OVId5dw+Re{U;)W z3mcJP=LGhdXUYR$R6V_Lhy8-~n6FbN89)@D_A)>Gan=N@-xsMkYmRQv6BOg!XN%5G z?RaDU8+G1EAdnNx?43oJXLQHr0^EFP6samPVD%;WRKyR-y8m!RvCcoo?O>5>@)>*R zPrsZc%sf~9ULOS~`1TJv2j{O9vJQrUsL%Mdc;&(!;?MM6rLZVcXu-Gh;(hmS;@@nD z$QE;*nol4 z5go;_^fXCE@$RwU#^v!cQrLd)u#V|jFp(?(UwkL* zxp@hXx=zQr-6uqSnZLxPP+M+Jl8#t zqy~LzjFp@^!#O$Nw!UHG?Zy@=b`wk7bkIj_0Fe0nU^1u|jHl)m zmS7Lt+As=XZLNK}kjEBh6tOruB@5g8&V(0z6|qDpfpj>vZ5DEh&X(OsUhPzMGW4W! zy|0OCwWHS^TuI^zcJ3mb31yfXrQ2%{uCg4pw|2!)XBvEt)@Wmf)t||H$&|`BZ!z)p zf66&-Ql(NoRIbB$Og}605szm(7R@^MTV^8UN-AZe z)><^!)^$13RHt8C=;xObqbKI@y48C!ydxm_8Yo3I#j(5ZDrJQ3C2d<>wPGp+K6v>X z{4w1j)+Nh<)1Z%a~+5iC^`N%{M3+-G&^VhMft>@ReOXB6wsf{ zgAu;VRR`Vk1ZBIZMpmh5TIDy#cbyiVvs!Qmg}ute9e-Dzlv4LpT+Bruj~nrE8GXlq z1*1(mCq1raR*+Qh>2+Hxpfp~mOOLZ+s%NoatnwTS#Uq=)2lUOfA9h7#R2Oa(ih-6fEdog^8qQNo#Qyv>w0$OnAT1bC^le57Jz_M6#CJ~^{1=J=x^ zl{qbEow0s=+~bGv;gq@(i61_?M>E7p%aXhC-yTA5en${Dg?k5YsAaP)k2LmeR(jUG zZ;+^cjtCFFn>Ueg4^(;8akN>dQ+mwc1$9i`a2-?2fb1*dvI5C*QTT(EWN0!8uyjRn zGm@~$AE3X~G`jd&=|C;tWoi$H8__ruQYaQ!zK=QeV0AP}?6e)x5UWl!8_bXKjd>vS z)?(C8Mk>8Idh9lNu68ibCqY3c=g0VH43)&J@GX30V|r@+DwRs@X-sVf5?ll}W7%t0 zYa?X1y+dSJaw*Gd+WV5Z=vIJ+4$GMp-j8y%0)x$Wx1uYrqQ@$v;a~fIHR142u1c{D zM2tNs$~PELX=w|w*{{t12_^bIl;#zpH|k1cQWup!Q!fY25%*Vpv{Q4>O75o9_AI z-He4@V@>`s?>Oj6ZMzLI#^T1M9RTGjg&dl<&NGaa%cOq&m>Z1jx?tOQN0jF`O zkoF>y)@sIPO|nAz-iLH_Ku2Var#md4w&w#Qe9-K7^te^@lKP6pQ`CA6eVr>O0`8qU z#6Gt_EO7^QXsAWTI7b&r_7aRVTI$R@nLH?EQzNfPVky0hT0S~DnLKRZes^ln`-6ydtBf4%h3+N&bf&C&WChkt3l*80r$(3)r|fh&dm;21X@p4~>F zM#7(y%9TI{i|;07E7*+)h3i++yJHV`=Kaek#eCOYIGW8pp5 z?JWdzo~AAE*A4SncJ>;cL#Gum-#o7A$>84dHFAdq*{2Fi;p+w2m6JB_k+qMgg?bd!mUqVdW$Qc0r^KrsK(pXiA^!6$4=Exi@M2Z+Zlfh_sDOXB?N^e)aV z3&r|COP(R33DgK$Fy(B}y#1@q+d_ABK=ThyL2Ao`O`j?QHteRWW=F* z9Q>V`9Q$zD3)Qwp$%x>Rf!&P~p79e2IuHU}UmGMPqP~&Qcfo+l6F$l={65E#SQDiV2$4q{|C;pgV z=M_YTn-zW$cU>Z)-2RvkY<$TSIJZa7YC=4-5wTOYJ~QVw#S|%r;(JHcQ|iO8G%v&n z5j{U?!Xb@If;CwRRnTb#5TwhTbA`1rphV9!owBM3rk>wdiT0?PnYONP^}CtK;N4qa zLExt5%Qau!&vgr_n7y_mgqay{14txu3-3TieK`c56OmJh6Q90hHoIwv_^^W&0&6Rs z!3Q}E(q=1yt&3yfO}+;x3S3;*o!J@Y?dm%rRvx(HF;P2oO7Hkl4r0A`#&207Df8m@_J>Emk+q^ZKo%*t7WP!XY`tL+XWpMTxfum`0UYXJ1l;;PR}O}s-pH&eMYBqBzLjy@LB2Y z{@HZS`p~_Es41(8Bve7*e$`1J>HUqYYtpurU57{kk=R$yKXY|j=zpNNdBB$#Y%tWh zxum=}BFgUK>fL?!+ZMx3gpnAg(H{UQclX)}+oIgq4)Ca2qi^qd@3oD&djGmG55gb0 z1*|2hac%NwPzC_F@W0AEVE~XNDZm02e&fF=6Z>@=dEJ~X^6YEz({(WhJ=BopsFH0}R4im8kXGoY2SBOiuB1O06ueZq|pax(}Zbq(d;oxZ`mVxca#exZiwF z63VBH1b2Lvm2i#6X_bnu^9DPd1f4EgIJs!dT(FF9IeKqY@oWFvqD7Hex?)>b#l&pt z(bkPRoZmmwpTMj~t}Qpx>Jk_VmvuLOV29H-*6R8`HuoO$)33rEkGCS-Egq%-EEet+ zqW$FzZCiGzxK9!ZVd5t7n2_9w^m+9&lEfClh|IBpyr+3#eHXt#Rk3V(*AtaPS(o7ag!MOU(?l<-dw0=R3 z>v8p~q#eM9Z@J7xqo?`V3jkdlu7&vA+3E5UzTqf;-yM80N)Wuvqa4_hH2!3Gw)!Q6|mLWabKEv0$6g3*ulB(2W$7X%GgwCA9=@bi$&Qav+w`4m?z zo-^aIwzg%MWgsQs)`YWu!g!Obux@Sql}`Z`A~$UVvl>-hy&t5?;)cD#m#MZ_ZfZswBM2A zY1JeRd630MbM@}p6STM4!)>4*;wj~@=0C@ITi)%c<-S>(}xdi|BR3?>HrM%H|FrmpyqRPDh5dvl z^tP{<5sks(XsD{;b6NV0rdp*F8B~T^blu_$WH<1UINLt@j7(a?F*xL${qkTkyswmX z)XaCE<6H>7dh{DQ?u;*`CrUpwKm`zOnb!oHYAMOxDY`eUn%wuyAoo7SvctVAnXV(g zcyta1%#E}KGBUIrM@@vz!7e6g%30KNtH#dO%A?2Bb6sUEG|eIOt z_46CRqF4_EH&M*C7w2!H4+fHuG0oA}s_$?iT+F>(4T*Dd-l2X9uI{#K5W%>q;Jm}K zX9G6!0yAVvXQh%mzq-X)X1yUv*UOe)yQA(XQ?E3bFF0{+yLQgLse}9k!y;AVuN3Ed zOh-$N%mVi0!n2;U=XwpNpg6baN|k57F~J!l&u+{}0Qa?yXg{^8<2+5;ideE`cQ+CV z)>CfS6xJdxomPTD^u8=Cb$yMjf2vELH8Z9pcS6dtP|NIk@341-ytY&@c|i_n^4JGu zHOG}oInOdx@{Swi%F;Fe_#s5c2zZ+*tV>qKmo$I%v=};3LAudzbbakK$Vs|b;S7DH z>}`|DkGLbl`Q?`VzEVfE&(n9#rcL1pa1R zBNYhuk8NY;yol@HD%-ALMy3F?Riruh!w{P6hc!sUnGXSY5{r&%UQhTsAo_|NNs~gc zbG*?8G2EmdlmDJzqgd~5Ek88tAJ+~+vrlk4=6OfcL9=Ewe2tCPK>}75W#4;OuPm=R zNPW-OW#RUbdqsZ6TT}ks8mCXDt zdWT;5Vs27Rfzy?;=xR8nn;47F`{9d)S}{_sRLsN8Dy>oEm_aSr4e6hP5%NDoRWQux z&FHg4bd(R|`rux!*ERG5&m+AQV?!qD>}ecL$>1M3yK4&tFn6?&8DU`5>`^krlLTMNeCl(+6EqPNkFE`KYd!Emn9 zu|3TOynhSNRp~)Wn~Jy?^?a+Z%|08(=py3Q1%KyppTvyfI6az)8cr(`hcaH7IV3kj zeQSp>tO`UiJ(%uneMXs=xF+are+`*hmj3d$@f#*UP~21ooF1WP3#e7yCfS4_$8UcI zjt;oBw{3KCy_@u*naIJQ;}yv#bseLQ${jh(&ky)cT_LJ4GZVRx@YPgL4yuL$F_p4M z!d2gzz&8)dZXz1N(c5Xtw}ROc5d{6Yif_qF?3h`zdF$StW|@)?hvz+&^}uK18&1`P zz%P;q6y6*gL@W$T%J}ZGfd^2i?c$c5GhU|sv%9BtrLThr-ADX6f%PLi{YCK+M<)Qg z*}!;RHE_WiSPAlX>Aq85fEO%D8g|=HA>($O>}fs`R`PYsFWVXKVq3@(znMg=TA0Up zUoZL_kO%_d&nY(iSx`<40Zn5?ve&%jUIEJG8UUfxsf+H`QQ*PPmow{RI_BydbK#iQ z8w^jjv)eg7z0%GfhJLDj;QPH!i!37?i{9@5cpx1Q9)R7`0hZQYXW0h;;Yx^J5+ zi%u-I$K#0E*23!}4hkS1#ut62lbxAOmwN zlh9mAp#RM3l`MeW!@@x?pDr5$=Uo5dCtd=B$Q^s9N&_6D1x(1A5h@J$#~DjhJR`yc z{6lqkJpuj{@_B7l@NYT;unbs;I6uJ(dx-T%1INK&SbRB&1l~GWJB| z4C~_lAA0e>1NYy7`|pbT?^eZ{8{inn|2G?_;1ptGWrYX)ViUvuF5fKO-9bI3xY*TIjqUS#bH8*64B;XuF z$;rvt_ga`8Pax~J5RnS*AU2sm2yX-DL^ZS(gkEzA2#{S~UiQ6}5dLU0(356JwZWwc zoOA!<3xKmL{b>d{a)GFsI#(SeT=7jtM#spAwhX~XDxmiRz`>|2T&DwEw{>mEUNDeO zTSP`jmt97u?_F{K_)CxTry-6&Q2*Fw|CQCq_wTwjr*Z1yg~P8F-iNeeRZn$^p3ML! zZUpMrGjzWyIDaWRx%8iPy+KuqX&&8rvsZ;%Ld}_gpY#D7$*CM3EC}FR@8a6PY0ub2 zfsy&gv^+d7VRhw@Vl$3rBa~;5Bnc__PbF4 literal 0 HcmV?d00001 diff --git a/docs/images/remediation_settings_per_platform.png b/docs/images/remediation_settings_per_platform.png new file mode 100644 index 0000000000000000000000000000000000000000..ad16567b2d23d5e3ef5b337236f15ca59c2d21a3 GIT binary patch literal 81496 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≺!HORN8GMX;&?1^!P+K$1Nite1L7mLtCT=|Ve@P5 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 MDrzZI$yta05Aa^EkpKVy literal 0 HcmV?d00001 diff --git a/docs/images/remediation_validate_feature.png b/docs/images/remediation_validate_feature.png new file mode 100644 index 0000000000000000000000000000000000000000..118ec3a666674181e5ebde7ff2dae2d0dee3b769 GIT binary patch literal 114519 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 z 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 +

+ + + + + + + + + diff --git a/nautobot_golden_config/tests/test_api.py b/nautobot_golden_config/tests/test_api.py index 03480059..f8a7e7f2 100644 --- a/nautobot_golden_config/tests/test_api.py +++ b/nautobot_golden_config/tests/test_api.py @@ -1,24 +1,26 @@ """Unit tests for nautobot_golden_config.""" from copy import deepcopy + from django.contrib.auth import get_user_model from django.contrib.contenttypes.models import ContentType - from django.urls import reverse +from nautobot.dcim.models import Device, Platform +from nautobot.extras.models import DynamicGroup, GitRepository, GraphQLQuery, Status +from nautobot.utilities.testing import APITestCase, APIViewTestCases from rest_framework import status - -from nautobot.utilities.testing import APITestCase -from nautobot.extras.models import GitRepository, GraphQLQuery, DynamicGroup -from nautobot_golden_config.models import GoldenConfigSetting +from nautobot_golden_config.choices import RemediationTypeChoice +from nautobot_golden_config.models import ConfigPlan, GoldenConfigSetting, RemediationSetting from .conftest import ( + create_config_compliance, create_device, + create_device_data, create_feature_rule_json, - create_config_compliance, create_git_repos, + create_job_result, create_saved_queries, ) - User = get_user_model() @@ -275,3 +277,127 @@ def test_settings_api_clean_up(self): # Put back a general GoldenConfigSetting object. global_settings = GoldenConfigSetting.objects.create(dynamic_group=self.dynamic_group) global_settings.save() + + +# pylint: disable=too-many-ancestors +class RemediationSettingTest(APIViewTestCases.APIViewTestCase): + """Test API for Remediation Settings.""" + + model = RemediationSetting + choices_fields = ["remediation_type"] + + @classmethod + def setUpTestData(cls): + create_device_data() + platform1 = Platform.objects.get(name="Platform 1") + platform2 = Platform.objects.get(name="Platform 2") + platform3 = Platform.objects.get(name="Platform 3") + type_cli = RemediationTypeChoice.TYPE_HIERCONFIG + type_custom = RemediationTypeChoice.TYPE_CUSTOM + + # RemediationSetting type Hier with default values. + RemediationSetting.objects.create( + platform=platform1, + remediation_type=type_cli, + ) + # RemediationSetting type Hier with custom options. + RemediationSetting.objects.create( + platform=platform2, remediation_type=type_cli, remediation_options={"some_option": "some_value"} + ) + # RemediationSetting type Custom with custom options. + RemediationSetting.objects.create( + platform=platform3, + remediation_type=type_custom, + ) + + platforms = ( + Platform.objects.create(name="Platform 4", slug="platform-4"), + Platform.objects.create(name="Platform 5", slug="platform-5"), + Platform.objects.create(name="Platform 6", slug="platform-6"), + ) + + cls.create_data = [ + {"platform": platforms[0].pk, "remediation_type": type_cli}, + { + "platform": platforms[1].pk, + "remediation_type": type_cli, + "remediation_options": {"some_option": "some_value"}, + }, + {"platform": platforms[2].pk, "remediation_type": type_custom}, + ] + + cls.update_data = { + "remediation_type": type_custom, + } + + cls.bulk_update_data = { + "remediation_type": type_cli, + } + + def test_list_objects_brief(self): + """Skipping test due to brief_fields not implemented.""" + + +# pylint: disable=too-many-ancestors,too-many-locals +class ConfigPlanTest(APIViewTestCases.APIViewTestCase): + """Test API for ConfigPlan.""" + + model = ConfigPlan + brief_fields = ["device", "display", "id", "plan_type", "url"] + # The Status serializer field requires slug, but the model field returns the UUID. + validation_excluded_fields = ["status"] + + @classmethod + def setUpTestData(cls): + create_device_data() + device1 = Device.objects.get(name="Device 1") + device2 = Device.objects.get(name="Device 2") + device3 = Device.objects.get(name="Device 3") + + rule1 = create_feature_rule_json(device1, feature="Test Feature 1") + rule2 = create_feature_rule_json(device2, feature="Test Feature 2") + rule3 = create_feature_rule_json(device3, feature="Test Feature 3") + + job_result1 = create_job_result() + job_result2 = create_job_result() + job_result3 = create_job_result() + + features = [rule1.feature, rule2.feature, rule3.feature] + plan_types = ["intended", "missing", "remediation"] + job_result_ids = [job_result1.id, job_result2.id, job_result3.id] + not_approved_status = Status.objects.get(slug="not-approved") + approved_status = Status.objects.get(slug="approved") + + for cont in range(1, 4): + plan = ConfigPlan.objects.create( + device=Device.objects.get(name=f"Device {cont}"), + plan_type=plan_types[cont - 1], + config_set=f"Test Config Set {cont}", + change_control_id=f"Test Change Control ID {cont}", + change_control_url=f"https://{cont}.example.com/", + status=not_approved_status, + job_result_id=job_result_ids[cont - 1], + ) + plan.feature.add(features[cont - 1]) + plan.validated_save() + + cls.update_data = { + "change_control_id": "Test Change Control ID 4", + "change_control_url": "https://4.example.com/", + "status": approved_status.slug, + } + + cls.bulk_update_data = { + "change_control_id": "Test Change Control ID 5", + "change_control_url": "https://5.example.com/", + "status": approved_status.slug, + } + + def test_create_object(self): + """Skipping test due to POST method not allowed.""" + + def test_create_object_without_permission(self): + """Skipping test due to POST method not allowed.""" + + def test_bulk_create_objects(self): + """Skipping test due to POST method not allowed.""" diff --git a/nautobot_golden_config/tests/test_views.py b/nautobot_golden_config/tests/test_views.py index cc546009..03757d33 100644 --- a/nautobot_golden_config/tests/test_views.py +++ b/nautobot_golden_config/tests/test_views.py @@ -1,20 +1,23 @@ """Unit tests for nautobot_golden_config views.""" import datetime -from unittest import mock +from unittest import mock, skipIf +from packaging import version from lxml import html +from django.conf import settings from django.test import TestCase from django.urls import reverse from django.contrib.auth import get_user_model from django.contrib.contenttypes.models import ContentType from nautobot.dcim.models import Device -from nautobot.extras.models import Relationship, RelationshipAssociation +from nautobot.extras.models import Relationship, RelationshipAssociation, Status +from nautobot.utilities.testing import ViewTestCases from nautobot_golden_config import views, models -from .conftest import create_feature_rule_json, create_device_data +from .conftest import create_feature_rule_json, create_device_data, create_job_result User = get_user_model() @@ -292,3 +295,83 @@ def test_csv_export_with_filter(self): device_names_in_export = [entry.split(",")[0] for entry in csv_data[1:]] device_names_in_site_1 = [device.name for device in devices_in_site_1] self.assertEqual(device_names_in_export, device_names_in_site_1) + + +# pylint: disable=too-many-ancestors,too-many-locals +class ConfigPlanTestCase( + ViewTestCases.GetObjectViewTestCase, + ViewTestCases.GetObjectChangelogViewTestCase, + ViewTestCases.ListObjectsViewTestCase, + # Disabling Create tests because ConfigPlans are created via Job + # ViewTestCases.CreateObjectViewTestCase, + ViewTestCases.DeleteObjectViewTestCase, + ViewTestCases.EditObjectViewTestCase, +): + """Test ConfigPlan views.""" + + model = models.ConfigPlan + + @classmethod + def setUpTestData(cls): + create_device_data() + device1 = Device.objects.get(name="Device 1") + device2 = Device.objects.get(name="Device 2") + device3 = Device.objects.get(name="Device 3") + + rule1 = create_feature_rule_json(device1, feature="Test Feature 1") + rule2 = create_feature_rule_json(device2, feature="Test Feature 2") + rule3 = create_feature_rule_json(device3, feature="Test Feature 3") + rule4 = create_feature_rule_json(device3, feature="Test Feature 4") + + job_result1 = create_job_result() + job_result2 = create_job_result() + job_result3 = create_job_result() + + not_approved_status = Status.objects.get(slug="not-approved") + approved_status = Status.objects.get(slug="approved") + + plan1 = models.ConfigPlan.objects.create( + device=device1, + plan_type="intended", + config_set="Test Config Set 1", + change_control_id="Test Change Control ID 1", + change_control_url="https://1.example.com/", + status=not_approved_status, + job_result_id=job_result1.id, + ) + plan1.feature.add(rule1.feature) + plan1.validated_save() + plan2 = models.ConfigPlan.objects.create( + device=device2, + plan_type="missing", + config_set="Test Config Set 2", + change_control_id="Test Change Control ID 2", + change_control_url="https://2.example.com/", + status=not_approved_status, + job_result_id=job_result2.id, + ) + plan2.feature.add(rule2.feature) + plan2.validated_save() + plan3 = models.ConfigPlan.objects.create( + device=device3, + plan_type="remediation", + config_set="Test Config Set 3", + change_control_id="Test Change Control ID 3", + change_control_url="https://3.example.com/", + status=not_approved_status, + job_result_id=job_result3.id, + ) + plan3.feature.set([rule3.feature, rule4.feature]) + plan3.validated_save() + + # Used for EditObjectViewTestCase + cls.form_data = { + "change_control_id": "Test Change Control ID 4", + "change_control_url": "https://4.example.com/", + "status": approved_status.pk, + } + + @skipIf(version.parse(settings.VERSION) <= version.parse("1.5.5"), "Bug in 1.5.4 and below") + def test_list_objects_with_permission(self): + """Overriding test for versions < 1.5.5.""" + super().test_list_objects_with_permission() diff --git a/nautobot_golden_config/views.py b/nautobot_golden_config/views.py index b38111c2..5de262c6 100644 --- a/nautobot_golden_config/views.py +++ b/nautobot_golden_config/views.py @@ -15,23 +15,28 @@ from django.db.models import Count, ExpressionWrapper, F, FloatField, Max, ProtectedError, Q from django.forms import ModelMultipleChoiceField, MultipleHiddenInput from django.shortcuts import redirect, render +from django.views.generic import View +from django.urls import reverse +from django.utils.html import format_html from django_pivot.pivot import pivot from nautobot.core.views import generic from nautobot.core.views.viewsets import NautobotUIViewSet from nautobot.dcim.forms import DeviceFilterForm from nautobot.dcim.models import Device +from nautobot.extras.jobs import run_job +from nautobot.extras.models import Job, JobResult +from nautobot.extras.utils import get_job_content_type from nautobot.utilities.error_handlers import handle_protectederror from nautobot.utilities.forms import ConfirmationForm -from nautobot.utilities.utils import csv_format -from nautobot.utilities.views import ContentTypePermissionRequiredMixin - +from nautobot.utilities.utils import copy_safe_request, csv_format +from nautobot.utilities.views import ContentTypePermissionRequiredMixin, ObjectPermissionRequiredMixin from nautobot_golden_config import filters, forms, models, tables from nautobot_golden_config.api import serializers +from nautobot_golden_config.jobs import DeployConfigPlans +from nautobot_golden_config.utilities.config_postprocessing import get_config_postprocessing from nautobot_golden_config.utilities.constant import CONFIG_FEATURES, ENABLE_COMPLIANCE, PLUGIN_CFG from nautobot_golden_config.utilities.graphql import graph_ql_query from nautobot_golden_config.utilities.helper import get_device_to_settings_map -from nautobot_golden_config.utilities.config_postprocessing import get_config_postprocessing - LOGGER = logging.getLogger(__name__) @@ -790,3 +795,81 @@ class ConfigReplaceUIViewSet(NautobotUIViewSet): serializer_class = serializers.ConfigReplaceSerializer table_class = tables.ConfigReplaceTable lookup_field = "pk" + + +class RemediationSettingUIViewSet(NautobotUIViewSet): + """Views for the RemediationSetting model.""" + + bulk_create_form_class = forms.RemediationSettingCSVForm + bulk_update_form_class = forms.RemediationSettingBulkEditForm + filterset_class = filters.RemediationSettingFilterSet + filterset_form_class = forms.RemediationSettingFilterForm + form_class = forms.RemediationSettingForm + queryset = models.RemediationSetting.objects.all() + serializer_class = serializers.RemediationSettingSerializer + table_class = tables.RemediationSettingTable + lookup_field = "pk" + + +class ConfigPlanUIViewSet(NautobotUIViewSet): + """Views for the ConfigPlan model.""" + + bulk_update_form_class = forms.ConfigPlanBulkEditForm + filterset_class = filters.ConfigPlanFilterSet + filterset_form_class = forms.ConfigPlanFilterForm + form_class = forms.ConfigPlanForm + queryset = models.ConfigPlan.objects.all() + serializer_class = serializers.ConfigPlanSerializer + table_class = tables.ConfigPlanTable + lookup_field = "pk" + action_buttons = ("add",) + + def get_form_class(self, **kwargs): + """Helper function to get form_class for different views.""" + if self.action == "update": + return forms.ConfigPlanUpdateForm + return super().get_form_class(**kwargs) + + def create(self, request, *args, **kwargs): + """Helper function to warn if the Job is not enabled to run.""" + job = Job.objects.get(name="Generate Config Plans") + if not job.enabled: + messages.warning( + request, + format_html( + "The Job to generate Config Plans is not yet enabled. " + f"Click here to edit the Job." + ), + ) + return super().create(request, *args, **kwargs) + + +class ConfigPlanBulkDeploy(ObjectPermissionRequiredMixin, View): + """View to run the Config Plan Deploy Job.""" + + queryset = models.ConfigPlan.objects.all() + + def get_required_permission(self): + """Permissions required for the view.""" + return "extras.run_job" + + def post(self, request): + """Enqueue the job and redirect to the job results page.""" + config_plan_pks = request.POST.getlist("pk") + if not config_plan_pks: + messages.warning(request, "No Config Plans selected for deployment.") + return redirect("plugins:nautobot_golden_config:configplan_list") + + job_data = {"config_plan": config_plan_pks} + + result = JobResult.enqueue_job( + func=run_job, + name=DeployConfigPlans.class_path, + obj_type=get_job_content_type(), + user=request.user, + data=job_data, + request=copy_safe_request(request), + commit=request.POST.get("commit", False), + ) + + return redirect(result.get_absolute_url()) diff --git a/pyproject.toml b/pyproject.toml index 59aacfd1..e85aede0 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -39,6 +39,10 @@ django-pivot = "^1.8.1" matplotlib = "^3.3.2" nautobot = "^1.6.1" nautobot-plugin-nornir = ">=1.0.0" +netutils = "^1.5.0" +# Already a dependecy of nautobot-plugin-nornir, but adding the required minimum version needed +nornir-nautobot = "^2.6.0" +hier-config = "^2.2.2" nautobot-capacity-metrics = "2.0.0" [tool.poetry.group.dev.dependencies] From d932c60fffbbef9bc68ee846d1de666a6affa611 Mon Sep 17 00:00:00 2001 From: Joe Wesch <10467633+joewesch@users.noreply.github.com> Date: Thu, 7 Sep 2023 01:35:44 +0000 Subject: [PATCH 4/7] Joe Contribution to Remediation & Plan --- docs/images/config_plan-edit.png | Bin 0 -> 34712 bytes docs/images/config_plan-generate-filters.png | Bin 0 -> 155103 bytes docs/images/config_plan-generate-manual.png | Bin 0 -> 67662 bytes docs/images/config_plan-generate-missing.png | Bin 0 -> 34084 bytes docs/images/config_plan-view.png | Bin 0 -> 64803 bytes docs/user/app_feature_config_plans.md | 66 ++++++ nautobot_golden_config/api/serializers.py | 48 +++- nautobot_golden_config/api/views.py | 19 ++ nautobot_golden_config/choices.py | 28 +++ nautobot_golden_config/filter_extensions.py | 23 ++ .../migrations/0026_configplan.py | 74 ++++++ nautobot_golden_config/models.py | 219 ++++++++++++++++-- nautobot_golden_config/tables.py | 95 ++++++++ .../configplan_create.html | 73 ++++++ .../configplan_list.html | 34 +++ .../configplan_retrieve.html | 67 ++++++ nautobot_golden_config/tests/conftest.py | 68 +++++- nautobot_golden_config/tests/test_filters.py | 174 +++++++++++++- nautobot_golden_config/tests/test_models.py | 175 +++++++++++++- .../tests/test_utilities/test_config_plan.py | 61 +++++ nautobot_golden_config/urls.py | 3 + .../utilities/config_plan.py | 45 ++++ 22 files changed, 1249 insertions(+), 23 deletions(-) create mode 100644 docs/images/config_plan-edit.png create mode 100644 docs/images/config_plan-generate-filters.png create mode 100644 docs/images/config_plan-generate-manual.png create mode 100644 docs/images/config_plan-generate-missing.png create mode 100644 docs/images/config_plan-view.png create mode 100644 docs/user/app_feature_config_plans.md create mode 100644 nautobot_golden_config/filter_extensions.py create mode 100644 nautobot_golden_config/migrations/0026_configplan.py create mode 100644 nautobot_golden_config/templates/nautobot_golden_config/configplan_create.html create mode 100644 nautobot_golden_config/templates/nautobot_golden_config/configplan_list.html create mode 100644 nautobot_golden_config/templates/nautobot_golden_config/configplan_retrieve.html create mode 100644 nautobot_golden_config/tests/test_utilities/test_config_plan.py create mode 100644 nautobot_golden_config/utilities/config_plan.py diff --git a/docs/images/config_plan-edit.png b/docs/images/config_plan-edit.png new file mode 100644 index 0000000000000000000000000000000000000000..04b52f092a4e5482711d0121d1d823eb46fd20e1 GIT binary patch literal 34712 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 literal 0 HcmV?d00001 diff --git a/docs/images/config_plan-generate-filters.png b/docs/images/config_plan-generate-filters.png new file mode 100644 index 0000000000000000000000000000000000000000..0f018a61957e4a73292a1adb6620d5462761ad1f GIT binary patch literal 155103 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�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 XX{*^vKpkcm{C8bk>PqURJMRAn`(!A$ literal 0 HcmV?d00001 diff --git a/docs/images/config_plan-generate-manual.png b/docs/images/config_plan-generate-manual.png new file mode 100644 index 0000000000000000000000000000000000000000..08fabe20a45d3d8eb0eb9cb4807ac443cab4c218 GIT binary patch literal 67662 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 DFxEWM literal 0 HcmV?d00001 diff --git a/docs/images/config_plan-generate-missing.png b/docs/images/config_plan-generate-missing.png new file mode 100644 index 0000000000000000000000000000000000000000..f97c1cc601384863b4899f1d945341a970faa808 GIT binary patch literal 34084 zcmdq}WmHt(;|B^OqS9T`4Ba7J5<^QPf&xkjNOz-14V@w>Fw!DQDvBU2h;)aPq;xlT zAHP3?|MTWq>%P0L<#If8YWJu1glVcP;$Tu>qM)GQC@aCWQBW?+qo7>6gMJkpvAa5l z4gJSjPEJ!bS{Siy(ex>A`h(Q7UDx9#b}yl!y0kF+)lK9dwy zCplbPY0fxKTlbzWv%ir_n?pXEbXh5(>Ci3|>pMM7X#w$Oz?4dw2HNvc-=212EbAGY z8G5~e_NIMP%fiMtu8tGKruV7g#|ZnPhz6D@`cQ%RWW^AHh?$!s<{W7)S4G@SvO_S7 z9P#DDsc(QwdZR`{@YZGekk0ZGGCRT~*z2Dcit*41~_SGy%<=3vKdV(wsS!R=}12wj3A;VA|_+F7`o z(0SU~+PjE(O2U4fAqGA}hk0OhzfN(rk%Z~1Y0}9#I9t#Oar1KX!lW?i=;$Pz%^!+s z!xjE_IryI>%*xf(QH+Pj!^4By;|8~bvn3CosHi9pFFy}IKNmQI%f-vy)x?v_-i6`6 zoBX~H+``4o+1k<7+QFUu&!7L^)56pG@009Z{#PteKpyBD9zJef zonNyaDNG5TKW!$3DQtA93k5|Q zMHw!m>v?G<<4Q7B^I!-EsthU`A!-oXbCmjtUw`Iixa$Kyf=Rbb2kkWC>!_95ro@CnguITLv>m72eR5V7qOBhPhsD!akz{dbwl`NNQ ztM4X~p#S~-0w04lyaxZ@Bj8juX|4Y3(8*5K-&g-SKOFYv?{&~EvgC*sN0YxlK092P zUVS%-8+Z*bdVS)f2cC|Gq+7C6%k@STj@QI3*DcdqbS+2Ni4G1IGH3NaZFh=Kzkc@} z^XBP}PV&Q4FuGGLk}!1C1aCjP*ZqFEx+Dabn&Rwqf0DNcP88fsdXH1$bf<6n<9clb zNzXh6OZr=#gTaL>ky|7WYx>eA8yJ z@x26fF}5jQGc4}+4+i9W3bbA}7+7YIaDUqAy=pM&{qwbxAHr?hL!Rz z8s_8&Pm^D`PY07-Z8w3NL`xklvRd7X7zgc?DZWdn%1IC{wp`$8SL$@U`mQUtOHFJk zr`mbo>}~y3%Kqw*L$25sk1@Mgm|JS*pz8H?C5)RXT z5v>X7C{3N<+F!=XHG5H?>EP#uZbE8VVEX3$&ND3Y`y+9o5C%mJ{o$ zf9%hvM{JYWSnB-b8W^7M7j^#eh1YTFv*GSn?vJ*_;u9a-zS^15^pv*JP%b>40R778 z_|yJ(N?g$&vGLn(seL6O(Q0u56y-DF93i%1P@6xu@sXpY5Yv!rwcOVL{oJHSp6r`_ zc;+1gi)YEOqxx&KP3s;LZg&#kS~_E+!?P6kYK=oD{tinqlmH|W(YBVK?yQ1)XdY-#4m=*HxqJ_NG!;xMEm*=Bu+YH*rN~;Lj17Q=YIQ{T!3E>V-~HoT2-V{nX9* zCVw>I-HhzPS?f$F5`OUc$y?BJp@M_@46aMPxt*oH)*aQxp3}ikVjGhipX&I}r&xw4 z(s(i2&!!V;NH`f5JVF2Jw?9E91qRbKcU*2tJ}i;&v6eLCnl2WsJLD6RjO0iO=O)}Ug#_Eqxj zfW!OB#HASsMRzBZ^rbO}I!TG+m2y6{NPk{q$NO#rw|`;;IMkgAd3?gpxNBEA(D3Yz z@pUql2QP59ZOLu4IgWRKlBG2q-uFM86KgpB@UsLfr|+B4n61fIu6NjA67VW3hnj`{-Xrr3&1o0wAgpA|2Z+xv(e5fLzM_S@V z5D1lMB)|Q9b?EXOL1X0DsLdN{h7dR0t%yJK?cx+#csP=$_5c|zH`$Gf>GDnRj_ZSn z%_e0A5*{0LGGmbj5r2`;Hb+=rlTZ367}0dA;p-x!HDK_6^4=BNGtBhcGcXj540qB6 z^US;$7BL;Z<57x!<~kZfxAwiY+T%4|tL`k;tJZRNAJ7X@IR#rV&?Dr~Ec7I%zYqpY z1?!8RY&2f(^px8JBX};Hj&)1k+I}G!uXruQO4-i*_6PHd;4cKS3^vv^Ywu^H-)^>0 zhWhP|u&{jaKiO=hl0)O;)Mur??v^JtU7;a5m#9TmZhCK!@N3=qnRqxXNcyf-fbIu# z#9p7qO-V!0iq<;5p_h2zS~F2k3KCgo7}LeC4=KpGe-j*PVzu!XP5vA|)W(uY<$#;R zzjP$iO?Pw{#c0-{eNzMUwQ*EDUbAr;@ifm$7!kQ)45virVHi#;zDGx+`E{w!nE zDbiY6L7GYmKc0%hb0dk%WtSAFW6!AflhC3V!Ro zQ1a#5?T8QNR|s6>HE~F>VG;TjA3qhy%D{z>sb-Gb_KW98wmyb#VPT;Yc=EJQnU4iJANw-BKm|>QG zJscw~GsVbY6e(nqqevf)D>C)ufO>C*R@B>)lSM5o|Cra z-)8v7HeRj@k2}f{*RIT_D3i0L)aWnLhatJDhLP$`jHDgM3-2cVvGQMdKeFercDv{B z$!$&C&G~GeJmO}oSaPIIM1?R?itRMY5B-_;UdN5DAMV>}($e{S-(CCEUS_d8Z5*zD zqTAss$9dniN51+Q7D4aN*YAuuTO6LSGDm3UIGJ6u*aPF=@OHndE(U{GK5KjSX5gP` z0Nrgs@hW;xxOp&5@*!xJL_=>%#phl((329+ntbt^ZVl?k27Ek$)8XUQY{zyMPfsz+ zG`Yi6sGiSX>LD#ATtL#KD^m5C=P>1dJk8;^xI$o|M6J39mec$grpd4`hG0^x<`>y( zGkC~wYH_CKY)(MZ@tXbNh>#}pH#>H{+Tp$8gE99pyPxQ=Xp>vYk5vo3JDf(WUPdk7 zeg~Gk{uC^ES4IOu=_Mbt$rO$RG&& ztqec7AMLN-w~X{UBSYo6E=++r0@nT{BKV4;Vb3~a6+sgMR>dS&L+JF3S)`Iram`9)}#xOa5T!2wmC+6J$c0TRbdVD83TV}6wPPT zB!h=+x&rT_bQR_wn85Xt#S<-(qa=RdQf$+6DBT3h(n`re$^!lEK13uV2Xj^G$5<5A zKq8EG3J(0Oj}LZhoP)1edq{kYsQBoNrn%?4o8+>(LY*ndL1L8@`Qkw-nIwvKPqsV)6?? zNlFXgwFGUZohr_cOyq)0Q~9=&9b;2`Gv|rtXz#6vzp7(mAZ)&@r)r>wAm&i?)(fY3 z`_$OK$aGI6-HisG3TmB_fb1x9{t>+S_lXcW znMadthnEdKDBb&L^an_~qJgF&=;U^>>@D|x|Fwht&WM#3DSkptxmHL8Pg+Q;(WCjo zA7cR25oca%+B5A5J2Aubdox(APt7IzEQht!`>v37te!bXf1c?WxW#bHXSnNJegI!9 zWA4Z^qQeJUes|q)6q5%wwsbD(_~_Sj?uOYFQZ=x1@ouzpydfsm8+rDljG$T9qjIu5 zLWyp09}p9<+4{piw|lEq0=hR{eBw*XOwP97hks*GX%(2y*r^dv3`^|WSz*w#_1)=F zWMEk~8xO-T>&<5VOMCET7qsz{PckDbM3D3nfy|T1vzwXcCoGR$PF|=fHWGAcyfZaH z)w^r<0+Wa8W8U4$&Sz>E=GT{s>5#7_Y%8c3uJB!F3%Hfsif}i7ZlG?VUkr0nj!?<* z3;yopT+VjC!;39(O_4YtH$B10@b0ZZbY=b|*)Cd#dArg@xw3iqo;G!qpW$&5k1CYCS#93N#{yN1EbRcnHH6@kzNq0&V(9zC2}ExYYFQ7fqQbKL0h z%Nu{2sGmOo83z+n`w?7G^5X$tH4TejVQx~mM~%U=sA{2H=878&fvy=?JT<(|=4}?t zPh40iuceXH_QFsRLByq2m^+U$I4A=?{D@bbDZlUN80HxFG->r_1VcA1je0wyZ*Pyb z3MK4vYa%Pv>5u9BTf?oMLilqCxYoK^j3g=TlT?wnJ8q&1{ft~gx8Nw(uJ;5E(;H#R zB--)Jz_?1)PC1GERx5`TEMJH|fbWstgxv!;*4_7u)uU^>onTBZ*+hK0@i^Q)E;S?r zK&ybz(=t~Pm&&rPW$RJ}5)lGfqFOdsYt-cf{sqjW!qX+qDyIp?fYhqz$DQQ)S9lM; zZTUQ)eAQK2ASdLVL|e+fPnDGL2MbjyW#zCU8{whJjrEN}d~3dB_e$Om^MAQ#S9v=! z&+$(BECI@4$o7|}^ZC1ioy}z}ZPm^7b6&E|k;JkujO4^jQazp_FBMC)V6~EK1)<1( z<~_eA4#?arN1gqPHl4L`>L8|F`eJS50TdUQ_=Zz(p?!JE#J;=JPKdBzvIS64~B z>FoVSWGBPke+Pu4+DSt-VBvYNkxQ@c_RsCVYlPK0no3?*k0_E_B6J>t{8*fCrR&dT z=5A#7gP8mX2X*<@|v{VGz| zYkO!bnfUemMYOzQ+2}Oj3`F`hPyAtv_&I@Bal*T5RV*R~;`Z*$NRHLnKKA70gXP3- zp3ozmaSXEeEZ-dNq@WYU-Lh9F<|jpm@VlzidQrEN{Xea)p4FFZnI36>i^ZTaQWQ?> zx1)8d)s#kqKD1UpgQ}|>fiRtFqAzGSfM@CZ%)x2{%c69{(7n20%m{;D_$9_Pd+~PyX9g|DAkZqWkJ2K{VW02 z=Gi9%$6sad-_v%}^_~R1JK^3Db-m`Is9sK9ZiR+6Ub#yF`@{?9WwT}}5q`x88=55L z4o9Qdknrx8JZgR$_EpsBp+6IU#vR(geMBAfVlBTO8~mM%%~7LB<*BbH`8iOc;mhX; zBEYc%w({VVl-T;5iPl1dWDhe|4Cf`&2~y?#PVT5>#N}?ahVmEG}bPZ_U}y$ zv7d^H?vJ}@*c;<$b%?Lml($8YRdBEh>HT?_QkF8fQmtWL=C#@rR)Sai7G!t6I1p_| zssk<}rj>KT@BjSII0FwvezD1#Af$_0TguPG<;1L4an1S4cPCU-2V!;lKv$ZT$Z#K% zq2&HM33tQ56S$s^B>Yk3etl>6Ogd22`Q1Rs822AM{+|@^j4q3{2u=RyF9q+9+q8ZK#CZ-_f&dy!Y3rZ%l8E z8EX;~kQ@Px(lm(m9Hs6LjQOultzyvd6&BM^INv`-B5<{N>l}Sn-rM~jp)?kqxK{+A zII%B(aovBdRC!BUOZV$bo5_pSa}_A76mauD&GzfttR!&sk(cXg+J!3WrUOkHh~WII z06}N>^Mj*YF(rO~hdR_Q6pUG{kMQHJTzuSJX3$sWdMX_*HeDcSejHfYzdaYU{#S6c zQsTp&+Qq&SD?M~oRiN}Uf`FmnOB};bD#>~@qM$J5RMvN^Kvco4`QWim{>MagC5O11BbeWFU|d_#$w0Jz+yH3F<);=? zp96j=*NW6`x{Kr0)0_>Uzu&9@+}&i*z>-Uqn1Ff|@T$gx*_cV#={DoV2lk=s8WHcV zPu^SsI!*PUT}6+=^mf-xJf6A}XZw3cPpqm}%Dy%LjT!$X|7?`7vA%6-GZF#&1Sv6C z_kB0zf9c9N!sGbz?SPb0;Yw_L{_LeP5~oO$GIqN7GNuK+7oc{+D`UtAZVH`K#9c|C zsRdMs!wf#IR^3}1DYqO3a_ww&!4wchG2mIaQU_BTpzcB=xIeIB(@2P%fd6Q5+I?8c zGifHd6FGSwAT{2loP_z#w9^fseT2#cUJZ_sI%2h_;e8-2abHxcz*f@#;y_7N%$mkm z-d=v=vI7c62#WggJx+as13EUGU^`ClzTd9M&>|2(u@_$W*mH(Ip}Xs{m>oI~ZwFOL zTlSQtu2XjMxv}?>NLQ#IBzGO`Pd$nXtErpcEsXe3&EjU4EhZ+JmB^d11KA)X0P zjbq|?(7y41aHW%PA>AdUyi<(h#iLMacf{DR zBK%tYQv|(tMZdOcbHDhg3ffNuLo|AS^>Wdx5ZcEle3)FMuB;E?ALH$+Mjn~~p+Bkt zk1vFdQ7l*af+NEvm$i&UC)fcUcfngO2+@qkoMu}#UbSN~>9>#5b@SYpSOW-7mUQ1< z$HuJ*fsPacI)L!Ik9bMMl3TWsa(5dN*(eu z-0yOR(lubpCzZACuZ{^j8n-)?Hj_H>T@9kaQfEb!<(zQ-Grt8a6BT@5HI2SSNWs~v z7L;c*)R50K^AulJgx(YJMFO}iyR3{dw^^^eF`h=H)Xx*g$Oh`4L=7;6O8Wu4$gml^ zb>kcHyWQo1SJF82HT&OvOw#PC!j2aiU}4?~yzHLc=MFg&&+q$tNgqgVHWBfyM)yk^ zLvnZWqoP6;>NTkg>qgd7G|X2Cm@l3LU!702DY2 z4L>(c>F(gY)_&Q}Le_ARQ^kL0QZ8B0E(PPp<}Vc?Cn?!9oUP#snIS%&Woh92XxUfp zdv7pd`b6p?Ci+0DnPqqG@PY+9w6o=RNSa~vJdG;}%>Z+$Q>W%T`-vG3m^vc+&V4^Y zGA2`!PueY)jl$4PcIStTq?pH()5ByNoyT%Y;|M(fi(Gi2+~i9e zZBatN(fqo!g@O;+81Bir2XWLN?fyWO*-cGd{VC9Qi)evCYmzNLoscZ*!5WF`<83O& z|Ff!yqGq&kVrn{kvKES)k#EY$jk-dl9}orRC3Y@5$OJTG4Y)nG6?Luq3}6Y9;?kCI zp4!J?R6EgV>yRo*FP6eZ*LR+K3tntoZ!}L|+@IIX14-?e{kYxIEGoYm-4&0iM864(n9lddJ=-UAVT7ZKau6FVL?nZ;dbNW8a7wZZK!gcjBrOFrI z?<)Z~Ol8yce+nZ5u%VC$tI+>>KT%X8)r{q@JawFvV}2KI^aO2GG9Vsl1uP`{ed>zK z|L04>05FH&^y~PPCiPry`r5@;V*sz_)}-~W>%v9Spd75B4R{w1DuVi4M!dAoyx4|N z<>Lm^UaaJ3C17F`C{9RS1bd>OY*d&xFCuX2I8bX0(I5OSE@e>7ixT@^MBidC@H9m# zx8r|jzDpQCKzDIwJ^8n9UBYmMgQrD{Ebsm0G|+>;fNG!9JdnB2{6GOEmZx^=UoF4T z{ILw(g8OZt9;DOgcp+obb+Mb*vd=f+fbzD8y@kWsq}b@KD>%*Xwy-Yf<5NE%5o#+%lkpIjm# zQwT>=RBNs%*x}R32GN1(_|D?s>ojD6P{@Gs@2cy*g^EA|lb>bqXtfxoukydg*UqwUnvJFCf0wh^P7QzNdwPbpH#y6Yd0EGTMxIQOR{ z&;luaj|GgdpA6>57yCpJ=xeu0-aNb5CG0Xl>%WePUH#`pL7Nw;09b#!M(-a22U@qn z4OJ>1oUO@Gxej_Y-lYGrT}F91+DuM@da6&>V&>zs>$L!&@Pa%-Fk4n@gVp7ZF1c(XKuin&#<2}v*n!&OO1aum~+IIbe>k=Wva$;+@yN64R z()L)g3Elc_3Ml^+MjDI2D)m~wY}B^EYsIO;{1=#Dw!Hu8DxIu5u$SHf>=9ZYcr6r! zEW~!evONy$!`*fvk4AtF2>lPHLy-ei&R^(FUPcMAf2e!8b^x*s&So9}bA|xJ?+tFa z{XZ?9jDyBMhd>BPFJpc;GO zHg9Wz&jN#blS1?wAPJ5jau9;SoJ@C1a<~8X>ME28QHUfb=!%06ah7)w=4H5#zPBqX z%qv+J_AQzeBm+jh7jRI=z4MVYz4nK=@X_@^3=-hCxkSUWWj~`}Nvm zWWw1@1W!nQroWgbZCw7qo%^4RjUZ>tehlDpS_TT6H=o?~ZC+P4K&X@Z{nXRsPGJBQ zTATqNu_V?4wzc2;MP!62J9)!0SkCoiP zS=p~`0#;)?XH0{VQoA3Q2_#w=IKmN&5CGCb@dIqAG#9uC_oygE_7-~>wmtxe+yL+( zL7hY8fSyV9TvCLEiGkI9e`*NH>I0#n5t1aogU251Shrkn8TOd;BO9p$kee@FzG;0v z%>h@D$_Wl7WK6H0|F%rC%}QV>jD$?PqLX@EyGiwfHmmnul$5bzu| zM|kPB()idG_PtB$0CBoe7@AhID$UV3));8qy!c2JqQB7#J$olJ41K zyiM_%Pcggu<8#2}MkwR~$V?#exPWD#-m>Kg*xOMst2U!{y_RK zyg}0LxZfaxy9Pu{^56&OnK8(pxjE{cO9!L`J?U`S6HX#+vVH z%M_SG!e)pzD@PutHQ&h=8~^PBNZS$7VFpdfoX|auugsyFNmmFb^qPzy^aPZ8d4<6Z zr!}=eV{q{P<5S+B#pPGECve4A-ll72W4px1e*@B9w#WMSO%9hJrECgOXY)~`K_5a3 zIFG(^loD|WYx`Y74fG&DkHo7|g3*m1pYH0f0Bny9#i90MH$Z?P*#GosU}Vs^4!@Lv zD=Ja;C|KHplHjGRLijWoc+~Q|F7L=+foO$53Ad7K$#Ct-Gt5HD?`^&8p2hlKl1snH zsrck{pki_2|5Tsz`>n)*wxg3xgliHiu*oLUN*0kmYj_v&%1!8}-E*{L#fAt`8FZT7 zX+X+!-|#?&@GuDPG^SX-xZc;NXXw=IZ87}0x2p{^cRJTE_j}54=5pO^v^c7@b8+N5 z&;y4=i|@U&uU@x4wAbE4_&xxo4M`=_;x-;JbH4Vj4-Y^g-&@K)hjY(o4e64mxS0;{ zc>r~_9)6f+XWA4s@DpDbeM{$^&$&+Fv62p5uJe~;*h-~N;%|4Ot(piO1Le3 zdtRphk;u?hlV&6eIh!k70%1H5zRAe~s?w-jTp@%`@>;NIpK^?ijZPpEaVR(-rlwAq%?94dvUvno<(g4= zvq(l%tL1djyX(_)P3rSLapjF98CC~W!?1`-T@;UR&NI@BixXRubCrYi(Y5m&dE#F2 z?VwH&7CCsJ*Na=qxxZqW)blW!#4x@TlX|;3`I@fn{pwdOJbPmbhU?QK8 zE~1H(`pb4I1On8}oDa{1FQ1)vbuu%{&0<>yI+vLT{J11!HO|DfP?!jVxwcU*C>LE^ta-?e9X9zT3#k zw{Q>llr>u!e{6V4#RoKegmtaPgd}}JxvI~}t7lS_I*d$d$gCqzkN5B3 zlc3K3(Qk{?0f=&IdXYtemb~6jo}e#aQh$Z4c=lGpnF2fQ;CG$rqWY4`pDQ5LBLd`! zneY(K_J9XWWv%QUe*>&mH~>ZuX03^)sXbYs-()vO&#pikW}n*I_@Q>3Q;0Y|_$k~3 zh~odCNB|$2uX^0`fIleVmmHi8gjcbhjWMs^UHv~arS(Jb|6q12@GxA-6L;f3$OgKz zCb1WeQWg%u)FJ%*?AU?wQJmWE^%Tg{p(p^UzE~(=eI#yXtICM4UvdQUp9w*KUqSj3 z>Vfis>N6pEt=zD?nP{mpSs*fF@+Fqu1T3lwk*W1Pa=%$k0T(J9u@SS8u<@MT4xr6m z_-hT+Z*<+CeD--kjt`;$2QO)XVtM1yw&tJWXi}mnr7*|_Wd_yhTI&$sPA%9~&PqW$ z$lhO{tV^l%{Ko*0u133+$?-gK?hm4bNNzwXpjSn0CY3rD!E`ksCUfy+>3<6Y&elu- zM+HTT-Bm7B6YFyT0u8nQu_U2;J&FfMnL`KEFLKy9P^-^W+np~yP7NF#`0;j>?N7;| z2Ffx7&El;558i}Yr9c@RO{LNkXZk~fpduxzf?mhX_Vwc91eL+jgvLkt7fbC7Iz~H_ z#h)qg*SA^BkWTNcznXZl)Z76jbEFlZD!Td66r!oFLs4Z2%qm1t4Dhq;a{ehw77h_m zh+Uwx+Tz$dhsE!oe46hSu@;GFb0kXlVbCG2;?YnY?JN;NIyqRN`ghtTwEt9PKY9ST zF!Tot4uIP;4N6+N3}oRG1vsEz;KM-_5EEolb%+OA-i~7ZuBB9E6fFS&HkUmG0=t!|^{bnN~d;yGKyAhP-Miqfd(Oix&sfh1CPAKq9RS*s`2!xryW6i53QRdEk0dCTh)pXcaSKEhvw;Iu zy=r%O8Sg9d8?En#%p#N>2N1FmFt^dX)DwV0f`R^Y^A>MC+V1Esun(GZDFKY9-uD9m z_iFw~8E?%;_GaQ|8vq`M0J2s$Rk;u4&7lAmyCe($d^U?l`-PdUNa8&s+?ty@Gc3Y) z1k__Ah>nw0jXQt!W>N>l4P_r(CbR~E1Ov;@WNM(OsR;l+cmsErOTQ~~yuT#l40P&X zfd5O>UmKc1+IY<#e&sbiqV)kYmKcElYW=IFZVebLL0wYEoc;?B zFWIF-8wvJTZUSpj0SdV{fYg56#ERvgzSV6DdfP*W6Nf7ja7@csmX#NPlA8dXK0^Gv z@AfxGD1>R`KEfn+Mj~bup)0rZpb)==$dF1lk5_I0;xT^k92Dng2zKd` z^f&-?wIM-6>iVJI(New^v4w^J$f*OQ%G0#ByVS=b0Vq&_o$m{aB!h;4Yc%9P#SVWY zn7KxLzyna;bIn!~@TgnFdaFzyQtdwe5z(xU(b9Evv-v&%N<3raz2?pHVG)@Pkng4- zh>*34Pyfm(-|bs^?*gI~uR=xVlNl6*9a$45KsTxOQ{}4E{j7CMW34#_bmZg9rslvC z!G%~H#4LKV19VFRam8324a1e_ZNV@}(4U9AM34ygv_H?133PT_U_U&^115=jO`pcj ztH`C z2RQ|@y2@$|){I5*4(OO`Q)URl$VBd-2H^8iQaknj#AgLlinquNf&sZ*2l%=C!X|ih zv^tZ=Jj4)LS@G${wOCfM33hDDyx`I?EP|6zsYf=es!~)ZSF99bjVre3uQAPEX!%*d;W9qo4(bnHkm~JG17_zJ>lrk!s)e4N}r@KQj%>+E?wAig~OS#XZpI(cT>t6y%>KLL4 z0{P)^4#30-GM%^yVCk7dAo1S-1fzIWGbC>BJ}-<1+Q}4`*RKb|%+a?4(>7lj3D(*9 z&5p+D6P)V=RP$;Xpl_F2eHe?`kRfIg2L_r;gnA7a9DKcj2)SbVa0F~xnju_iKqV4E z)hz|X1mjPx7`OF$J(PWiYbAH~r0)v^WV*a#F(bf+dCpNRWdw8XX8uH1#nRb01aF6) z^OTvPA*8_JOFZ36szP@-xhNj0fDO8D6NQ2~+jV5-&!%Q9MoS+8xp6idfv&xp{G&6&Wq$p~z0@~Ndlh%dUwPzOkt9qc z(Cfu((JJ&aT`$y5rwkSNs6ulLl;Rf=wz*qN8DXczXbP^8AJ0W94H(*=6wu2Cm+~7{ z`8QGBQW?2x^P0pXU-;OdeNIQ8o!Azy3wy#tN&;J@oT5qV(hhg~ho-dAUh_`?e|C znb!AX5S8%RI8yR47KjG8wLrV4J#Ir@p%(r>l+yKTMg z4ukFvLW@x&APj-p+o5T1(-GvInj`<*7ly3N!3ro28gLdTGQqu?F~LKT7Ll|zNA3hB%jez(QYmDGD)7tRdn+m7bKeOpMKW_HEO1&AnVJ`X>_ILm z{h8NE$_7zr+J)1e#IYyJ@x<|nPy0N6+O|)4p6qsm{!Rd~0^HO`pIvgya^Bn|xa89{ z8c({l*+bbm3N1!7Q5a*`s4HhrI)Ejjes&uf6<@%n48FW?1ljH3W~AqIZa2cT*i~UK zHZ8Kzdl^$En>pl*4h*fdLa$Pq{l(~-LDCacNwDDYao$VJ0dK13Q#aK`kOA`7-XDK! za@5_@`jz?3jbh5)Jw%7&0!?WX|0sEc)LSufj-}})7*ff{6jxI;N&6+f zs7S-1f;YXLr4uF+TS5mt^c3K_lIK;=AKR9$bLKrM$JHVAf6(@5-pmM0gUz_sG=%DY6tqlR6>PQ$zvr+;D;IKUqggclGTEAuqO zHJWH(u{et0GGkqNz-eRD&Z^i>70uOxX;a)CawEBlMC`@2Xu{3=IBgFJapLnH72u89Jjn`we$#*`NhZl%q@_(ylGP^ zmA?vqh){oPN`1;hT#3}ExV&&(?qpL^GJ(b3w&`XLOJ3*`SeawDQ>Tu=Yl7RAVaUj? zU@~KJvYrQRd*XUm@GKu@>$HZu8U-*-|utAhL1H?eH!l;R)U z8vE+EFlx3d@|}Q`4fD?0W^j9HRtpq9TR0&OXC)QOD;?{NpTaSkje0$_^_x%ilU_Pe zD~sQ{Q)YLI$H3PXfX1TPE(*3s*!BEhVdT9M$^3YQI@pRr$LUmP3Zk8`IVCQbQTW_z zgHI8}tfcTSm@xGuJ(5>0Glci8h^+7CVk^?r>#CWltGFAh2zCw7{G1^Y9&BMZ0bJjqNLG?)jvtm*FZw>fAFPj)d#n?M? zC+sbrigkJST%^NW=!q|O?;BGmT{M;%yX^r18(r-lar`q${o>_>fZILGvZDT74G`gr zmHx;C47hi4mW>zbnhHL6!>33$r7T%A{lWAFZR>w7+r^k-5#05P-nBWNB$e+u*FR83 zeXah)V!*35@t*={W}^5Lo@wW*Y3W)c2U!9h;!oATk_*AcXbi;@Htolbrul8Xh<33IY;KsCtH&;3xi=#Q!=v=!=4~ z4|W!N=ns_vlPh@7t4%!cCD>H>Q6LHd3{C5e@h4dju>n~~zT!RE|7jKh4+*7-qrmR) zQqq&$v(sbY@|F*w9O27b8);~FpP{h1oF45)-1Kf}`YTYzetwKW7Y-KP>mfLldQObq zMkI=lf(fm}F3sa_2HwFJ%*a+$fyMV$9`efUxJZVpdkCtT<;u+Fk=hDuC8 z3`t)`#>E56<%YCbx4GaA` z8n4Uo2r5P&y$S|q6?ZY<2RWmg{>mVk}?!(BhRzdN;3Yx#1&8+Q)IE&L+XG6&rAH#bPZE@e~5+irlE z5)fZv9DmC@oredK)Gi%-n;tFEkYG{_EO!&&Czt4~0r?CMY-zx}W9((2zVRJMI@3?F zxDj*j4FXuF{ea+u10{4bW)GbQZr=%J$@JwnbRV&(_B%Q20)~c=vHJ8? z>LSxY8z76=Z1$ed88T(9^HP}aC>}Y2-;)ReTQ}K1fBZBCbQmINum4*Bhb#6=hW-Cr zo1`THdX``uZ~G4X@tFi?kc2$p1%5^|A>>E8Za8*3o{S~<0n@|;h&+)J~4^h-n9CAJS3DrYFUh|#rmgx+zOokL?D>M zr(Hb}u)U@csA-hJDin3DzJ(q^laL>Ze*~#O#43^EPdAIpJHzc#0GD}5{t+k~W&#*8 zNwi$l!1wqSKLs}@gOp?%-;MguLQ-8I2Rr@wGG1gW6yf0eAU^?8r}`2eRerzKpZN5@ z>JN1k2wFKbtpmHlbAduJ{EKWE7z;PQQ`fFmjUgGHSIrtiyIvuq;!-G9zIZO?G>S36 z!%nn?_u#A`?ELO?pJ!NJG3ZS_(+zwKOxTt-knMi^F-ULl!M1=B+Ul3MP$J|};Iv$g zr6CaUv772^#y;5COFx(~n)DsoM;wd1pYz-#hudk0EOZs5^ws5GZu>&^V9d=kkv%hj zYjGfhdpyQ0>ZR&3k==B(Xl4x1N4{V$;Ew@C#B5UJ+UkNQ8gnOjeAXd z4vIXIzpfuCu22&iF|THa^xT&kptGxf>i=Mv?S2+ubuEq%NtqK#4H7XI(M|8;o*UP^?uI4PXA11JLpMP5?jAtFGch!lC^uK2Zy2cS8PPK=x-@x$h75YjE-e9X>i_Skd#(;#CW z*1`65G6%@2d^;e+UZ;O@23+2zMaoqQkmEp-Ydn54)iS9JbI+mJ16G4E14umENRXZx zMx4B6;v(ehnlv~gb-@-c1DjS;M3}E=tSS6&uwF+qw4%o&+_rPfDSOIFGJVr`?U5z5 zAQg5K4la5FVn=KRXcsZ2Cg4{_Fmk#xjJaLh8 z4ga_#VkH8ld+c4O98n#K9eJG;h74W4Ejs2@WP3jCxS1Z&pUH^e|A;Ja7JUn)jl|Ua zj`wgNozc~Gkq7naF)$C1jZI!k4vpClX_5Gf%oramo*M~?DT=5fgqHIkZ!o;ZVWDDK zzj=PB;i~79nY7WFhFM|_?y_a&GGvp<)Aok zIwxFW2)#$M3D?@%w$bq}0X&ByKD@<{vITGU25LyPOdI}aS!RJVQBb`fy&PFkFV0sw(%nu^1-J zS|m3Rr>7wuujiTTyVQ?mCkrvtj&ZNL4!!8#A|64;fzwSl-kX;jO&aR!36$)bmBGK( z&28T(JhDU|%Y_V^d?)r;=c9T^%K4dXcFl!*X4-ydf%&dO}M5@r3)gjhB(PRiXd=RGTNIzkrvIwI<18vND?IY~HW%Sj-*OuC7N#3r0d5#}Fx8)P$Idd~W`9emq9ZbH=J zk1)+8r7;*V93j3abellwf|{g*vqKyX~d+`NDXvlG$fKF*RSlCXJCN-;TmUH@` zt#J0nt`m#+M3m*dTx_jGDz{NYLaq+b#X1^bw>8YbTmt<%Qi)Ule9x5k%$oIzRR26 z+*+anPqvocuZY)K_}|OHW|l+LW6HhfZH=?SJf%P7x;}O|f$x<4_%NbClbbRu5KF69 zKrc+EC}y8{b?%1n9sKV83_+OMTlgY#PlJDzOF8o-Vy!2d5iy(@ts1xOYV1GU(it(`L`we%bj6vs&tY;eKku=8)o=*y z&^5!v_VBI#no^f6bJQi_LzSs~qwU?w;{)X^MtXSzsaek)@$HdWrzGVC4)gKCmg>f^ zW`vRjS0zDdNbdRwf38$tiLT}Houe1gf%G%Q^o^TbiR}qUw8PyzE8QZpZ0Y-0QFiQo z#*;eBdM=}xT|9o4wuqy*Fv_L7JfC*7BM~!^v-O6gWw zkVXb+2~mcUZcw^;*Y@c59MAg?yg$5NTwXX1>{@&6_1w?rzQ<+uf@3s^&u}uyAiRhh zsoZoeld?1a+G0JWbR2=BNzUy|4)~bb`%s7J10tT;8dUhO))`m*Ru?;uL0lQ_#5HL~ zI#PTLxJ!As%G-=7lGF;;+9wv1CcH3{I41HJj}!1cP10$$JLHs^c9B!gBQGu}jFs=^ z+Kuk>FIZDd4Nav~MxGg;Jl-BlL(#?0Q~7rskd*JZGo9Cmr0?uMnu?|B z?IwPJMX;>XQzHK?#0i`I1NQdLiyR74{ciXtxpOIw?+Q&660=K-6xJc|Jo#0{H^3po z-Iwv2LzQ9h0)ZvGSi6w2><*g#SqKZqHjFIsNlUz6sZ-;k(M9b3xXct}9u4cuSagq= zU(Hsx6VBMdajXD36=~wVXODSX#Qw-TM!fG=!@%DL0`6nXNtm|Acr`bBx>hN*7aa|gx zDF@t0^O~2D9=!bGo)yt>Mx^T z_%QKAi&u;Lsmx0KMbX1kN>q9y_1Hyx(4PK!oCz*rQFIJCgf2lxIdU~nqldq-XL_1X zRkf6J&v~8pLoA(>gTtX6(=4AV?PLCEU)0IXQbk|Os3`ex={xb;Vv4&2Y15($Y~jnfSa-&l6U=JfT$CW(l?Okh?yC<^+m}m+}?$wS|Da^6TAkRg~n(Wb&1E zfo4zRBm)3JkBAo)u{TaIUqtt5WFDYVsmEmVM!gL32qFdCOVaS_PL(VocDEf15 znrC7?_2ooOwPO7WR-K3U*E`=ZhtgA;tC90i9-dsWEyuqsRn(wec9t8*fC^-h)+J3_ zePMN()sSN+My(V-Ua9bY(K88UV4A1DjNBK@mW{-czyZh zYxKrF=hN=7zBiXIU-si8=T++@Wbb;hrO}ECuRoIbEjp}kDN8J;a=+UnddE5LueYY<$w=edO*(?d~ z4N1Tpg_7f%IHH`8_TA<$jMSZPq7WHHz9vPm_}% zxj=gI2l-Ffo^RjR36LSIDSO6z);2>2H`hkhe)UYzcHMYO?D%MDKUM6NKVArqFJ2^> zH|kjvM#POKbJF&2`~Gs)5iK;1L9ZC&52rsz=5*^vm^QZ{ocv|fIg}JKPar2w>4BTCguUPKY zU1x<07YZwmpEAX>8eJgPy;}%R%xp{ESRiE&R@Xwts;?b5RrB3v5PO)Ficlj%CoVk7 zwrhMCbm7aBf{-ihw=5nS^+>MrBh)^W%lcgJZOOt}PK)P<`w8l5cGjsI%%3Evk2+1J zY^BUv$n6EmA=Gfgt3s#Db&E5#lPlAjH0P^R9JySHvPJxe)V!bk(jxgGwXtBX(1X%_ zG8BYp2hi{sxNgC!VNVZ6lRiZj*hQCZ@@`UIf8Kmha|dgJjwEm$r% z;8i3~-`+nQ9W(}6q(D;~DMTpz}_=nGXl|@8rj>Lvc zP}G8@EGtV7lTPiOe*vAnRo$2Whd27`GJ%<~1X+CgpB@4|=pkH-4g9qSf1g9}W`KEq zj;S*G^PK8{)wsDydGzo7{rSHSiomN?qUC#ve-M2v;o!1!D3SiTIU8s&Xx$s}{ojuL z9OLHT=^G!|DfQ>(N+8U0#loTs}k!>Qd<({|EDw0auok`P!eG ztAZeiA_m*0KaaW`81%YY&FKEzoYqyBlF!J|TURR|Vlv!A;s7}1I)iKkc9v|U&6|n0 z6aU-iSEm107oyBdT?S(0-LF<+{NHVeDu1m}tp9E7QyrFU6gAb041NIchFxQjQC&s8 zu}r)}^&g`1_3Vw`KO@S90UrS6EYbU@pZ>bAOwcUw`!6*K}@#fi&X!w z8`z2rGq=AA$FiT^--5_EhXiW?IMOB;E)k^3R1RpNmBzx8PuXO1kH)&GvQ}z7@cnwU z=t8iu>!G*X)i~v+@ypCxz`USeJ&z%R==M&AFc+i2y9*~e<*xj?lL0R&{{0c;Fw zO&}<{1)G@M(~D{b2q+C$19URRRvI$A^jrV}zWAr8MxSHB3TC|Dy_#3}pi4u?_P7Y! z9|-vZsi0WDv|0!3=s)dO4n`srP@t~EFVSBRf=}luO_OmIzJXd9HzW-7Q3@sqe-e!l z2MF~L+{Ui_j()L%f;{XzU2L-L@Wgi>)T?K#_W>JR>M44ue_Wsmn6BDnDeSUYZ1~0T ze$IP;U#^ef-ZQs8sAa=~@&YnGwX+I306zmK>Sdu`1~=pKE0dUuVpazt~$ zzwa1$rvlcl-J|jbNM0MnDgF#c8CJa)2rkIqxL?dUP|7pEwTRpXprC0jXmbfe9Pn#k zyETCncvlXPexeF@Tm#ZRMc|!ro&`W$Lj8}Eu-Ndn?!zR#XW!{d!mNgJQy!D=0o|pV(qdKv2$qE$-?tNDM;(B`+`bN}%t@{zI&Hv0 zLxNABe=GazkKn_n7jZ*clU)Q>ih_8wu=^|Z4*?@h*@1Ugw@Z%7T;FQ*C;JPyS_fd| zn;*PLAQepQWd#%WayhvUd}A&@P!~IX;ROC8^v#iqk2RnmVGKz;Z@~6Ksl9RAJi0}8 zsbAz&Z3j1L7Y%{4b7jW`2&i~)vyhobAaB|PG|a+|6SYl4mwINtah89iH$jRlU_%0P z5@<}#`eup?M+>hCpF$ljZP31%Npqm=3c@jQ0a8TAN5YtAAhF}8b@oRpB@~?2aRfn= z+@J?1pka`Lo&vM;rxLvysDHY&vmG2v+y=1-AYmt8MQ_N)UU(QT#eG0f)rODzR(LL2 zx>XwyNkVGiGVl)1pBE6asC>mT1mY6ONgmH>W)q}_C>6lhOhOiSL5N-t%QP7e2ENoxv$_AMy zYMF_QTLK@6;v*>wq<_Z1XE!jlCEu)j?$BDm&>p%Y=*wUK;*P>R#c?_o+7dB{SPS7XT!v%$uUwSQRO@VYA!PbjSfM92oMj4o8B}IGUIvg?yB;oRM21*3< zdjc*T=4{plc=J2q*jIx>6lFamauB(8;6M??*Pi708tS{>HcQYD%rw)#k?lz8eIZw_H%15f4?qp$wBCZGAb)6SxV5TVOFE)Z$(r`cIy}O@e|vrpAV@ zXumj$$D)Y|VRR`!h0?UzzPFua9t3x zH$6`+gJS4bU-AN8&Nc(?;4Z4VSX<8AV-b&UyB7dbq0LYD2N&ch7+=F7nWe?5O~0Rkc9jnP4TCH?&mj)drlVOpttJc$EiC^0_^p4l=(!!l}Z{eYfSlT2gzNQ2?5CG;LX&uBWa$lwL}G(7;!tq!-2vk$I;TQ7+l zJUlvlZsID}H=_K|*%S+fOk32JkSY;!DPFtJ9|HNjixCS)Nqe~B^>=xW(GmDq&{6Op4R2B9% z!|LX4F7`U`bn54`)%+Uwx^Z^|4KgTddZNr#1^|8eHFKTCrM#|&=vur(3RWTfDa{4< z1$iR`;Q`>6DUsk&!lE#kX6JjmC-@ymgEviz_hb+*vW_nS^97Ua?T@PM+WJrRH3wtl zp0ioNBa`@?K!*Ay$}Z4tr!Pgx78(gUX|5eqSEum{kzQ+-x0uHM>Le5ta^-e;!dH57 zKQNEM$m#%+aZ!~P&Lo8yoK`E7olTd{je7kWQL$L?VG*?xJ}flIt|N|1@bo*wB_h>_ zr7?mXRhMsQ1xd5)gCK|THVRFoi;xyJV?)&E&5#F!S_`mv-pt%_ZrYdkXqHz2ke`VU z?! z1Pvv74}rgw3khGs{z70#bI42D7iw&3WwYoRw}sB{^lb1cod)zSMmx3}$6)bIsm}%U z>&)uT>t}bhU^qs^WX-5O0*9)E4FiLH$JnYnqKMk}aW^i67PNIM8w%aofQ<%JP#1Al2x?YxRux1!L( zhC~N99)n+ewMQ%IS@1_(KqzA|9c#zGQM;_i(R+VdELEP5@!8$V0G}t85!jA5TQpa` zO0Bbh-UCMC&zgOL8?q!Xz1925cG5x^XN1dG-Si8p6VVTg8&QuJ-P`=QMr#q-7=-f( zR##YbVc1vm7Mwxpa2>_Uny+WVRK6z`}N~hQq6LzB@x-D z`JR|?g!bC25)K0$F7O-JUYIp?G3oe)@od{A}iwshxSY@n!;iV&i0%-@{c%w;QU<>`j0RH7sv0?BRHvi>+7f2 z(pjI3Gfnga2WLVs2Q1KrJ!=nnct1}WZoo8~n9_fxy?{axlpx(x6^gG^vGDP4f5{!` z@%@YrLDT$Q_uV;$M9yRKTYBt&uhoAo+clCvtK44 z(ggK138D$jgt74L`%~S2e93aJBrs00)r!y~l9~0KVVPUPItrMaQcvT*2H}tq2I0|6 z0_oG1fF&LNtLpa0z5f)O0E%BJ(6meWt1FQ7r9$5<qw!x425NRm77Cv>v;Dqk z(SW!4Y{;Xjs)1Ka!3d7f#+9jhBxhyxpEo#y0*}OUmil*b`?G3&brIm8u21h)hySn4 zhS0V69$Ewqu@r&op7R`4`L7j*ap0PhMVJ1 zF?awBMJsmpo!7xfP?&o_#SP#!U}K|6&QNmIGyvV~dg#pKA*Q?){KG(NwEBV7uWSum zpfFfn>$M&b{N!G`3E;Dv=|bMhW|B2lS?JNu12M>8SglZ0YXPc{w!#cC?=&;Xho>Jd zsYEw$9iD(nhlJ(xJ7p+2tCMHW9t{|~&+ioYa>TZ#l5j3dLbWZiOr-1r24OxmM(TW4 zl!Pc$cA5Zu%~iz(g!c!4-{06*t!6~+vor7=00HrAYI}`PVUY@!A=97;xDFY6AXl2H z7(`|@`!&yhmA{!rObyawoWc?~wgH(I4Arv_7a-U9J!((04R5`(r|Px9&UP;W>L*vc z47+2&QAo$1^7$>{l_9^q>LK=Gu8K|Cst8?$38-!s2 zui|5u73hKW9q@CS@TKhSxa~8j@`4g!9=ZU4`!5iBU=1DFcTl2sEYNv<0Sj^q0g}Z< zu(&Asn6_#mkWFv}P)Y}m#ZW0NOZmAmY{4jFy=b>xFFeHPaqT>&kd$a4l=TQL*X)KS zHkbSm=$&t0-wED-Wt(FE`g+`*D~#O0K@<#ZjZ6?sX7WOwnN`jh5Lfc9yp#sD5IWOYNZEmV$DbAleVAH!8*URa`=??!T^n z02as+e}N(Fqf`ZvKCR%{NV!CD>H}O=nASl%wh(~gQwxBbR?~1!QW?yFGAITFvLgQU zuJZM8OMeB7VH>DTZ}da(XfP<_MLwaxc;crHZgU483NwdJl+Xw3@|bmyI@$(|rleV> zsg}>L3x>!nU2&Zb!7odOBJ?1(3rf7ukl8o|Q7YjvV#sNIy+>s-OH)mLW)6TaY7CtwWBk!zpVnN&SVh>Rx0B zoQ1A6@Wr*54}pZW4h#w>PV?wMzvkr{n(ck>&7eaA=hEF|?>98wo(;A>3%bs|JPWY? zAJmA3sabK<$%*?uxE=QGma)zt$H(THR^=L~>ojQ3_J56$7iF`haI}% z_d))i3zWzNW%Rj2#^E=9E=dIPmHj|_8G|^(3CK-FfPMli11Jw7AdP zxK8n5AB7BIWVef{g8gn9IM3A}#o?Bi>MJ0!G#-N#$zxG#=Oa%*Sh_G@UFv=y83o4P zW43dX_6$%#Yyg&Sc?>=^2?EXQfE~5wJt)zF6ZbfFuEt#QX%%(=Q0K0w-C=w=RAWs5 zLE`Hv!2f(QhE<>xBFoSbu*DIGy7Xy0diLWEMK#!X(@rcc%nyvx21CfJ>;rvbRgD{0 zURDJ(pMyYNOl-oP&96XNvE8 z2Eayrt?3s7{Xg7=jTPl^B%JW5kSU~6;fQF>fudziG6NvX4SWF%x#4>kS>7L4nOjzN zwz)^xTyCmEbXxfUGw;zV*?gjbn@-aWc>{=mOp~SPNTw^=z?ssDn+mtm;}GV?v9qqc z@!ViSn0&<|nb>5wD|Xfs0GvD4B8AdWX8G}!mWG-yS~|OY4rHFKM6%$<)=gKE4B){^ zC`E(vPJ~%f4S93!gOQm$Ie7i@GQhMyiH$`VAi1x^6Wx)N;Yu^g&gkBvae6C>9BP-( z$wG&kG+8Y#1AqA^vCliHulpagOBwAtLD^mnw`x8z&ZadIc=glG@DGR|?ExhLH+*Q{ za`vjoN`BT+{mv-yJ1(r?t>>)m&R!D7o<=63d5k4_YstC z?G9C+G-;m`IWImYBfAAvdA=M1bhPA;rL0-dxhT1#13*H$K$Pt!Kf=C#s3Rd>v61o~ zk>30Vr`#Ky;gu0yg&Ec6`ui|-(RuAmAKMfCFEDT`^I(lALj#FO<&2K|`P1ajVAd)S zdfWQ|FN@P+lI%++lLh=LLzm~}0-bpv+~r15b8Ew{_3qAfn?1pWiX2cQ+S6#7%JH;jivTj!-Qs;QhsEx^-TAX6QWH2IJ?sM| z?kyxk8J;Z*q|R=}iS)}6^wQ!e;?4l4^)QW$&-d~d5gS>$E-3QTy^f2 zR9+AIF*3wuzn4vmenVmm2PSc=oPOos^7qkZe%#J3NjK4^(dUJ6{8oG zKAp=h9=uhUip*@Yn03s{qBNi9zd8`6eBQYD75_BQB+@%na9|Ri;_wbzTFWeyZ|&nd zp`rc)p0hZZ(UR>h!pG1o4&w=!30!ZcI!O5y2ol(h+*HT_QHN}tcX_Ywu9@I3Y9&q~bLOKXg{`kmi{rGJ+uky#l6lt1-UznqV&xSx{K6ia z=v630ki%|*x{>=`3c*=JnzS6GzGx;;byyrlOVw z8`1}_QYI{OX4NJbIY~hnVxw|43Ej&Vnp-rv9Tn?QIFI|{vEl3qdIJWk8lrhdxH3A5 zJD1iKD>uQsffl=P6u=`3FLw=LoA_>Z(o#uDKjqB5Lo^ky4&076PIIX3B#Po18hi)5 zRlczK1Z*TM^}DEvbhGlhB{=X7+je0zKVV!Nr&4hUbu>BNTixjK3iXj_Db}Hn?F$F&QPuk7GO0ciT zhu!=g-}fN3ZmMkSA)cjPE0s_ht^FH^Ww)QVwae{nVKFH-!=1+4dOTO7J&jPd69^q0 zm@m}0Fld~gjZ+O)wgpO-rz4eNHwNv>c-ZRd`@NIz;)}uDxj{V~@EK| z^&ch@>KWY^N^R#f=S$pRlPPU2R+St>J~EfqWM)!BD?`6s4;<)Zoq6Z!SP!R%Eoa_O zeY~GOOB^o|Ri*bCp;RN{p)Oh$Hi@QrXqp_$WR2s8s$fyJeLLdns?T&@SB?BE+t%Nn z+2?)qYKg9qSswP0SytDY;p)0)43RgUj0Kb|=qpdV7}m!*wkgwegGY0tI-=xp)&8Du zd^z3_j^rEky&yz%|2koxiNSEzsjtV>ponOLoEGbsOz*CutB)JS z(V-Zhx%>!atSz$?AI_Q75|`O`Z*fU=z&&7td!(ND(wyrRelrzR-tQ})H|UpeXa4y9 z>WaB>wynFX$;tIZpDOFb278gjjgYXowug%-mlSn=rlKXg)oc&OioL2PBrZ>SUTP*7 z^9lC@N=T5*)@dZ`O84HD%sZ!k(QKc*qd2){{iA%pe^Bi7^&WoYe2#J@-)s~5-mtpH zJG37;7Ylz+X2f`T0gh3>0WscmNr|+fabcZC!0slU8k51 zgYRJXFdORxnp3ZHh)IWFn4-`x*p5YDB{*++Kc3R^VxKys=a!Y8Lzb)No7~=I; zY~)Y`TBcRb36Ekur-~8~SpHUI*jW>kW;)^ZhZ++L$$kXunVRiooi^J_qM(v(UkoGa)$89F5Pw@I4WtVzsY(3_&Hpv zs^H3lPow1aY*Evy;xgAoEVcv$XC9xhC9@?;6my`|?JSckJ1=)1>n5+{p$^Q;#X6D( zuh$itt%cVr_;R+$3l+^>V!5{M(Hjv zj>38zzj5PVuIms;_=NDs2;58H$}fEb-eephFAL4~!Jg-LnIb~O0@t)luK#*{-d z7VmhLdv>yWhQt2qW_&fGsV;-^K9#Ra-^^<0z{?-4?X|61Tj4x97Cvbv^j7B}P>Y&w z!(ls8-!DL<-B>1!pXNTeYxzwtL2$24;!&`PFSSU|TULgNUFy0|8&&!INKK^ZA{~s{ z>Osuq7>4`FvsUP~R-JOsGzSl|ti1r94=~pV78EQmULt87g$l1Q&X5x;(%W~P`{;G> zv;$L*SB9hW2RH8gaA|~vVlnnbrQ!V4vNN;o4kr#ftpPXzmR-j|0ol6AY06xz{b`$C zY6Ew5M-YRqdGcUhnfJ(H$x?}w4NXs2xR*0pxN^rOKV!%3v#%;X43(aQy34%NsfN~4 z67={UunLJEXGJSQN43G1ltQa_Ug6>Cv6_6U@s3_O`7U>VeSUy?7cXa*>1cSvnKHMi zzq{)UNGYFl066XDTQ+q2kl?!zB_mCv}T&aZD1-kfy~t^SgRrvNzjy!9a#% zzih+r5z3DZuUot)S7GyBy0Gc z&WoYarWH@f-1T~gc0C+8#&T@*I)mE^sK^vbh%a`J!ZNY+R8TOY9#~oxV`;Dbnt0pu z=RCu7`wzJ~G||o+=LRC1lc{&`F6K9gXKGPms5sizt1J((nQLp>?>-+?9{dDa6&f$v0t){Fz;C2q(&4*h@8F04oNsRus%l6%basj$=L}-H}gtA(l!s; z{B%GC($A7HzLvJrynp}PM9hl_^66x==DL*{w06TW zcNXErMRWQE-mewN#j)aClwiw#YFl{H-PHi*3zPSp?`t+Yx{yO!uwth-`b3z{S3j`6 z1mzES=lkCy|QmB4OVJX0+H&tCS@f+Zp!ny2dDhYP+>k_Wq~TI_%BH1L!$#Dwhh zW*BF-D|&sOK$02y6v(3!<-L1saqgdFRXeqwc54c~`u^}mmr8l$7cJ&$V&`J& zmpKaGac=aPe4_2?qlcJs5lf^_9wX15T|JOb#%*lC=J;3@DDgdJui5rgJ2qMJ{d9@T{)ra+&&b0fu5$~+tY)9rI+cN4^n2KBYjV? zK?qv}{o9GYt}}D%@113CPJgD&O{t$>hB^F*gt11`hYH1~DuoC|B4lUYbEfxThW0|3`qK| zrJjnFy81m1;2P^5S}5q=1K~RXs z<-L`}tLKXUZVvn<&0yo^<|M((>*?vq<0;7F=wi*wFD@?5%O}7qAixdO;C6*LxS4^u z9b6gz)yd!eJhybUZ~-~FfgBy^?)o(|cXW4?W?;A*=s!RIdQM9)=)WU5xc>XKfEVPw zE8*qm;p6>J-#}BTySoxvAh4yK{&SE$ARb^084)pIslV#~|4RNl;y+sI{kNs4kib7% z{-fmo+wzU8rHg{2Jusx3%ztO*-;MuS`0s{NymxQ@4@vw>%zxbl&X2}?P3OYxr-@dG}{$-$Z_j2;j_d+=QDzaORncf2rvtp9%Ggz4za zOmKKUM*Oo!y8DEyjhO#z`1}h6{wKaN4AN&W{%0VxN3MU+|L1A6aInUC^PgDs#?b+_lHUHf8%Im!!Rlb9EfI?vTijf{Dh~*UQiQ9b zgp70St7hH#(b^oLDwj5VIr6|nwF-K)`n#&_=Az%A+Q#f;bE3$}r$1e8Hsc%VnI=$F z^jb6Dxa{!ox4X$R7<9_mvj#L)XgMmrUEaA}J*LrLJk=9CW#avtr|s&H@Xh7%m}ZH7 zl@)Vsl6wL0)HPHyF|-nH-=vR+6;5ZYvuCpXZa#|_tEY?99`sPo<%H6F=;v*NT6yb} zEO>2kU!Kl63Vz*gySIy3wwg5?TKQVop=n2CYa~zU`_AlN zlOY`3UT)TD7b|_rragaqbJkYdO=6fho!s--3pt@{S_2F?=DXx!5Xe^1R_~yE4Cm*pB9h+tlBgX)>%nTq7%`Y)6j@v<^`)g1Iwo%QT9$X|g9yLd%f;H`QPq^` zLSh2^06(4pG<1yVjj!2R1W5WvSru0;fS^6j{&>zsi!Q8FDZ=>=R;m|mLCKD%+cTv! zK!IuVw1dz7Qb*4sXIV3XLay1{u+AY9Z1+O6@D~WR5BC^(K|15P=#!$yMIj=#iITk9 z@7x*J(Nve>iH-(Ma(0 z3kSdTr#9}dpi!JQzL&1Y*j>s=Q%{^~-+Wr~Gfy$vMf&kE2dXWch?Rs}mYEA!!c|yw z0vL{?!$$8s9n3KM? zoS>;uOia(EqKNJJ^Ao*Flfc}1-vuDT?VpUX)z(=Mma3LoZs^f((SjeYd%c;827dR*Iw6q{%*eB*<(`QntK+XiyJ7PthDTZ*Pq+HRo1qk7(>-y(+MlM z6Mf2FMK4WNtIuUJho~7%vn(o#a^b>tP@J{3L4FHZW}c{z*gVQycvHOTSzpeO@K9O} zsj_Cuv0~lkC&1QdGIs7J_E>2zW(4q-Un(4jUP|#cfHY#gA z>?2(JdTzo97wSLjrS+Ru7ya`(x4F1Hnh%TRb9=>$3~4xL4m_tIuKoQ}kX~BGF7OtF z7GrF*$omcrDwJT!3c=H@t?IP)26v2Lv;1)Eu364GPZEYvR4w&|}!UoPq% z%}-Q21Y^Y5W5$wPdyu_365O`*3=aoQ(sr_VpzyCrj7>eL=l|r9ZeROr;Hu}+w(gGy zC-Z>#9w30IY?IOxA@PwmFO^Q;(UA8suqt?*eIdG| z#iW++5O@@RnzGl`#D<9prq5_x3mecHMIBP*3lGqQ&`I~%G}45ANw}>qwd!R`dV1)r zqK;vjg_Vy=J~gNI#eqwP*-R^f$hp=(n)6YPQMhl8|B6mstzv+XaQ^wE3jIvU;~@0} zdGanZAV+eiS|_|y{I(q(4^Rj{-XhL4pb@<&AF2gLu=&ODh6PwaEY?;y-Z1d zK&B8OtPhyav}J>s&EosN2`);~#3aUAKb{J= zevEfzu0MOOktH=_th6aVz;-tCn6r2(EB0W|sdWXx><1BBhBbkkG3miJdcp*%ihvL7||n z)pSQ1hdwUkdiW52DBq$>Keu3Sq9?t&1~dhsNXEGr#$>^TcCZ59cHC<@%d)Th#iA0L z0y0cH;n3+}r_Q+KuIEcAsat4#t}NfWL1^lGZYlbuL(@6&^`y_)pQ-Mp!}i0T{^Uqv z3Z3JT?zn!e>@RZ+LeH18ym!eRURr+Me_|d9OJ`RD1A5NgS!o6Vhgo#4m={p4##LVd z$~19$AdtJ61wLq*tlv`u?Ib}0YR{BANc_yGxj&Zos~-VEJ>2_>7P3q*^#y@8L>I$^ zq(aa%dF-UksHfsChTD0ZOz2Yjkajp$1507E7`fnM0qpFW=5^^Xj1YAk&KP?Q~v`o4%X0b=CFh9B)62d`KJPpy-smzH zMvJ|VFkDRU6mkp7wWO>ba7D@9o@@RPT%`h3M$bDg$0%F4*Mae`)9cQ_pJ!>}nFP(E z^G<=%Hz=e`IAJ!H+vZR4nWzw<#ikS!uV2DZmDHHteLX_%DrZFKr~6J`olTK-pFmba zvbR^oXY4C^O)}p*Iy`xv`p;vU(a7-Ls@Tv=$zu=U)#PbjN=4P`JxWO){?(=x&~Vkj@T(?{BK7ofB) z&e@08-)*i(i&JQ z_Xkil6C^HN+9GSxoScCpC3wNqk4pA&fLNH|{^fbTuNqExn5k_^&3q}-kRw=Q)aBKU zlO!NE)d9n;AsoNNFjO-p4Y+-;@BG)emeXn$EYO5T)%;iFBY3*HRy^LKwG<7OjVvxR zdr4(tIL(6x@1^EBvM`2dRwLJBkdkS~h?wjITj?EWZxlJQ5Dy7S?*E3V(=npewwh*3 zxE7{iegWt-iO^@Y)eR0}ykewi{ZB0$qA(sX?0x^5^gL_Iz6%Mb+TMPZzUQ^0h!HbQIl&F^D+4GC{Os0i(M*L+kL-Cw^on^g_ za2~hO`1ZVzx`d{Jz()EhW2;Z`Yzw3s+$b+Ma$t^7?E+Q;{x9axXvZ=TSSf zp06H~2ya2$t9IFuxbOA@`Gdm_`9KCrHP zj$HRJ+$Ea|&%F^YzxQb|Uc(`EKEBdXcv$jMpAgLt0`|>XuWMf0;w3Vn=8b_{cBYY9TL(F|X7xUPF zZJ%jcGRz7WP-{xkObq?3%)2?R5w6_m$vB^O`PGn@G3xwI5)L88n6WB;e6%bcubFs> z-1wDuU_k!XIE(gtlY-R!T>iVv`EtT56+(^B;5|k^tx@m(J)|JWFI6LLg>gA1gvH?3 z?Ri#lxf&OdL$G3mAqAYq>>7HZLUko0lW=vvpzp^E8_w*=-*!@zJOQ$~L_#sv&KFs3UW%MTB z?dm`no-iqX#(uRyEq|};Apzo^S$7zuvGzJq3oMPu+d6+CL0cQ&zeRK^1=i^L#o!Oh zf0c}SM-hWe8C_qs{KRAVtp3op#LR0xva5lm=FrE)^86T&{cvS!b{~bm)qf_waBt<( ztB2gWeji=lMT)bJG+Tsd_h#x6Ve&;xw@($=H14I1n?H8FUnpY)x6$Xr{kGu)+*{cF7wf6w+Xe)OV_j9;m2@1b;u?Qd^nY18gu(;wEUY_j=s z%FIiqjb4o_&!o#l6Yd!LYOZFJD?-LIubjb$3vaG|(C65I4Ip@3lr=&xJr;e=2v;<` z3nZjv4=18A-c1*!Ze>2|udj-^gteu|FDUt%*19n5;EkzNL1+5fJu+kmKCEv2tP*kv z(j~r-3d^P}4Lv!UOAtf(Kv{OqHkJ}2DRHnD-$m?MNS8jGSsk-zkV!b;%DC_f{2p+yGgMNpY8QRIMMuS+Vl^-CuaX{eY5{9O=V#DEFG>VPn^AIg z8;9ePktO$gT85NT6WWMQ@vYLPQd?z#3t1sqN69D9A>1cOd0g$?v(PnbL&a1+QrIibT|(z1x3&w5c$u-m6k9Spc&=L5 zJ1L%pZkgqp%-K9PT@a6avNszvgnzg` zwP%~6>t$#TLr_1#0-1@XX$VTP!24`>S3e4c!|lscvFObBn)&J8b}0JdB1(^SK}iL0 zFNGXiP9_Nh59@ozS#PRNoVp`veHW3SH*T5E^v*?nYf8;ra4(eFqq^P{AC&2|6N0Qq z0nFLs&HelE+=azQU@~maTLgJ=kP=exn;m3Ffy>zQhnYNAYJ)oEb!q-lmA$Hj?4mav z$nVW&+G}}z*m;RG7fT1;i-yHPoUCzSA{nuRpWWO%%QKpy%FttO-sJoM;e+G8s=@Bg zK;j6OY~1LWe7!uT*srp^ek7d6*}kvZ(*iQTsF?N2iAG!F{jKcS`RyqnBws(~M#J69VnUYuOMt+apii^&X;$4vXd%@@ILxJ@v>AO2j+M8oJy*vvx=Cm3SD1Wc4 zp&4^9GWz}~7UpfrnZAOAO0xZGbpBy?%bbif?c{GDo?g?ydTUA2~xmGC6GT5EpL+#gHJg61>C=y z!F&|K?@&IxcxUELu#K1B)NP(*6`IX6rhN*uCa?gL6=&`EQ21&VskXo_UiY|gz%o)4 zZQSO9Mb+zvc!>@Sfa8}JkU^n(=sTydETF{!V)8;DFUw-3rv+P+`(;?MYLi~gGClcLgocuV4IMRO$L zKL1Ajp##!4+MBJj8Xu%$2l^$b`WTP98FhVe;#vg`S}SbHVB&((s2o6iO(8M~Rz^QX zr^7K^OF`t=>`JreEGK$T33a!>8sYS33|VAx#v~|Ok!8hi=|6p(!ROazv|t@AD|?k6 zKzKHLd98vo>~x{!mvI{C$Vaus`2#_0Hg|L2!9! zouVMGu!8ZDzA3{$FRVRb}x~zS{;m z8O-G93)w_zN@MPcp%+7x_zX2?bDJAoO1=-_S)rT%7-!NROub)7sYbYB6xs(ady@~f zY|&kR78%=*lpb#K+^b}HgFu-(BlOkxm=jpLyal0XSZ2sN5rm*~h3w7t(c04s{bDcT zG(U>oH`5kb59p)6K%}0ySp*sDb?F_*6*Mu)P-0ivG8r!m(VYu@(`_ZSopw1|Td{?Z z0y@VJ&^ay#7Bmf3HQ{*8^gH?9bcR{8tzmN0mUT8;xy*$RIxj!Hm)ZyOk0=C+ey+gj zdKdCBkE6v+#gfO(aP+zh>pViH{AeW`cw=d^V;+)Gx=8E;BWZ{8&4TMyD~*?F`S(P+ zu8BfEGKN)XJSp!Nv8iRLC=MUOqtL=?%zrip);mvHg-#Ww0-@ACCGcYnMaQVQKH(Df zUgy{z?rrVJJB71n5gig6~D#MA_K%?)A#tp9C_VZrcXGksffi( zVK6FZg4n&tw%75GfBya@6uCe)-92ud!~Ye+HZT*4=^yay0L(0J8Xu*{x@W05yH~do z8NMdAnWUM@Iw8HNT9dnRC;*?jk6q!k&*2{K`B~7PPxs0X>Q9fzoBsIylh;I#MZDE9 zT*;a&?AN=M*$;3zCsQS_)p)D^{mbwd(SDdV#jN2Lei~PTJJ5s&Vt*FZqEq|9aov~= zD-@_S&XVf0q%-{l5AnWunjESFT4!XY`$0Ep6Fll^z`w{oc{nUIImzL$(AYimNQI{ZOqqeY32u zQ!KEen&Qpq0A@qFMqXO{c$qq;hsDia%`uc-5ZVZdh}`E0TOm% z-aIwRVLD1@#xnf#WGhhxx6Nr@9n$di_akG{5W~?Xg6x8BQ&y@f_})Z$CR_OM4?uqj zyy_p7 zbxTEd5OGGjbq*iXyi733Mcq?6d?zKR|3ZAN0EhxrK~-8z)!0+}5mgyZT(Wd;wN=xJ zE}pQK-1e^=Xk3g`=Pxp`X;P1s>O%Uo;#^-5tg6Unwd46RK{)pBGpTdY`URZ7q`yLB zJ!l*96Hv~tjMDm8j{R#*mGlG%EhBXWvm0RY0+=tb0X;Lo2>J}Z7Bi&@xe9W(Dem=y z1|PY!EWwWYo1W;dy5ruW;xf%|8O$L4>5~wZKx$dQ3-4Mc|Fq?IDkDV)$};dR5Pbj3 zoT(gDDVS1hNdw|5E&z`&z^ZmvS z(xPODGJP98v?`x!vQEvZtzELrjPKX#EZ>a%hxOx{zzt{awn8fLT>Pqo-{$wPFD?6h zTy|=vl4ofg*d~Dx8sl$Ec}aOqPS8={t1!*hqu{IHp{Bp`Rz1*&f zjXbg(bc4y*P_w9~YR){)WCzl+t3@KNe-Pi_O~wwRDoA{X12Gvb8M~MruEaFrrz2=} zqfSuh#bl7zmT4*n<3Z1c*`9xc8zUt{&WN?smes9jTdW%AhZNf8MU|Fja@L!@k|7*_Ljsime7G3vug?mc@m*pY|U#e$Cu#+$yz=N_r%H zVI!W4}|vD5y{9IlgHwG-OFVVq(z4q+;}Ua`vKzF1?x9fj%}qQsraD5xz25 z=zTZ6Tp%VMY|gRGm?02I3ld*h$U|?}jo(qVyH6SGGGzYHQ;8rw9>VGiTsnYJ5x5MB zuO&uk=3~o(ob>c)DK2JuGJ<-Uxk(vKt@`1O+Ec?eT1>(mFpG6#wGYEVy*A>aXuiDu z&)N^rYBZ$|f(~@U2o_*RySb4(9K@K0KhJ}yI-j}-jl&KMGIWz&E}$PqkI>iN#-oni z+4rms_G-)%V=*KfL&Q%MItd6Q7-2rXpU>ot#xH$V&ebA`AcE})ijK`np%|EcGf@G3 zpwO)X{W7~1p2<^S?XpqPI2YdI=*Nyj*&@1+!gZw{%{1Eg3Dg%c;Ing9YzI@6bji!x zMI<@otQ_~!(=^w0IQE~0vu4s_d?HS{7noHq`&by`@U^uCm9oAGo14<8sul@`l;5H7 z@e%(^Nz>-yX8!~PO;u8`;$!2vU+7Po4hHe-jNsw(hN?=U^OMk@UZ+&dT=7; z8fgZaEFxR!Pqz91%XqRLW96klgVoSD7=CVn@emPpsLs5OoyF8nuzjG%?FW4!i=?Lr zn#JD@z~p4N8d(bsqpPNy(=7SRgo4O!xPM7XFOv+&lzZWs=^;T151HPbU}hI zVJrDaSZQlD?R&F@V6GHazo2aeJn8o;7Gf}|gD1nnKi%0?JH^x(jd-l^o?5Vj>4_R-dh}Wy-WOvn) zczVS6eNbiS#BODTcXbiS{%U`MFelg!JJ1qJlHfN(*U9c~@@YU>f<7}d8J4OK@TwYd zxg%9oGdOhe_;Fs18f6Asy()IY{=G=s`%ZqdSI*cf$E?(=ur%KRPL+29_94l>7nqHr zA?WLP!U&DU2SYusClt zYJgIS$~lM;HqrZ3Q;oCd^;@+vA`NWafvcq2{~6@9 zNI)^Hxe`0~>VF_oOWA5))N;6P-)sH&SGN7{@t!952SNBZIPCu+Gc*FWPr%)PFK(&- z)A#?2b>&)A8Tvi#7F&IG3Q|le?=V-bw>REJrfse6>%;Vmpoe?ed}bd3*hKs0B)6gD z9p**^igGfv`fT}f`Q&WTZ!VP9*JeoSD5~XXQ1TSO9~h*I*xLa(Brazo{kN;X)2)eE zHLANwO`Dg-E>5$~;?W&}n1H2l{dTiC#ng93m_cL#Y;l(gvhRr^_drIAQsDR>&ZhEP zYy++t&-yWdoNIEqgR+UdYxn;+2mw;yJ2#hmp1C*`>fVnCLfc!f4*PeC%357E+HU|k zy7kWtnz5ejOcbT4#wtz#=rmbRjhtH`dx|%O6-lc(gI{l1bAaq+EhH_}A?blbxW?Ww z#nyK$?KbVzio32(13)uGJ%EW2_topzx`X2$Dm;VxgaT<$hilo$~I7x!3|;UFnh z0>;9VKGxb=XlX)rTLZAF?VY;C+MU|D!ADxnYj-fKtge+5(*+3h;FHJp^hmOygLqwL zLT@zXTJscGQP%*(yr$BV{_6rbk8m7WY1D&+7OWoZ_HmZk0g%1lMn%s8F=l?oF}iwf zA8?(mk93O6*$H|s01m4C9U3hzWl`}QVR;3F%rgBIx*(cofT-8|#@hV+Qb=Hl_6<^N zcS%N0i^AcDTubU9M-p4b$W0%>1S5mMg+qHSQ;b)=h?9*y^t}NznLU80aiv+$cYPOA zewV;3aYpvk!X9&yML&?L0eg?}jb0q|(v|>X=@Euglveg}Ocv``sU7Ai#d=(_p%r*>g7x1j-m2%J9!R^j5GuR>`y%GEX_ut&bTp*52R z{U;au#_dqeU(*#9_P|rbptay^uPq=A;ze;Vye#U=fVMk#8mP4ChDuYyxXDAk*+XTK zop1@-r_q?0x%ULL^qo~R)rDvA507zUz0`^3-*D6~A090~T@51+f&<3BVQyj=44Bdd z0H$e;CxiMzM1;jHwdr$l>d6hVZ-IGSy(32W+s(23Kp(1=k^IYwK*ES|Suy zFtD6P3j*2XwJx**05s+3pwy8Xs|J9o)4l}oDjEJc9sbk$K=$TkVl;8r@2}aun=o#y zOgXXzw=wn4$bB&)0YY9R(AjG9z&LrwIWW(X6~W(-;3zFzFC3RguFr)}_dD^LhM>3j zCFypR;kH323$y#C6j)edyvm?&<#^gjJ5)MoR!!7V94%lC-Y4r5 z^|^5KMuf9&M+pu(<-7+;CM|TcP9Ki#Ctywq@rDmV!n{*M6w4mC2T(GAZN?epIuj~KhMzCF z;L+`8`(A+NZ1SQr#MUlcjM>mF3+UYe2v~!6n0JCAk)k8!BHk|LXucW{V=h6u0Wq5< z_d_4RPo4LCcrfJAe3Y5DhrP&1k?6hG;;FY?yvV-m*QyXC2ayrl z$~Edgz{(XsAexT`T^Bqako#fMLd%cz7Jv}5hB72)A8=B|%_@OoKr$duSxJZy$^)QE zpPPp6nhqkdIPYC~vp-RD_;mfy|!U;?GJ z+64=PtSPmY_MMWwF=Iohq+Va3RyLr zp)~BuJ1|P8&_-xQy{O__b%H$MBdpJ(LeQi27nPYbrBK`0d(NXd1PuSdj(?N5n-+Q| zuskv(lpv@4Vza2p*wCS&fJhcR%`XLDmv}@Mp{{ELFPiD|ujuOc#gYk#^JB3(p*Lap z4@hz`I=x?#`ozOO-)Wl6)I984K-oI+uPujrlB#kr&Jk3bTnYS)-=~oJ1~!Pacgi)B z|Fhr7SPps`yzs7Vn^IL}4dnuh&~wG`m)UPe_W%&U5(K+vN9Wo?-x86P6;EQ-4SJfk za0pZs9#@3hoJeygCi#GU`5*A1>ugMr@tX(Dg-qlA?sXwj8WO{dD#z_1#*cY6gqFdF zaT@~HaIiQY63lg8#qsrRT3nSq7_gX^4VtFwyY@;AnIpSaSZ3_wm+?_(w`W_TrI#B| z;D117nb+~lCqgS^r(*k`brpq2u{h~d5{zIrGs)42mVX~OCyLl_en=2rtmNPye@sD za93Co&Miy~WX1N3D!50adDc49JvlO)+3^Nnstb>?yef%6lgIcbhrU*>61 z24LeP1Ql>_(81oFbKwLYaXVD7@coO?Eq}4Rx_f23xg>jF8*p%fl`Xx`0}($i3oIq6 zhIEHU5KH(c(kO!8CVZ~k&F4t`da!LcoP{Z3#wFg1Ug}8tbh`5d{0Vo1zWokV#cJX+ z3mr|3Oy|WMfPo!@Z1lMnZ1&e!oR2PHnxMzaDvtPyGGQ*eAo=e7Vb`6{W??jF zH_%KmnK{o0TN>OTW_3rW6^URBNnS+fjseMk&H@J7H%WA6l|i5Fw^gC3iVekr~elILec-CT3@Ms>HLW1 zq8t~?8|H}hNba>cG@fPS+%3NEXGNHSH@rP4EFIpUWW%!GdzNS zoR&Wxp^hb`+@oDEZw|u34SK|Y!5_XRszw>`Q)cwUoQJCyFbUT%jv$VFxflTe2;{PX zFUii538%T!*Gu|v+VA!{Glg9HIXM=;nLp#$5j~V3btdXafzb}#?6>~}-|pv~us0M^ zSCBhIwh>gA#tnnjobL{MXpE&?>Wby#&#oxG-xqR}-9#;ZGg41awGKqfhSZ2uB#bos z{L8!WeF0tEXlV5XZsNVOk{nL@RX6AoQ{fxq>kVW2#E%{I`Jr^(*n`rYdV!z#r#1k* zyO8;$I7wU|t>X0^z`AZg_=v`%jvnQ?6o5GkY@JOE{Ho6;G>eo-Jk`d~pS(hTQMXUd zDyST+(=_DW>ot{oLw`C^MN92^QxulNX9cu~@;bWxwaG^I3w*~Tx6}f;X-dZ!`#mF$ z!gfMs&sz6p5RD^j9h80m+_XW8eGvf2$CKObh-_y6?Y7A!;eR87P^n^^S+Qflo({1i z0!X1Uoq`mkgjj;lF<=>X2jdkP@0WY|RUmLQ)*Y=U%mvRbs3M0CoRM(n0|Bo+zK_G% zDZH_KEzo{&Ecvi zCGOdUnMG$xtQJeHU_HN3Eu%z3YeT8hR0 z{AV)^HdpV&+PJ5zuLYGC!0Va4Pc;bsT_vfOH^3rg!6r8N^^!5{YbnrWLtBy z=NE%3*L<-csAdA>IRc*0suSjJ6-Ez4GoI4xgNGIJfNW+q?5GAHQv8du^hqY*qx9;A zwej^UrsjLv3aQatqG(d3YI{n}b&hr`G78?D3HK^?qJGOA6E*70;3V`F7abD*>#z!# zl?QlIwMHrv3V&Orz;64ZNW>-%D^b*a5ls5`p?1fF2uM=}YOk6|CK>&+HVFa1jCw(; z^X5O65K#GB!vm%P+ua(SU;o*^K(OEg0otP@12_IR0HNhSJ^$a)?dBTi1>o=6U!e{} z>}Q280o3#nb?NmAlh#)a>N`RZKndxi5dQFb@U>go-)kR;aLB1MYq1i}=}(B{LIFz6 zWTU$+z$ExQQNoGoUBPpFb$(=jxcp1RYJhBO{Ch$dq(Y9<_`fgzt?+@%aMI&R~ixnURXkBuArTDKC?2q-H`P0}#4b7dkYu!|H1o@KD49(5}t1C)|XfR<<|LQU3ETEPQC4Py!XcRpHJa+ zN2Q~gdRFk?HGoEd3MB&W28*_*h6~z_2f=*vZFZZ_Ma;KfrxW>1GNtob7OH1R6n%S< zC1DX`A?SFsSa29{kPoU-wJ*b=WO-rKwjtXivvC=ULoMC#Jn5Z)7wnjD?#EVNy^5gS z)$-?w8Zbx7zvnHHL91;%`Kic2hWHr96S8-JUs>z1GdlzL8Xo|joGSgw3zdOX{!R>B zDjOih9DkP%HmJ1&siz6)yU7Kpc822dI==^;?qc_?N#@#U3gNzFJ@ZF*M8EKz31`dM z0rA?k;IgLN7Vx=7t=mzzD+y6t&8?;5Oy}BZHP24U0L0FH7IM}vI}cME&FJv~1-?U+e8S5-29w5d61u@h7K%1y()M&EUH z#?N%!g7?J#OlyFHVHLi!VtnTV?%X+FUrl{ZCOmc<)@A{p z+);A7T;X$q)NVcUWoF>dMUOfA9e_&baj7A>Bb0IqXopvu)0?&MJX%EqWC%9T)|@FG zCo@}-A;eZ5vg^CTI%gM+TWgnoC^|p`S<^L?`G9(@YbGPRNi4ROHIylO)pKk2!M3En zx=H9dM5CNC`+Q-reoLomZ=l2$w(^Sn--pSU9zx|esf&Qebh=qoHVg2m91I;>YJ_bk z2OxvA(EVqU07vgGfKvzT<=14Bl#b12{oHjKf4sIz-U9ns5=e(;>b5pNVuYQ|Im&uU zES%kW&{(sMIv>d|}ZXS^WgX6Z^hn@zaI6PGg&ataSH^PEWlFYSo_u=#Ix#czGe6 zD7LP5NtTAQ2j0bT1V0oM)obTWw=ELOR708V7ilW`4V3qm2G&y(OZmvy*qo+HsS$qn-qju(0HHedT$lMMcjMr=4>WBJP=v7V#$J5 zziSM$E<0qde1jzMhOR)D#XI#+b0TmHeN1H>ZtGWt1W$Oktra!`|TaG@| z{%-7_{^_hkjXg>0SJrkydy`T$CXVSbB;@rI*~WVsEf2b>W=3jcOd0+;`5F z&Gi~|U*v4X{-f()Kj*Qx95W*O@6%d2LGACQ@_FjZ+w@g)qK0+Z`W4wGV7%{3C9gzz|JPu zF5jQ>PL+O^p0fS)JL)->$n9R+PPZn8Qr3c1h@RASjAq6?#5|G#Ezt9(JJ<{_FE91< z_63}xEjn%aw4}|2vPqT@A*)2A`-DGu3VeAYIrA%SKU>T`In$|MNksZ(irA8$@kxxZ zoz~)DG{rqmcRTn4D(68mnz^qsWbc~no0~Iff@41Q_WCF``Xn9fRr^eNoPg=gT z9B+C?*LzO4-{jQ!IwL458Wr56%Y_@ch#&3OI-F-s`3iLH$QTyC>s8_+$ORYki_!OK z&RBCxo_*O>WL*9jj98%73i1=G#m~qpJg%dp8(YG9x?@o0Td|tDsb8&4tq|JRV~T&fdjY zPIKvno2t3ZTGjFP=Bv1}C|9eY&wIPQW4l*f7dYwfSodm@ck1DlyEK9B`q4BWi5$09 z#2B|ha=s`1Hj+GztkK;0O zm-aeld!vDaU_M0az0FS=ak!orYXCqvqf>VQ8fK@mZ6tSX zIjIS_10bzf{S~yiKpi0eINvd+xofA*cTwy*h4sf}EvE*TKzQ5^!1ULUa2wQDe^pPn z;w-JtoiqK}w$MTf7Ms%l>UOmc1b40cuDrXFxc>fM00*I*mjF3^!wc=sNofL-62_Un zH|N%r0AYMiQ`!WwLd@9Q8+k2%$h*hy=qo+|q4TMKz_3-r8$tnivJB~bDO<6B#vwg3 zZ_7-mn?w&4Eu<$mm&~IGy3$J*7JQ?n(!$EQb9cbLP25v`kTD-+%p3u~sPxsr6{?8_v5ec4_AnDr!I!Ss$^GnB?cuC(C4esqqWjFr%{V|(QaDkHa zMzC}9l40otKjD_(_Dn2BqhiNaOQ_<)vao#{H>r`r^UT=1q4y?T!6Mp2_hHAY)_&#D zjWsp6s@&QPqMH~~hMLp!kmebcq0XH+QIfKAnYgoT41Bc%D&)zFePfqt42Mjl?)LCJ zZp*51Z$`ae^R6@lZay~UbNY`JdMytCVyTtAp-3Uy!H=Ag_1msYsO`gPIRXRmIspr=O2vklnjLHbOEP zEn_XiHRedmvFf*o17+5h;GkG1x99qB2T%RdeM)hc{GEoiES~ZA04`6o8Ic2oTun6+ zktK?$7FaIX8eqHnD?oqG0x76@7MVxZIUVJ|{|g8XZBTqTcd$-$^AU$eYI*^1#0h%| zZWjvrKc+x{MA;v@2|~=LX2DLex-yr)AGyji@xk;LuC3}bE2q+GmkDtgHILrUF%gD_ zDLST?PRcM25PY#!G%;@6C5UVBqp>gIUF@5!G2;7n+UMu^-c&J%Oz58Pm3;=bq`t^u zn3th#a6u-Ub*7Yo61pb2R+#S7Ij5YuR7;FB8K{OP$<7U%k-rnJRM7&)E&oh#a}-sR z94d5;rvhbO`|MM)?AO%nCdb+CaO76j)u4k+&hk6hvpBW_si0$UAT10!ovkB~W!2`0 zN_{A`5Y=4PVxDz-)21X%6W9BH*n8`!s4rPEN6*3Ez5jgU`{%oN+%XvE;M$wD*Pd(5`M&S-Jnu78*Gf*0 z^UBwLRzH6(Y}9Ij2H)?K=A1dJ8s~TDM!JhEgWlxFYd{*vK`! zNOKWN3xE2V(>`2=@dNnOvs9A%45KoK#MR6Rhoiy%QA666D_x)T&Zh7JQCubA4i|0N zzNGQ(TRjJYj1{%n!6XZmvTgX`3T`G(c%RQJ>$0yNZ7$;ohNa^* zyXVfKGOMHZ?7tQFPg&m2Oqqks;E?m!odV;8yy_DDuBHzJpd$*dZVVf&#(NNBE0X{i zuQEFV3FU<759U2--NuppB0Lff@NoiRZ$J|Y)zjcc)3LL62$llhhI`}8iXTZk)6aQ2 zFk(X=nU8^aSYC?}T}t78S&2G}z8!IctGJo?PPsBEw$aO@QQS;BOd5sGy)blXvs>cX z8^vnoETfIZg|2KE{`KT&IDYV|M75Ni+30EUw$s{hhMv9LXw9E0bEG66Ms_d#{zF!c){d^M==jy0YDK7Xq`RhvTpS(=onp3@)q0D)-hr z#mW@!?T$;Bg;?)YwovBHIAbSK&sbW3qmDl9cpMILXnbWcO){v$(<`8UAk0P9E?aE>;4D z;v2b!*%(EM1~pwarZcrSvDU=b1t;xZm0hq*QW)$#fshY;IQOe++ZtmHn42FHE!jc~ zcQO>gijm(pj`=wzsHQY|84+rU7G!kC<(W<6Wl9RK{;EpI&F$fUB7-SZW6Hv`GCSE| zi?^&e*Bi2?ea<;7#v7^^CET>=s8jR^Ua4l|W(Ki55{z#yL!0NljX6_47dhkk(Y~J( z^YPADh`Bk^9hu0O!_7*Z6PDl4{w)I5WWVpxf(~)qH;!UdL@d#_d)@X|7c>&@6#(xM zK0uBe=V$W=+?(7(v|ZcY9%8XH#=g1VqO-KS7Uiyn#9^2n+d^dd1Npn1E zZJdK@lyaKB<4xpQnqa-uA50SXglXY}^=~XhRSh|?+7hb`HIiR%8#r0C;_R6u(vUPH zch$8irwR$O@9wP(OmKE}NazSsFM>Y4ZqJjW9ppjM;W16N$3G01K}%ielTc1DvTLsLABQ{yS+tP~3!%KKeI!jp#LIQhkoBqklzU#L%+ z9YpBYa#(o+2GC{8Xp$uA^`0s9q$pb)AbISQ#4+z^fg}hEh;H+$n;cHaor22DKoYx zOQGSUMG4Y=l29H{|8^4nIfgOl(dQApWt*H$x96y?j8b0u&Uw@9hP3~k0;{3Kjet{C zXL4m8E{?28sbzi2pG%7tc2@U{(UQkhR`7T+N$fH-{f6Dh?Xe#+cg+tHl-e03(KI*k zg*8E`PZ;OYvg{ppyhZPQJ3UW6uyeK7r}9`3wh;}Fd8(|#<8wH>oK}7B+1oVY?=nsI z+i6wJfMH5cyhR9t6O;wM)zhixoQD8mT+gW&JT%J zbJ7Ti_BY}l8o<(y4QWNC=^x#p?>|qOQRJ4hXa{nO&4^Y7&mU^CBM7!LOMhOgY8RHv znROSs-9!+s{X{ON{td#_hu{>!2~x0Cv{Jj9paoRK5MRvcWVv(^bu`dE@~T<}wi=GR z1>C!sGGxvZPMZ9>b7&M+1``!d4n=hwVXsO-UfhsC{ko9k*}{yT#VBPfk@;W@vD%@i z(PveLag&FHjmob$B~XngE&JOuI~ABV=Dy=;%eVXpy-S~0O|mz`nIbIwQc|z5JySe> z=3+Jf)yISiUN*ZR$m~Fp^a~kT#?H|>e^9B0f92EFrZ)`Dk)3!V|zc^16B$owg);NCqgWq*L0GQDx zmXDZOJfWGocpWpD|6NOx_xq0y-#6>b0tUK*qA8RFSMAkdnqVLQ6tuMU-ltdcV{!!V z#C;38r-zOV)JlseFJIp6>QrM)rAL-#;jkRF8e2)x%uIW2I#D;Z9b+alBQhmzsH!mX zxbKx%oOO-Ma)Pdg3y#X70t?&vh=Ma4XOWue8-?S4N}(Tm$kGIhj|02hYa#^~Ne{2f z;zHp*6gkJh7Qn=sR{gPd(ZU_WwD4CYL(a%&73=T%suuk-kGGO#?lY`8S~#GvhIXe7o){sIieHkeh{0*-;-l%>mr(;KWeGyR-Sbo8Dh zrfYuFZpGD0Q994i-Sf|8uJUL*CnV+?js&NinN=q0m=) zl8=ceZ;~9K8JP8W znLu2%5p^jXKfQLC6k8&uRITcOkxFs)061 z)}zG*M4CE%`Hu;iLP+> zTP*LhAFM^z>%#>y=b(x=1s!QHGxsN0Kp4uiO8BH;2XoiJ6);tsdB6p*Wd60nlY%w! z9{sid?h;&uPW4v98A7ayKs!+e046jHO8e&s@kQtck#-`FDmg&kx(ucZ=fa`gU>W7q?Q5)n9<{nzw?d73YBD1 zP{XFLfy8a;0aMZVi_VcymNW~{1z`BeQ=S6heRw$T5IKg>bZO7EgvZ>xQ?L<8qGz`R zz*TDJ#YA)B>RcwSp_l(rbZ7qPgt`f$K-@{jS++m;^eONkwv+Q&S;$hmzE`NooIJLfs2CxCo-e#)? z_1OlKY~%5ka0+ukx0HGU6z2e(M|*AXtFAVrETD=uYi%fRYZc-AK{msM@WogYx0tMQ zg_d`nAmpWQbY6r$O&9g9L69#IQy>d7;BiCet*^ud(ub3FxiIR`cM(DzzyQ$@NOfJA z?>3zQ_mO9?h81lX(B-WId9%x@rnV^&!kZ}k3^=Wsa$rfiaD_@?0nVoIKA>{$>670C z6i-2_W52x2a+u=PuwjQRO|rsyFRLy1&RWY0<6H<_70yx=D${sGi^j<>jf>$uWD)meVAy=znNj`mT)PWGI zor0%G=RTwbwzDGmwxC{Uzpe&A?uzm09y_7HhH_B({{D}y5*@6j&bj?8Lw~v|^X?Q& zKrYul-2!~@bB|sm-MhYTT3)t3eKTmtFv|wm>9*nxid3F^uIs1BIp7HDKKH zIs;gsQG)fDY0UJd7H0K6U$ig<6f(|mqC7jwA7S#Tx z7zif6D2_Wd+)7k}wM(i9hT}*`&T?1tSoSyJh)LVcePyrd3>~+9DY~7_?MXK1GVsjX%E_K^5XKwSD!QZ+!zDw)W&~3$Ded4YwI9o@s%{toYlhd*Pr`HDD!~G(8*;<{Hkni?r`AAl z$&r&tXy<{9K!|8ol(zJltA`sNm9n>7hytCAqM-fqyb>w4AxjPA%rOuCP2qKpp|{gz z--h(YvW<0E9c~T?8kv3#7QS^N%Nokx!3{!r>4Q`cT+~TB>=OBwoI86D4R{=vo#c|P zF|X*XHoxKo*nd*k*5QmSY#AY_9a@$XQW?8C`VR`St}URUcaE+#Bh{X)hU_#xd4IXXlHX373&f9tU2v8L_Yg#zEoH++Lek?Cx?EepR~*XvBdfT2Xb?>) zh=<&iVTI611Y9F}h7J54JJRmE3)yeZegAX`oMo|;WLmEduoTM6RZjDl5@xi9Q7neU z;9;%ibhv>`X`JZVg5f#>+-JwvX}gwvdl7986P(!bQu9GGY&Noj7jzFp^;-e!)65}y zmtl4fd{GxCQ!&OC$3P-Z2_p|m&xD9b*C`+vo^Xur+H0Uyc0+@7+cBF2!l`UYbnJX7 zAglLRs@)Iy8tnAkR+zlyCU@{7q|k2;y-c(x)mc-rUrY=5Pv$1|mIGOOKjBdTaB~{R zS>H2c(~BkGt4C6y36AhF-?T^B0CfF&)k2eBI*6^V&u6QLMAVzpr%O+rswT0SO<#&h zKrha>yvM+lUUzQo*~ZL8`>;gN704AEVXN^kq$xWF#Wx@*aQDNYuK}G5sNOCCBr9jdJ^O z!key&ouP!9Xx~I0NQkHGE2BF(`F^_xL6fr`?5TehXh$prN3s|W_jn9R0$d@u6NRP< zEFIgi3bB_lwP;tno7C_7dZ%#Yxy|49{V(AFr45+Pd-drbihdAZxe7#mCje4S0lcq& z_hJzt1To0V9S^SrE-{o@P}Yk(?CUCHZ!1V|MXA@xD3DEzxh{a?D+)mHwdA=wB@vZ?n@e_b5JHx^@_ zXc5sGA*jIg2U7i=S3+1o1^EBX0r`Ktd$dG`BA|6^*BenN0XyvvPvS%`jvBL+QA$uSRCZjefr0Hz0c(1=tKA!p?CmmGf}@;8WZCV}Pz*Pj#6r zKs13hL`4A5#QoxU=}t-nKE!ubYWjz;NP(s(&BIvw^QA1@jnuqgbEVTwO|L>A#t~V& zuo7lgNw+4sKRi|s?B7l;Np|U0|L`&n%)m`o|0SM!TEiua`dXAmd36nRIc;U&UM#r3|G1C zT7hZ>5m3g+%u@`3M52l==Z+C*T+ea>FVM>`>)>TOqbQF%;5?uDEdT9}W-hYs`4K;# z;~rtAHp9C`?k|2Tsyk6@uoOVh>u-^_<`o{+4%qhxKMuU(I1G`AAH-P z+|;iHE#w-dHoBF^i^U054)mgEa(UlNkYK?AztplIT4uXM~mR z!ZzsJ(+VTLi&(mg-bIRx#x?W=1!&v^nk);L{H(t(R^P0 z*pkK6wXNjJgnD+DB!i!v9`Ol}@bMJ2%h7f3V)lCUsRwT^Yn05z^I6D(vjT6y z1i$v=!ElbkVwrZ)(kPCKw|Vu+tKw#g!BQnnTiaHdhSGW?tQ!Bs>m>ISUpD9?6nF#! zYq`bKm0l+`Ys1P*RYv+3J0Go!Ho5rtG3`I;=jB@0da*R#N$-?-mHO<5@tRY7LA07S zyT{v7gwp5W$o>55CA>BVsGBxYu2((<`lyYZOV7oC3x#y-5<_q00vruXst8-M=iTQp9QK`=H&pgf6xIl+Zk574?c&-QR zXG3m+d1_G4!Kny0wzM_g-XLk5#KF7dW6{F7&z|O1*VT*lG*Yo2e9QAbA4simZrTl) z7|JJBqA=5?rv;Yc^oBy1h`Sfc<)h9=LCizhvHm7b3j zegMUK8yXI|$y{rsOXZ~Jp)Q!iyH?Fan#E!FD%ylxHrM-C#!BAZxmC$dL410Uub?ckeY_WDXLHJO)!u&VS zT;PDh?V?t7fE6vK%NfaXn23Ah$(-DeG|%aZ!LJT?NGf*RwleOCUeINQ4v82>@>&mt zzu}IkJ@~Z6bvlPN$9y+LeyeN`KT%hK&(a{AK~2rM_)Ru?$g40PRdUGBsm_t1W^F!a99=)=xjmCjJx$2DLs zW*DG*(WY7AQOUHCbA9levUQSB!R2l*MxVo~t?+h<-oeZv!+P(A<}Z<5&53C-70Esn zQn}UXY^i>bw&wf-`OJSyW_XjNYV#mQFIjF`ALeaay1Dz~}@@QX#X0#$fEwf+`|6?Y7lxd|jSsbi2Hn{JGix}4%2luo*Rp|Wqn8wA>jhbxx; z=<2+_@&jgLyEM2jQFh3ce>_Z!6aJRpNpHySxM#99LX~GHilDK_IPgEfR4+;S@AeT; z4w?e#;4o9LwSm*x4|_e!0C=PArIE1pu%N@RQmeJu_cvPbYOyGM7q71FiIiY|hu(%j zZ3hzU11r_q_p;T7{%(BkGc`worn<6GTg0vhoE@iaW3?5KL{It*@2%&eV<*ucDRGYm z)EJQSjuKDvVgzekYDG7qtTju#rMN@d1^c)nO&|?oQZv_ksP%j#{HelQrBT`Y--AcWiJ0I zTAqpcW@0)tJm7#%0U=Zo&^HOFl(h2MO^Z>Wz!3dP|wr0Xcr(jEq7i);t%+o4hAj);R{X+$G&LVIN-3qqVmLAHtsCd~%$gm(z zsZ#!`dEE4YfxOYA=#QlKEu85Wd%?R90^~-djJ>L^s%c9oB5lWyZhkcUBAw=G3)DjG z6d!Ahd)ow@hklM5C_yjxWIPC6zwT;h9230=_t1mapVppU3rpjNoo@+z2o|2-b~&xo zLu2n43CU-9g}S{FD2Q{%R*8b0c%QJiQ%9x2J-=VGAwA=tz6XH9zs+u-y#8 z_v$t@X@}X7uO=Ac_g9{x$F}`qG2-y@>!243AWc0AY#+W5u9ODERuT# z8%I~zo^;7FZ%RO21f*aw0xLu;$R(VlKf>J5QeNwQ(FlXuZ_=I<_&$?(Yu(wB%XpoE z{dr}Z!YfXJ?O}_K#xD`0!y5Xzan{tXm3gqe=L{t&aN?>N(ln=w*XylxbJkOLNt)eG zVVg`OLAen9Zs?re`0PS+!Y$@oy6oiM4-`t|M)!PC`%%|$I&pbe%ay?zyOm8bS!(?*|NTw1S0dqwYI7e=C9Kd( z>7bwH9x|oki70vgL(iOXqsKZXK7QMc4L<|=Y8|#?ME`!4G9{l?LaN*9r+YtvJHSL> z_Bg2h_}um^T-avEdKwzUyF9%ReWL|6V16*in*o^^KtA2ONKrZ>$?c&tce~P+*Ij`} z!1!C$gZ-_kDIA`2P)vUXt>>XDmhZswb`9-OZjHyC%KJ&zP_`9G(PnNn;hm~tp=se$ zMBGS#nFi>K7~9QY(cn5?=ML31dnQQ}(NG@JNRfUqi6J4y$oUgH)8u6xW8-zjDq-XV z2zhq~G}iQ6_O@yWC+ThpRBv6Pzug&omN@bvuP^6bsmyiR0(&fPxlcK+jVX=^sLWHm z5?bkAODqR1ZzOfon%W5-Hqxp#7$n#S2jQNDJY}&K4Kg@NxYZ}tmp4&D{oKiJY3-jr zs5()g4yN8kcnusilFpBOeflH(Z0gdiY8ciHcF}mi|2Ad=-J)u|D`htPS_T663gd4T zPBZCx(~W(%DbrX)H_NyQa)D^IKdomNEFFKLAPo3v?buMUZ%lT58Ea!ex; z=pEf{Jq4z)gJBKOh{!C8Du!p{RR_%wmy=t4>wIT&z0G}!?Cd%QwKO$Ft2r8`FzVqpz1%ywsh# zW@fm}UE4H38=K{IeqvM6d?fNUOw5V4j@=mlS;L;+qz4=Kc8k6H*4WfW1xxKW&AiEG zB|6fn^kNaw6Y9vYEH1`_@z#Xa$T{=PL`&09uBK3xWWm-&nSvi8Y|Lq9kH7Z3nw`5v zq32;#Otwre9W7w%_{6lsDSXxy;xB5wsAK%3o$*}`)VH%iL%%$mz;T|MXz~@ zc%Y$>7nyxW)tD?{s-JfzPi+;+E z{ZrY$RG|Gvx;sn!=u?>31|8gmr+uPFlDUi~Vx`6oVwyXOH(HnX)LAzxkg8%LQ#Dp+ z$>P7}z3&XFOc`vvxG@j@Z7BQI64cB@8|i9)eEaWGo;3t`wumP zwyQv>6fF%n>Jd=BMB?|Qz`YN;uR}l2KA*dR4)iQ> zz3=^bZathQKw0ra$CQg9f4M-=jwavP|n1B8pd&>Mo_Mt6bWM(?=43u zLzBnVlj6g#`y%NV+wU!_$?|T`Hpe)w^veT0kIM35yv+NuhEm8;PXE)x53i9?G35$P z+RsJ;?Y=o}P2LxD-Fa`)ouWP48cCCDtSxXt0E18au1{7!&AX=au}lwy>2s-+VX$w_ zzDPuy6B#9C&Jgznby*Q$s2|KWg)%9p2xJt}hP59}tpNYS1+pL8mu_rDPHP&U zG`=SBSoDgy9jxC1G;B2J2W<00#ez~3jJyIHTy;!VyEEwENC^&8iFgP!IKk_d<&ma5 z8-s8@fHn~>i(cB5-VA^BTpewY{Zpi;s!DC$K{p>41_T7Wz+vfll>SJj8(|r%zLPh z0d-S-do8yYuzVi?fch{`@4j}0<0oKAq$@fFo5LZ4!t!%;%KIk_qm`3IJcXLY-`{HK z#zgExBA>+b>81ggMqdt9#!9SB0ZI8{y6#%K7{-=oVEqOlALju%83)qrfG@Z#$|=2b zv~9Jgo5IzHE*qmC{BNoUY*62KTds4RX$a&3JulYJ!R}?F-DUQ3CSVY_jGEBJ!2-Yk z4VuPk;ByH8ER3poeed&c9ssjKj=TUcK2@$rA;<4$5!#O8!Q2(YqH>Rn%cM8z6}|M! zY}HoL@1Q2r0xm5du@S~f`|lZQAH>~8w&kW?h@=tKqqPJ7&7I^6xjqbRgMNl-%?e! zZ7FMQr$hvu*AotiS|iE0WdM=oqqKhk?yFJ{!IA(dILh7jKQGSUETO5;top;XfS{fs zlA<6?OjR|?q%&R#-2L|~5vL!)BkopB--Ll?TljHpC9n3P{}lPUAvB|5KgfL(XfoV# zKAt|{zF##_?XD@Q3MXW#DlzROzW*M0L+t<~Kdh=r7(E>DjL%QN?o;oV#tMvO+mre8 ze&lFB0%Kzy$8DhJj^!`zolLH{$_*y7I|bP z@gl|V;gvE*79m*NB%M~{#pav>w>#!=(p}|2EGr%S)z7a_HJb%4RvH>LiY?Uksp;boTDda z^L>@a+$EsqgWhg6smvesl@lL>w@6AgLX3QjImK~jDH=|Ij^YgvbbK7(w)lhh^Uavil@p1rVC}uv){i#Ti~1IbyUFLtT}i z;cT^cl-C;@0lP_TKtY7kVoiJpE&sGD38o>qMznyaUO$C50psw zP>wbMvt(189-su^D#N4!!d0fZK^)`>mOZ>Q`_nYFWUO`WHX6?`zNCV6pkuy0#uTif zFm9xAj1n<3ZdIKe+QM%y*J@mVH8ByBp z`pQ?X#OU4)QgRIH_jOfd=7q2{1EOf5Et;IGc*hzXJ}m@v*nBBBzG?Y3J8_j^NZRYA zqIxqx$k9}UH$}1aQgIHkBnCL_2{X9LShi!sW&Q+?RI#>8n1~2Ph#IMp#f;!u|A#OU zJ=yhJ)Rhd-rWnI=UbZ)jY<>ke1?$g3z6Z{5)@-W_zws>#?yY~%mk_$r?5wpxJ4rmL z&=hO@EfE+mX-vl*@pw9gvYrGJ@)PVke8l8`B@->w1eisPeTf6 zP*)Uo#UvS6%WEbDMwiWT%$9+D$Afk4?=ICW@YoxjI2R;A7-?nZc9Dj!nP=<6KgdNl z;FTEl)8=mzVl4R_GowFky!{|V(srWaoAJowfcoi+T)paw3*EXYw15`FNence%}w_K zG|}IQ1Z@Q*gv&63h=3!5Aac-QzKxE?b1zyMCPjIx${5mQIPys4{)b6kMMmy}rF3s0 z=8{An4~dYfquH zcD_;hQubouC8gjCsY3G}o6mb=ESs(&FS<(W=AR8san* zRW0Ha)j=&~1Bf~M1S!x@uW=`QIh-hmmj3ywLip$#UJ=vU(`rx&5snc&YIfK;Eu`y( z8RQ*2LY%ensQ?UaV2u%39eqO_nbWU5@#qF_58Z_&gECR;TN_vnUBd(!H1a4ovONwm zn@!RRZjZJ!(x8U3`DF2RHJ?ytc&z06ciymiT8?R^rsKwUkwi>ExHR{)ddTbxwF*$7 zQNiswTCQl8S}|l_8WWD5x_BBt>00`@JC>A{(45txUtF3aFul zVjmL4KMANW!gi?6gGdDZRPGvJyGs~R3ZzQQl$b8T2FQ0d#dA6%POruAZ*v*)CKw|( z(o%i-)Riu(&oSKcmfZWg$obwQ93@}=amp|iY(Cl+`#i%`hjD%ZO<0#9di1;Ke^N*> zMOsMfj!^kIDlKCpL2!GRbC4-YDh|OgJdzNZRx?*83DqzhPE^Fl6~J{-Zgg(O78B$c z@?4QnTIUwZy{hMsdu@%Pra75@7!GMof=0b~W2@_dL9Nu5i_l)prS`<-l#k9)!Sz1c zS$Gl{UmlBTF_aMPH*ll-`oe}U0jW)XJyQGz$_?x^=bTz>JhZ397SWgljn^ifiX$;T zv^Zp=9uv=D7~}{0k_~S11+7tLsFbXk4IwivQffMy9MHRda9$NFI~9Q` zO;XCaie^B1Yo}oo@NP?rfDL;4LPxVGnx`%HNJ68hb7^NEFQ$u8G#%w6Ag0A zFKKOyhD?O86$WEc16ebqneXQ$i5J^izbk>GJoKZ-3748I?auPF%=kWK(rgu?IBTEX zPv<+*&yAk`87ujhW~4d6|7sQR(21!-;3J>e)cOPm<^L;8z#kO^A_cly9cQ_w z{XWC5xyNp z;Ap`@@}leOD`gY350pab%Xz`64F45P_#t<}QR7bj@4Nq`+y4|)uuKfq1kpZyTw&QO zR}6WIjxwBT0n$8Oyv3L+rv_hF>b1{T4qR;PS0)6|l>aXKR}mM1B&ogrzg2^QdQVi$ zjNs}pF&fB%A}#{5dv!eiPbwJuAU_$EQ?&X&s%*(sf>JR>z+QsOyqgV(5?$WQI?sU& z_{Hggb>z?Y3U8D_g*VHYPR0n=#}{zfOc}3mQUIj{Z74ny=Fd2woNEVOr;Nb7<2A_R zRgW(ognT|7(myvB{`2VRqBpr(Bvy9QBU(%GNlBOQ2}?bRrk9pjH)heV@z?>o4l4kv z6$SY{NVK?YC!x1=%IvZW@sz|SKpl1nI|7y12ha~jy_+bGe97bs(x;~yIa+j};*1A5 zYT)XFfh;9cuwNk;p#EI}>m#vndWY`wroQ)n`o{04UCfbgnjlh8xdfC7{W;p)_qU47 zdpatd)=cKxq920XsU5hL#=;W>>@&wJT~yXCKx>OhN9?T~V96<5wF9c?m#>|*Z($t0 zt^;;<41g|~0XKQ>*nwjz^ZDEACqn~|2p?B?Wk6{^--GQ;;=D~oH^IHqBzPhXa z9bSj9Kk10O!vZg9+{K|oJ_WQCuWetZbbq!Q!(Fh)I8C|Nxm&gyJcMRrCXQYj^LtP1 ztr$kRD6tC16?)*`ifOM1C{0t~gt7z3Z+UP8)bWC=p*i6C>fA$nNsVD1k%e$|dT*e> zeX+m#IOe+wJ{-e$wmEFgsT7n4ko|MuH2Dym4q{0fFnbGfg>Kh~K%@;c2_9um2%!j-p<&;>f^CTi9B+RSL zpL3t^B=q2Zh7HRg5BuaGpeT;*3=o2xN?617yfS`p2Vuz4|1Pv4ZiuQ=i>f&w*`)oo zG5jXV#C4@Gg)i5n!8WJ&W6nz{bB!dMwGbz!*FyAJ*r-M#{qsS+Hgb|>S zD&+J7Y>SmmN=WLD#D4%PWQ7u|5yvQ>i^getFvrVpWu}9@fwDMo#RG(+nSAmIbaqJz z=^ZhLbgSL=dA^t1Ku1O@UGjnq>Q6V^tTU~^oS+Jx77D66Y^nM*mh7e#^k?0sokj5= z?m))f2er#yAUqZjz+ZZuHpr<5YQcu>6iRh0MOWq1JmDHVqn~`SKKx&rhl{ik@RX)?>f5Rw*7sX?d z^RUD{#9!Kj-{=YFHV&WDs=6&MuBITmgQA4=*}Zt%rp^(LnIG@z&`3DTM~ckffMnZ( z6UGkUs4ruX^^mRR`G@2fM@eE}YwiVLGxEdzn*CBj@=Vq1Tg(i`-Pacd6I6+zPCJ7f z%S}i``w1Uq$}YCuuSb6!8xzT={CAEHBd!FuGO@QD$c-bF8>H6xrGy#`6j>FQ`|%WR zsbvPZRTR8Ng`VUFsgeYsOy77NghP=vqIF0)xs8BmPWptM*C9DDPT;epop0c~SU%Y3 zi66q|3(&dMfdpXh{QOnf+5qJvQRe5f!ND9u*BodKv=-XB6=B3)3e!J6JrZhb3NSYh zvzX|10%Q9-a{#yUjJ|8GDRgd`j#=4==q2dE$UgGCJU{#(8GMr*3u}8#J_`20MSb1u zI`GkF!M3g-uUbf84JLKW!S_#aIeWrt1)r|J9h-j}t19vIa7!~|GmL{`$jeR?;1r%S z9<~NAII%lv8&Yv2PZvVtR2S&9H|kwLV~TKD@zve~!8?U|2X=*>77>-TU={ka(GjsA46WgSm@|dX{@j^gc_KU>DX_fsy;j6upOzT~a#z9z)1QBRk?Fg>NR@u# z;^NNI34hY`-*14(BbPKlIXF08E5Ysl`T*K%!pPXB1^;*C{r^>2-~YNWj8IJ-Oe;WY3B#|}&QW-C91ai;41O(K)CN&BWYQ);} z5Mb2esbCeBEF1+f^cL`-!!HiMP)g*IrWWzADEx1g|1~GP=%%?1y=EFv0b1xSQMEZ$ zn}_>KnQ%|a}rrX{!*he%*@6$sj&kWD1KbYk|OUSee zBIQ7*vjlWTNX41%$|(LA_}oZ+`|kBR9C=Ve6X8o$YK?hr|m$eHF;L& zb4~B3{qMMzp3SDA@zn*pnh??7YuSJ3Tc3bRr)exy(T|KxGQK?Qc9ScnKhR z6gu9YpC88n>>Jc&y7Pd(`M}}QJ1e7(S62s7ak+9AkdQ@^&sH#4j7ke`9s{8X%Ml%Y zK#2kVB5>SjV*3~p6_2RwK;DTcke(1V=o%!zUBPx4;g4G%+#4x0eS~`mQdwR?GjI!^ zbPtSyT#gGv3+IWBWeRpj4Gb(O+(P?!q20*3U@Lu0LO_g@o1b(!VJKDo9J)E6@@k2>sLA8SqxUF3LHjAz8}c(PHje= zHE9O^z5j?`Xm6u86)?Xo*Da=K2Q*(yU7c9^w=g0th}mq#D#mOb-s{(V)=!9r!KCOn zC8q10AUg?KAS+mX`CNCiBbf&_qeQ`sldh$34r;8`dj98m!b=YSW;nlsUuKezexR#* zI`-OMq_FSugF4SMS;zYn2mj;!w*Z`CanfAy2kH7XX*k0`Q0qDoapk)@czvK1WPl|bSTBuqZSXq(IhYXb-pX{R;-I21mU6@l{B2IM|nWNrdFyIaK3tJ zv}S;Xj?|uF>G?MsM+{&RBIIZ3Q&uWn#bb)lRTElswqndBuO3yxKpEZ_W@T;5MgJQd z@j;=NuhU4lfrchih(WD<~X65%+@Lva?JBDW@a^>3~ zVI28_Jb{L`2;<6lT*J?25Hqxq4LQC#pp4Tu06^vC)5ZMPQ&JZJPC!NXH?rhI13v5Y z8dvfarXPHOFgU^g-o=Xfu#chNycrL6he1pxCWpl?1Zfyb!k)%wf4HeD=(HMZ@;&Ki z^kQepyU)3R!R`dBXVPjCBK#bK$VY@7iC!_RBLcEX$Fy%V|*}DvR zNrx$FC|qhg6|eSArX3jLN$%w+CUPMNWqH8dhU|r`rwBU8)SRr|0V_f{qe>c-{&5@V z0G$VMjSF-_tF~SO+y@cXwJV*!0{BQB1UrJy*k}~G6^;nzUk-suEpYo@xw&^Z7JHfgDT1^Le+t*GFh0%g;m^e^qe}PYw*}t3SHEzK! zx0~^ET>T-h%3K&!Vb+~;3#=m{R*&^)BE{=K{(+k531ZDJC@N2{dcLSfWVhlb@m1In ze&1Kly=&%cDrm!gSqbVRAvaP|QdUs)YxL{@sDKH;A4!LRw#>E=1!w{xyPi(xe0S>8 zUD{=^P0Ys`4mnoM+>}K`uwzzCc&j%BsLc-0*O)Uy0VHfM9hZB>BdcAu(%ix|0k(zy z$+GvYZwl1)VFyqq0DvtXls8|{0lrY610o>Uuo-g+C@ z1EtvGXeJo!`XfQKj7~FB>s@=`3Lq$Q@`qnE?pjXORHLAvw1FV?8JX1D^LXLS>PX80 zSpGlmtE331t!;uh#A7qAbvg>Rp0U2ZL?Pzo<2MLmF4WBi>l7Gf(f6YXI{v9xD zLOZlPbP_jiQnEsp(6M~!f+&!QW(Xm<0JJG_b5>%-KtqBQf|sK}+u?)borMKp3>6Jh zptWuEMBl@5@Ytu_nB?gjSa zdFSTI`?@_m`%R9btx*}RQ)V>EGlLLb7rsXy1#OqALadU-(W?%4F7fLO1}L}{^xPiB zoBkVZGFg1(up9z(#iDwWcokUGlbkwzuM^xiY<@{J(33w23B%bEH2REp6Sd^{TbYZXH>w{azD*X&f3mLp%80`^iY(xB74T(X-Q-Zj4m4~ggY6c) zz(Oe&+yeFx79yiOh9XIj2!2J%Ksu8fRsf5&rOHmY%^^>mb`)~2z+$zYWl%^~0FSwx zT)F#rJVFRLLB$uNl;^)digfMp-lAQ;FFy&jeUmcS+)DDz11R7Ll-;Dz(PrOOZ)1{g z2{6aZ!g3`1gzydwm&k%hTczZi4D+;$WF!qBUu>{vOCElBfI#nk?L>gM2V~MR#B5rS zj?PG9j`~8-za?ZjpePV1OM^_TfGv?@3`fEhg|3C@wnpBzo~+VlDVj}jSm-cKIy|yO z5s27joGln>Yr2vlD}7$h;)mRG0hB^6?E?{f;# zg4q=`JOG6smAU`p2l+C55{l5k#DoUcu;CpLUZ3MP-IY+v@1l*T+HQ#`#F5kYBJ)n!tc@p+hx0lA);1!YHde;Oln&AiXDuW|? zI_P%Yyt*wKzVpUkvO$2P&1$8sM){6Mu1RodKi zMc2gD#Jdinbp>&SaJ1!Wz5P*N3h4Ng8CsUn4$)?l4bg83(BcakwncYVoZM@vyEgfv z*th*Nvq|&5Rth(BtsDMH?m}Z_*`-;i4tSP7{=VKtE-dat8ctIa^NeiqjSXm zU+legR94&DHYzEd(n@!OG!Kn*i*$#8NH@|TCEe0Wsibswr+|P+NrQAF`ORl<-J9Pz z@B7Dl#u?u@W^Ypyx(`?{~|y1V|rSYZ60Ku!Mx`Yh0ak$`-=97_N5 zzNmzdmvoEG@xG65_;4&;^sV_ws)>Ju)2*a^xvllYF8N=#;A<41@;TLG)+TyR*&Sy1-V2 z1~33IN1Ffvu{RW(iW;C`6k}B7AhIX=1wf}0o5>yj zgw1%az^Ww|%q%vXnP4+>v0_t0f1e z9h`))qIV^L+}a;W!b_=}s2p_*3YX>}D7$F)qh@DU0b<;ug#u+_BbvK&n-p2{yD5g< z4ycgj0(fey%veHNLh5TsktS|$e}&_vlA zfW&Ec@Ivjap+sNOSAfcVLJS}-aV#}BwmlGy<$-KPt-;l%4wSURe{{Ve7yyy;3NTTM z2k8;&Pgm}*m~4+B!~4V}O#fY=9LK6J@bOt;Ql;I30W2&my!aVVos3rhs6%9`yae4b zt**iI`T7aeL+HU^Og5kHEf~(U{_2hc&b17-}?Oe`50iE zQJF1)zj11@{{oDU?VLCWhb7K7evZGjS#PGvSTcVMll~ z@yWj~1DmOd=6~a3#MsM=tW23L7{R0`NB_|DcDJp&O_j$P6G($AXLDM)CAVkg974g&~h_)UBmE4 z07M$Mk_OX>S z*zg&fp;T=2kYB(jr;_X~r}|YXC!W6fzlY6Op8m3_pd2qA7aXt=eDXh!oXH0jv%cJ?>W__nW@YcC zg~)-Sic!k_SKzD*!0qEOxZ$~EMB^wreD-7PcMu@TUSA@2Zt!OGmM29RffgfquJ!?(uTr{ z#X7vkyq__?H(Qs}fK{Ae`P@>bd0k!|g`L|Hp0{CH@4n1ea+)9Z7@jeT^v9H}b`tsANSTT9fJtMp zuC~&8inUX?@tlykZW-%6xf`Xzy+B1fW`QEJl_8HZv_E(6X93LtkQ)5Rvp`1(rI%b= zNjb6#$3b-{qKeKQ63jf3)c<{ujYw*&fcTmslf*mt+?gAV7K<}bB@xJpnIw5=gWJoN z&>DYf)gi!sPd|%#B*;Z(lgdt}h}1(u8`TaNnAK3nF${GDycB9w<;FSBrL{)=rg?W9 z7@lEeDuub>EE>6lFLMCIe@&dtm%QxSiS%PLNIRU2c9PLbQVJ6rh~a);M9w^jGUa6G+yL}+>d>Cx^U5PMi3rp8)JtX9!LY_6 zAl8HgMN*{0_Hq-(Lc=gs<$6j;#PL!Z0(RV|gyx@7WPpN%8~HuXJ6f&hSOXZI0`s{N37C%r z)RUDZ4cU<&P%zV?!N(IGh!diq$#aW0rj=nSI(tfJ2W@71KNiEA#_E(BG@ZZ?b*x0+ z6F`HzhbCi`Z&$y3{CsS2v^)CBXqEWuCTlR^b=ObUjc5+`ZWK1xU@;U>frT8H%DT6) z$Gio+b&TvXyNf^@i^uI=L#fHi8<8^m2(H}zod`SfYX5?qfrm+!t z%IsmBkYIN+cdbS4vj@t%AB7c)I+Z&lm?iW&$^?*>a)xpx-FlYzuGohkk3gtGNB)}_ z{b0`$F8-NfZ}`?{J_`k(6Y69Afe<&coj{h(@&e(YXLRo5m59oy!1!Ma((x(8n7F_wSt8UrQO_-IIo}@P8Mb{{9Kd+1c#A zIL!#B{}Cchf}lV8B>5i9-DMks3}qz-+4+0l%@Dxt!fqq|pNReUNd0$$xBWWy7VpdI zheDp}AVA-GcBY&mKm$U|qfg8zfb{chOPXZO|0-R+536}`%+(;o_gwN+(ZE`Z0cy~jeMUD)f zT+Kc68aG*CdFs~FAb+Gz_bqq=zd0@R&}|Ac_nnd#?|e#wHDZs)PpAEiSLIv#UF+TlxvsB%+-W!?MKZ`7OuOtG|EvJYHlalDuwLH80EA5j zFu(wTp%(=JWGafA!Ll@#uSnvtnyC45;C<^qu{r*~u{l!W`alq%f%F1Q&J1{ff{f&^ zn7{HCgsf-gkBgX+uu^I$Wtwld$oM^Of)fUl#SDtE>CF!1Hn2DddfwnqyKR^6PSGby)bldZGQ`t< z*+W~%5KNmb4qqAExY_H=&#vHnext$fdK&vU$2hOx7=lX^x?aMl=+yi?25XYL#(0lt z^WcC{XtyGBM6iTLasSX}>&A)maEm2M_-3JkKTmpjDel|Fu#xN3YRoi=+0!p?v5FVZ zKXp~SmT{`7u%7@%-bcGw+T1L=`os^=WAS4%me)%L&h2XY>gNh*Tn>W*JQs?dYN5T# z9XYp3p0}&x%!@&s6#Aa6W?+LdHPTyJ-7EEm4ed(2^GOY zI%`QKWztea_~woE*Qf+$K=35+0U!(rqu-wO%&v+Z zp4eUHO2;q7aqDyb@|ZLBaJ$g?WxMev4k8PyOGwo+&rHWQ8^d6ynRpK4V7{i@kaxKv zVt#O+O`G&*$k_F=NS^&}C1-`5Y@HSI&gkt7V@LBha#H~z3*ECzL)(Oog3`XulEh~+ zH)bb0#RtBJpnO8R+yw`*($(qMgG3Q~{_PUphCp-lRK zT;9n#jF3+J%%@)!0WvPZVtjwE`tyS%ET5VuRuzR=BrN`y1Km_{B0V``3ZV+gkKA0| z_l7v}GUOoZGg^tPUDay}=tk^c>$kXQevka6c*)cHf}|Za;3CH(ZKZ>Epzw#w&iKPE zPd_>yn{Y{1A@|BRF!;?2JZ$(0j9ul(o%5FR_ZFJm3@^BtHcttsBpa-ElhLJDreTT9 z)kDH5DS8A;p4H8XIBn)TzpYi%nH*%BU|IBR$Emn3D2{zFc?RzgQSiuhibm37{FAbL zEF>Dy-x6smows_N7!A)?poyy-k-1wC13Rj$Q2j@kr{c3ESR{YOoXXqs{|50S;q zjQu&DUza~ThJ06ld0kk|lLv&0B+g&-WNE}R3dd_tZVTjz+sybMF(NKnDP%EzUUU1P zt99XBEj6rj^1N(}9G{N$d}c9&`6+q4^G8ETA-}@vtOS3S0U2cZl~(dkK3YyPJ`0|D zuVu7sBvKY?NYCh$aSUH14KME3TR$;w6uT!e%Q|QO6{p%QSFdeQqv47AaY@ziRvo2w zuI+1x4jd$|#a4h(mwB(Kg8g+VtnO(__9qQDyc>nLQr}moqzm+(Sx(V zKKIpkd(HL4tr~=g;KqX@;my|1LTL#x->>lpE`%(OuVN8x50-@0YS|J;XtKOo;QHcN z%}u;FqfUZhzW-usW1QXRYRy<|=sG(MKIw!{n)&%^fB@yg6zLT9cjT?q&kbwj%x#F1 zuE!|9a$h|Q;nl*;nBPxWliz9(FhQRu51RSPnyZX*O4d@Otogl3T}wXD?sfZHg!$)$ zkek|Fh<-B6BtQA>ucc|4NN!P%c}t=5gS3L`*vNthr7barC|b&q`_x@!ygm0HHBdh# z*h|o#j88WUTb9o_tSdg8d`eKL9~5h3f7!r|)M&q&^q}{x)O`8weF%(p^}&bEXaY@7 z?exf@pPC)mNdW~|F8!;MFbIbfz49yaY<)!qk_4p)x{G=>=2~0j7a0^}%2u@6XQU+_ z$D_MG?Hr&6;Qvjm_1gCyS*BpSQZwkH!7jfSg1v*x8D4GC-jxTzVFJRaxFAe~ix;H~G zsmJsidx&3%yR>%D$7~ymnWk4YpqAXtFMEk079ErEV&ao5sPajyIEBEsQ`-MrQpAf6 zW5K?RTBQ-OUn)Ntfh1NIK9%W0l5E$-y@`3H0eKNpKY}EQCoZ2Z)ONxgE6{(KvNjZ_ zhNDI5ErJGpM>-6f%#Ua)*gY0qJz5m`h32^zwsTlJd8sOACHGo&F&f;twK|yE z>z{9z@Vf_&Cc_^r%h|k%erz{>-;2@=Zi>0RBvlhNp=;6)T^VJcD{tws_VH`s%tm|t z>TN-~Lbpsc)o|0D5_u5`JB=DtE#d2B-@Ca3v9fNpm92ucmA#B=F&cQ8 zKb^r37Z3H~5laR54~i6&e87?>Av{*nDbsJhJo0l9c`zn6?o~*dK6TcyWoa0$`|i0R z>x?z>*|LsX70z_t^m5zbbL-a8N#bG`L{aCcQRRNT84P>;UT| z3sn9f3;~Sk@6W+<-7fSFSNtK|JtU{jYK#8kQfVdSa69N~S(tP$SnLP6L8Ik-f%*e- zQo?sw`|eb`UY>T=Uy`Y+l7>u??StY81L+*=Pf|#u2P02Dn+zJeF}JP#^mx5~t~w7V z#(c0iuDM!apz-kYDp8P_mUu)fiZ*GF2h-`tUUA6I)FjV#-0F4U>xpW7r1cqYCUv9T zQZdf+6N^00K54kqf?|KU!f2nwCTTW)!fc(;L$Rz<&5;*#D0Njd4@E531UBuu+?OE` zqQ-5$z0Y<+>mNg@go*_0MDRP2Nk!(^@6%Kw>KI`@2dYW67OiT!AW`ns17tRq%zNsL z7aMkoPMJqMYZwZKj=EUVk>6I2k~Gf>dlpbj=fXb93YSp4# z*aIH`b+-jQRanxivCV)|RvCfH-oWcAFQ6uVLY}P&LPZnrR!|7+DId+wI#v}Bry(zj zq?guKAauf?$zYC+>bVZRA555W!`FQ^;Pygb7yY5dV9}B>zrloVXnh2|G?BZm zmco4X(py8%_4^^MLGB7k=dl~;g*HK2LFOsx7PJcQ^)ejmxG)H2M09Z>n!=fb;ogLh z<=_rmCRevI8e3M~MU4I2w1Rt~3#@o4s{OiwiDhU@sPRbHI3{QYTJA-Wt9^0e!Of}~ zrtLx#R&0q#P1))CO&1QP;qDZJqPke~~q-gIq8|%ar z{SY>-hUg&vc3~e0zKQoVAQ<~aBgI@vrK&Xm%4 zKl)o!&Mg1t zWfw*nluphC6U=83Dz}V1A-RRVD9kMs0th(=H_E+-dQdPQg z>V(s`IIUc#(vLX4b&ub(V3nz;&knZk^{|Jt6V!-n<6jPw;;`O@6aRF$E<>JS;3IXR zpkHjv>^fym{HBT8ceZyKQ{nXWJ)S^vWgF88f>0|9ri880E7VSV(>#jK(}u?t@CC-J zI*4$FNOtSX94g)8s1@o~R@O$Ah?+>M3|3t!rsQGO2ikd-Jo;~Gt=r86!ibKztF_Oj z#x>AhX`PkNU9WuC+y#nLNjoT9>3e;WTq0o`#Gix}B&KJoMvG=lQ|GukW)tN55>ORj z;mACQVrp$>c&tX>zg}Cm0f!cj!evrhR=y*R~uo~fH+rwt@$!QNovrfE4RhSgWY&P(_~tNdBSq4niQ*>r15)6rVVbxjc-!V ze2|dnk0IS=BVeNrzdwSVqY zap>1*j;w!_L8%TGfc>7U@FXL|W$2r}ljYPj`FmY$Tq=D)i&7A6dDEHik^_XryaDf6X}b6LsV& zCx@f=wXtXz%=~cAS!<47ti!^~c&EvykxG;0Z_BPHxihCzA!r?+9~I>Zi8`-?&XYo#H zv$OzHx`DsRP{eC*r!y``m z8oL^HvKSkv%C(OVne>>P=!v^BkKhH7qq|OCkT+7hypLhkl$P1vEV}MjoBmkKe?= zyAP2o(6Lo68MAcccqtG|Xtn2#R zFjWq0^8%^8n(*Is@lKQB$b8m5(TyyGDo?is299s-7(Oz5ixb>`GF80 z%BBUU#B9vxasav!FE;tUb5?4K7OuI7+Cqd=4dO9o549#PBvGtJ%y<9f*!t=Ib+@<5 zx5Ii7i>}+{#+YEI?iZpJ#dv=9m>u#4UbRNzG-v^YOQ70cU60uoaUDlP zrl=-CY4T;U>*hxwW+htVwAQn(4C6Wpx936pv_6yy2=USY7u^*yx#kz5 zzdyq&vK@8(iegr{FN%c3oVS|TL%h1D8$V+}RIk3}OtB1>r*8*#hsf&`Y%5}t+rjdAMpdP=VE~!DG#PJv04K;tUz9>on+Rt({bprot9AU zZDHP^ZKyJ{|N2X;a3qq@2>vPLJ)ulKqqky&K@1uiVjEvrnVeyQt4cG_7h<*F!7U29 zqr_E=<+LOYug=EBg`Le`xnmiF)~K=f!Ss*cgjOM^eBgx9}TUHEZoe-QPyh`TUuxVLroaZmjyM) z+EAh}_pXCXp_&kmc+rPj2k$*Tfl6C!Bk0kCML|b_QoBw5{2{4jkwhlDv3T;V^ubb! z7c%ztFxC=m>ElCOYIm--LH)Y@eEk+5{f-w{?Mp8$G3Q;p@&T14XurG8RGgvRNH5x{ zByfiM2P&)XTD4+Lz!~jfku?W zRl;tUDM4Y@J#(0p6zM2|_>^`OCxwh zcDGJNy>Et#B(&mNemOAz55*K(8xf6w${VR#G%_FjsX9ZCIs?%G>0C3%Y4ROH8@Uuz zLlJApq#SDby zKc4dLQCn~{XNI@?<}M$uQwC7yI1a5>W$%6sNnUVtbce*$_bvm?gc@imD^O5S%9+~# z)02?gUk0ZPZ_VG|KlWun$p6KN;~TaS{hR-7DvJNDk`EYH1gJda$1B*g;f$m=Sw7@# zzNNSx=U>jyJ6DL8J7XoE49KOP?#YN=C~*8z@UZ=R4tnm8s{+i-E`ZLn$7Mfyzg|aRTv_HgEtazmJPSYeU-_U#a_{n4?#nhXh z4-szyll0kI2Z=aZ#ZOrvd5r}SuN*MjNSFc)ZLU&aqhWA>YUfePXikCSE{^n};0k$D z-gyU+NNUP1>Ka5Ppwzh!*af6Vz&24HKp?rmVx!!3N5@|VSo6JuQqJmKcNow17N)8J z<%V@@QagI5sd7K*tXv15%AYRqUWX>-tx$~d3Q;-YU)5NDx^U6l*S`So?j#6GU?V-? z)3~w#+_pTh&_KO7PBLp=Ovr&Ad(=?C5G)@rzW>&8La9C{pIU&^6)|F9|7>CwyK#U* zCWIfp5p;~R%8&v5!bI|b5hlVT3i++GeSOX&gg47SWdIan{L^J z&hNK6YBjrf&u^FWl<303ljCdqp4PDth*+~0(=A_)&#sABh4mSFJ-H+i(cPshw%*44 z{nAPz13vZ*7#{%wTx5kp70{i=)FVYAPFI)#T_91 zOnnL@vLDqy#x<*u8F1l*mcWyD#|s&1+S*<{?qq;B>$feI8Cy8~U=iCu7v0;X94y=D z{Fd4(@w*PI#~i-nUb}W(m4kWcGETDRaO%qoQEDYUS=E+ADl*bz!TV=&?Ov~GfKP$r zPV(N$1>1t$p-v=?Y*(t|tG$J|T!m+KZl^)%S?nsLdJU9(wC?M)vV>adyBUHsngoL= z69u&lYVxVPm%T$SEqzsFEpcYtBywYNRV(eCVmNfFCQPNJo$`sppDc3pu3iS6vN-gG z2fzegLcwF~1+%o&VHdkNz9+WTSMJBbY{b_jcl7z@ zw$a2|**Mv?gWGt%Nx$>mFsis(E&e{vO+o&%wi!wXGNF5KaCtM=1To5a;k2d=7U0EZ@=;<1G5*nm2wK9K2 zBqa+*CV5zTR7Tg7P_!j|bDJuVOgg(9j=k0xd?hCvQ{WeVGjrcfzW<`s`qHgvXQqK? zpyTq4S~ZsQy^YS;O(edq!KoE`dr=64l%6;XudDW++hk!j7d zX?Do5JhmAA`b-zq|JkY=vqsC)&80CRIdq7^)DG)C9B23Ux=K~*Vb z#7<}c9u&Z?<-C1d=X;Qjr)$tZx>L(Q7G~mJV|+F&oazRnTtgR_EF@Oqm6~Dvg)Zvc zG1SWxvqXP#sG;X(RQaJP+9D_WF#(>L(;$NLZ?0&~MSg1&nIw@3153Q3-tvZ3GZp&;C zFr)iH@5>M8SQ@Y$K_fsf57kE%(M?2mUH~QBDxis$0~#I?&?+TKMAS7LrWl2X80~7Q{x>_O_DB1-3o0x@j7l!X};AIsvty z7Ys`ww

""" + MATCH_CONFIG = """{{ record.match_config|linebreaksbr }}""" @@ -339,6 +373,7 @@ class Meta(BaseTable.Meta): "match_config", "config_type", "custom_compliance", + "config_remediation", ) default_columns = ( "pk", @@ -349,6 +384,7 @@ class Meta(BaseTable.Meta): "match_config", "config_type", "custom_compliance", + "config_remediation", ) @@ -436,3 +472,62 @@ class Meta(BaseTable.Meta): "intended_repository", "jinja_repository", ) + + +class RemediationSettingTable(BaseTable): + """Table to display RemediationSetting Rules.""" + + pk = ToggleColumn() + platform = LinkColumn("plugins:nautobot_golden_config:remediationsetting", args=[A("pk")]) + + class Meta(BaseTable.Meta): + """Table to display RemediationSetting Meta Data.""" + + model = models.RemediationSetting + fields = ("pk", "platform", "remediation_type") + default_columns = ("pk", "platform", "remediation_type") + + +# ConfigPlan + + +class ConfigPlanTable(StatusTableMixin, BaseTable): + """Table to display Config Plans.""" + + pk = ToggleColumn() + device = LinkColumn("plugins:nautobot_golden_config:configplan", args=[A("pk")]) + job_result = TemplateColumn( + template_code=""" """ + ) + config_set = TemplateColumn(template_code=CONFIG_SET_BUTTON, verbose_name="Config Set", orderable=False) + tags = TagColumn(url_name="plugins:nautobot_golden_config:configplan_list") + + class Meta(BaseTable.Meta): + """Table to display Config Plans Meta Data.""" + + model = models.ConfigPlan + fields = ( + "pk", + "device", + "created", + "plan_type", + "feature", + "change_control_id", + "change_control_url", + "job_result", + "config_set", + "status", + "tags", + ) + default_columns = ( + "pk", + "device", + "created", + "plan_type", + "feature", + "change_control_id", + "change_control_url", + "job_result", + "config_set", + "status", + ) diff --git a/nautobot_golden_config/templates/nautobot_golden_config/configplan_create.html b/nautobot_golden_config/templates/nautobot_golden_config/configplan_create.html new file mode 100644 index 00000000..7e95ae42 --- /dev/null +++ b/nautobot_golden_config/templates/nautobot_golden_config/configplan_create.html @@ -0,0 +1,73 @@ +{% extends 'generic/object_create.html' %} +{% load form_helpers %} +{% load helpers %} +{% load static %} + +{% block title %}Generate Config Plans{% endblock %} + +{% block form %} +
+
Plan Details
+
+ {% render_field form.plan_type %} + {% render_field form.change_control_id %} + {% render_field form.change_control_url %} + {% render_field form.feature %} + {% render_field form.commands %} +
+
Plan Filters
+
+ +

Note: Selecting no filters will generate plans for all applicable devices.

+
+ {% render_field form.tenant_group %} + {% render_field form.tenant %} + + {% render_field form.region %} + {% render_field form.site %} + {% render_field form.rack_group %} + {% render_field form.rack %} + {% render_field form.role %} + {% render_field form.manufacturer %} + {% render_field form.platform %} + {% render_field form.device_type %} + {% render_field form.device %} + {% render_field form.tag %} + {% render_field form.status %} +
+
+ +{% endblock %} + +{% block buttons %} +{% include "nautobot_golden_config/job_result_modal.html" %} + + + + + +{% endblock %} + +{% block javascript %} + + + +{% endblock javascript %} \ No newline at end of file diff --git a/nautobot_golden_config/templates/nautobot_golden_config/configplan_list.html b/nautobot_golden_config/templates/nautobot_golden_config/configplan_list.html new file mode 100644 index 00000000..d745e5db --- /dev/null +++ b/nautobot_golden_config/templates/nautobot_golden_config/configplan_list.html @@ -0,0 +1,34 @@ +{% extends 'generic/object_list.html' %} + +{% block bulk_buttons %} + + + + +{% if perms.extras.run_job %} + +{% endif %} +{% endblock %} diff --git a/nautobot_golden_config/templates/nautobot_golden_config/configplan_retrieve.html b/nautobot_golden_config/templates/nautobot_golden_config/configplan_retrieve.html new file mode 100644 index 00000000..2b08ac51 --- /dev/null +++ b/nautobot_golden_config/templates/nautobot_golden_config/configplan_retrieve.html @@ -0,0 +1,67 @@ +{% extends 'generic/object_detail.html' %} +{% load helpers %} + +{% block content_left_page %} +
+
+ Config Plan Details +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Device{{ object.device }}
Date Created{{ object.created }}
Plan Type{{ object.plan_type | title }}
Features + {% if object.feature.exists %} +
    + {% for feature in object.feature.all %} +
  • {{ feature }}
  • + {% endfor %} +
+ {% else %} + {{ None | placeholder }} + {% endif %} +
Change Control ID{{ object.change_control_id | placeholder }}
Change Control URL{{ object.change_control_url|placeholder }}
Job Result{{ object.job_result|placeholder }}
Status + {{ object.get_status_display }} +
Config Set +
{{ object.config_set }}
+ + + +
+
+{% endblock %} \ No newline at end of file diff --git a/nautobot_golden_config/tests/conftest.py b/nautobot_golden_config/tests/conftest.py index 195ef3b0..657053e7 100644 --- a/nautobot_golden_config/tests/conftest.py +++ b/nautobot_golden_config/tests/conftest.py @@ -1,14 +1,21 @@ """Params for testing.""" +from datetime import datetime +import uuid +from django.contrib.auth import get_user_model from django.contrib.contenttypes.models import ContentType from django.utils.text import slugify from nautobot.dcim.models import Device, DeviceRole, DeviceType, Manufacturer, Platform, Rack, RackGroup, Region, Site from nautobot.extras.datasources.registry import get_datasource_contents -from nautobot.extras.models import GitRepository, GraphQLQuery, Status, Tag +from nautobot.extras.models import GitRepository, GraphQLQuery, Status, Tag, JobResult from nautobot.tenancy.models import Tenant, TenantGroup +import pytz from nautobot_golden_config.choices import ComplianceRuleConfigTypeChoice from nautobot_golden_config.models import ComplianceFeature, ComplianceRule, ConfigCompliance +User = get_user_model() + + def create_device_data(): """Creates a Device and associated data.""" manufacturers = ( @@ -171,7 +178,7 @@ def create_orphan_device(name="orphan"): return device -def create_feature_rule_json(device, feature="foo", rule="json"): +def create_feature_rule_json(device, feature="foo1", rule="json"): """Creates a Feature/Rule Mapping and Returns the rule.""" feature_obj, _ = ComplianceFeature.objects.get_or_create(slug=feature, name=feature) rule = ComplianceRule( @@ -184,6 +191,47 @@ def create_feature_rule_json(device, feature="foo", rule="json"): return rule +def create_feature_rule_json_with_remediation(device, feature="foo2", rule="json"): + """Creates a Feature/Rule Mapping with remediation enabled and Returns the rule.""" + feature_obj, _ = ComplianceFeature.objects.get_or_create(slug=feature, name=feature) + rule = ComplianceRule( + feature=feature_obj, + platform=device.platform, + config_type=ComplianceRuleConfigTypeChoice.TYPE_JSON, + config_ordered=False, + config_remediation=True, + ) + rule.save() + return rule + + +def create_feature_rule_cli_with_remediation(device, feature="foo3", rule="cli"): + """Creates a Feature/Rule Mapping with remediation enabled and Returns the rule.""" + feature_obj, _ = ComplianceFeature.objects.get_or_create(slug=feature, name=feature) + rule = ComplianceRule( + feature=feature_obj, + platform=device.platform, + config_type=ComplianceRuleConfigTypeChoice.TYPE_CLI, + config_ordered=False, + config_remediation=True, + ) + rule.save() + return rule + + +def create_feature_rule_cli(device, feature="foo_cli"): + """Creates a Feature/Rule Mapping and Returns the rule.""" + feature_obj, _ = ComplianceFeature.objects.get_or_create(slug=feature, name=feature) + rule, _ = ComplianceRule.objects.get_or_create( + feature=feature_obj, + platform=device.platform, + config_type=ComplianceRuleConfigTypeChoice.TYPE_CLI, + config_ordered=False, + ) + rule.save() + return rule + + def create_config_compliance(device, compliance_rule=None, actual=None, intended=None): """Creates a ConfigCompliance to be used with tests.""" config_compliance = ConfigCompliance.objects.create( @@ -403,3 +451,19 @@ def create_saved_queries() -> None: query=query, ) saved_query_5.save() + + +def create_job_result() -> None: + """Create a JobResult and return the object.""" + obj_type = ContentType.objects.get(app_label="extras", model="job") + user, _ = User.objects.get_or_create(username="testuser") + result = JobResult.objects.create( + name="Test-Job-Result", + obj_type=obj_type, + user=user, + job_id=uuid.uuid4(), + ) + result.status = "completed" + result.completed = datetime.now(pytz.UTC) + result.validated_save() + return result diff --git a/nautobot_golden_config/tests/test_filters.py b/nautobot_golden_config/tests/test_filters.py index 28aa4a08..95fec53e 100644 --- a/nautobot_golden_config/tests/test_filters.py +++ b/nautobot_golden_config/tests/test_filters.py @@ -4,9 +4,11 @@ from django.test import TestCase from nautobot.dcim.models import Device, Platform +from nautobot.extras.models import Status, Tag +from nautobot.utilities.testing import FilterTestCases from nautobot_golden_config import filters, models -from .conftest import create_feature_rule_json, create_device_data +from .conftest import create_feature_rule_json, create_device_data, create_feature_rule_cli, create_job_result class ConfigComplianceModelTestCase(TestCase): @@ -299,3 +301,173 @@ def test_search(self): """Test filtering by Q search value.""" params = {"q": self.obj1.name[-1:]} self.assertEqual(self.filterset(params, self.queryset).qs.count(), 1) + + +# pylint: disable=too-many-ancestors +# pylint: disable=too-many-instance-attributes +class ConfigPlanFilterTestCase(FilterTestCases.FilterTestCase): + """Test filtering operations for ConfigPlan Model.""" + + queryset = models.ConfigPlan.objects.all() + filterset = filters.ConfigPlanFilterSet + + def setUp(self): + """Setup Object.""" + create_device_data() + self.device1 = Device.objects.get(name="Device 1") + self.device2 = Device.objects.get(name="Device 2") + self.rule1 = create_feature_rule_cli(self.device1, feature="Feature 1") + self.feature1 = self.rule1.feature + self.rule2 = create_feature_rule_cli(self.device2, feature="Feature 2") + self.feature2 = self.rule2.feature + self.rule3 = create_feature_rule_cli(self.device1, feature="Feature 3") + self.feature3 = self.rule3.feature + self.status1 = Status.objects.get(name="Not Approved") + self.status2 = Status.objects.get(name="Approved") + self.tag1, _ = Tag.objects.get_or_create(name="Tag 1") + self.tag2, _ = Tag.objects.get_or_create(name="Tag 2") + self.job_result1 = create_job_result() + self.job_result2 = create_job_result() + self.config_plan1 = models.ConfigPlan.objects.create( + device=self.device1, + plan_type="intended", + created="2020-01-01", + config_set="intended test", + change_control_id="12345", + status=self.status2, + job_result_id=self.job_result1.id, + ) + self.config_plan1.tags.add(self.tag1) + self.config_plan1.feature.add(self.feature1) + self.config_plan1.validated_save() + self.config_plan2 = models.ConfigPlan.objects.create( + device=self.device1, + plan_type="missing", + created="2020-01-02", + config_set="missing test", + change_control_id="23456", + status=self.status1, + job_result_id=self.job_result1.id, + ) + self.config_plan2.tags.add(self.tag2) + self.config_plan2.feature.add(self.feature2) + self.config_plan2.validated_save() + self.config_plan3 = models.ConfigPlan.objects.create( + device=self.device2, + plan_type="remediation", + created="2020-01-03", + config_set="remediation test", + change_control_id="34567", + status=self.status2, + job_result_id=self.job_result2.id, + ) + self.config_plan3.tags.add(self.tag2) + self.config_plan3.feature.set([self.feature1, self.feature3]) + self.config_plan3.validated_save() + self.config_plan4 = models.ConfigPlan.objects.create( + device=self.device2, + plan_type="manual", + created="2020-01-04", + config_set="manual test", + change_control_id="45678", + status=self.status1, + job_result_id=self.job_result1.id, + ) + self.config_plan4.tags.add(self.tag1) + self.config_plan4.validated_save() + + def test_full(self): + """Test without filtering to ensure all have been added.""" + self.assertEqual(self.queryset.count(), 4) + + def test_search_device_name(self): + """Test filtering by Q search value.""" + params = {"q": "Device 1"} + self.assertEqual(self.filterset(params, self.queryset).qs.count(), 2) + + def test_search_change_control_id(self): + """Test filtering by Q search value.""" + params = {"q": "345"} + self.assertEqual(self.filterset(params, self.queryset).qs.count(), 3) + + def test_filter_device_id(self): + """Test filtering by Device ID.""" + params = {"device_id": [self.device1.pk]} + filterset = self.filterset(params, self.queryset) + self.assertEqual(filterset.qs.count(), 2) + self.assertQuerysetEqualAndNotEmpty(filterset.qs, self.queryset.filter(device=self.device1).distinct()) + + def test_filter_device(self): + """Test filtering by Device.""" + params = {"device": [self.device1.name]} + filterset = self.filterset(params, self.queryset) + self.assertEqual(filterset.qs.count(), 2) + self.assertQuerysetEqualAndNotEmpty( + filterset.qs, self.queryset.filter(device__name=self.device1.name).distinct() + ) + + def test_filter_feature_id(self): + """Test filtering by Feature ID.""" + params = {"feature_id": [self.feature1.pk]} + filterset = self.filterset(params, self.queryset) + self.assertEqual(filterset.qs.count(), 2) + self.assertQuerysetEqualAndNotEmpty(filterset.qs, self.queryset.filter(feature=self.feature1).distinct()) + + def test_filter_feature(self): + """Test filtering by Feature.""" + params = {"feature": [self.feature1.name]} + filterset = self.filterset(params, self.queryset) + self.assertEqual(filterset.qs.count(), 2) + self.assertQuerysetEqualAndNotEmpty( + filterset.qs, self.queryset.filter(feature__name=self.feature1.name).distinct() + ) + + def test_filter_change_control_id(self): + """Test filtering by Change Control ID.""" + params = {"change_control_id": self.config_plan1.change_control_id} + filterset = self.filterset(params, self.queryset) + self.assertEqual(filterset.qs.count(), 1) + self.assertQuerysetEqualAndNotEmpty( + filterset.qs, self.queryset.filter(change_control_id=self.config_plan1.change_control_id).distinct() + ) + + def test_filter_status_id(self): + """Test filtering by Status ID.""" + params = {"status_id": [self.status1.pk]} + filterset = self.filterset(params, self.queryset) + self.assertEqual(filterset.qs.count(), 2) + self.assertQuerysetEqualAndNotEmpty(filterset.qs, self.queryset.filter(status=self.status1).distinct()) + + def test_filter_status(self): + """Test filtering by Status.""" + params = {"status": [self.status1.name]} + filterset = self.filterset(params, self.queryset) + self.assertEqual(filterset.qs.count(), 2) + self.assertQuerysetEqualAndNotEmpty( + filterset.qs, self.queryset.filter(status__name=self.status1.name).distinct() + ) + + def test_filter_plan_type(self): + """Test filtering by Plan Type.""" + params = {"plan_type": self.config_plan1.plan_type} + filterset = self.filterset(params, self.queryset) + self.assertEqual(filterset.qs.count(), 1) + self.assertQuerysetEqualAndNotEmpty( + filterset.qs, self.queryset.filter(plan_type=self.config_plan1.plan_type).distinct() + ) + + def test_filter_tag(self): + """Test filtering by Tag.""" + params = {"tag": [self.tag1.slug]} + filterset = self.filterset(params, self.queryset) + self.assertEqual(filterset.qs.count(), 2) + self.assertQuerysetEqualAndNotEmpty(filterset.qs, self.queryset.filter(tags__name=self.tag1.name).distinct()) + + def test_job_result_id(self): + """Test filtering by Job Result ID.""" + params = {"job_result_id": [self.job_result1.pk]} + filterset = self.filterset(params, self.queryset) + self.assertEqual(filterset.qs.count(), 3) + self.assertQuerysetEqualAndNotEmpty( + filterset.qs, self.queryset.filter(job_result_id=self.job_result1.id).distinct() + ) diff --git a/nautobot_golden_config/tests/test_models.py b/nautobot_golden_config/tests/test_models.py index 31a65c54..897f14db 100644 --- a/nautobot_golden_config/tests/test_models.py +++ b/nautobot_golden_config/tests/test_models.py @@ -5,11 +5,25 @@ from django.db.utils import IntegrityError from django.test import TestCase from nautobot.dcim.models import Platform -from nautobot.extras.models import DynamicGroup, GitRepository, GraphQLQuery -from nautobot_golden_config.models import ConfigCompliance, ConfigRemove, ConfigReplace, GoldenConfigSetting +from nautobot.extras.models import DynamicGroup, GitRepository, GraphQLQuery, Status +from nautobot_golden_config.choices import RemediationTypeChoice +from nautobot_golden_config.models import ( + ConfigCompliance, + ConfigPlan, + ConfigRemove, + ConfigReplace, + GoldenConfigSetting, + RemediationSetting, +) from nautobot_golden_config.tests.conftest import create_git_repos -from .conftest import create_config_compliance, create_device, create_feature_rule_json, create_saved_queries +from .conftest import ( + create_config_compliance, + create_device, + create_feature_rule_json, + create_saved_queries, + create_job_result, +) class ConfigComplianceModelTestCase(TestCase): @@ -133,9 +147,8 @@ def setUp(self): def test_absolute_url_success(self): """Verify that get_absolute_url() returns the expected URL.""" url_string = self.global_settings.get_absolute_url() - self.assertEqual( - url_string.rstrip("/"), f"/plugins/golden-config/golden-config-setting/{self.global_settings.pk}" - ) + # Changed from assertEqual to assertIn to account for trailing slash added in later versions. + self.assertIn(f"/plugins/golden-config/golden-config-setting/{self.global_settings.pk}", url_string) def test_good_graphql_query_invalid_starts_with(self): """Valid graphql query, however invalid in the usage with golden config plugin.""" @@ -277,3 +290,153 @@ def test_edit_line_replace_entry(self): self.assertEqual(self.line_replace.description, new_desc) self.assertEqual(self.line_replace.regex, new_regex) self.assertEqual(self.line_replace.replace, "") + + +class ConfigPlanModelTestCase(TestCase): + """Test ConfigPlan Model.""" + + def setUp(self): + """Setup Object.""" + self.device = create_device() + self.rule = create_feature_rule_json(self.device) + self.feature = self.rule.feature + self.status = Status.objects.get(slug="not-approved") + self.job_result = create_job_result() + + def test_create_config_plan_intended(self): + """Test Create Object.""" + config_plan = ConfigPlan.objects.create( + device=self.device, + plan_type="intended", + config_set="test intended config", + change_control_id="1234", + change_control_url="https://1234.example.com/", + status=self.status, + job_result_id=self.job_result.id, + ) + config_plan.feature.add(self.feature) + config_plan.validated_save() + self.assertEqual(config_plan.device, self.device) + self.assertEqual(config_plan.feature.first(), self.feature) + self.assertEqual(config_plan.config_set, "test intended config") + self.assertEqual(config_plan.change_control_id, "1234") + self.assertEqual(config_plan.status, self.status) + self.assertEqual(config_plan.plan_type, "intended") + + def test_create_config_plan_intended_multiple_features(self): + """Test Create Object.""" + rule2 = create_feature_rule_json(self.device, feature="feature2") + config_plan = ConfigPlan.objects.create( + device=self.device, + plan_type="intended", + config_set="test intended config", + change_control_id="1234", + change_control_url="https://1234.example.com/", + status=self.status, + job_result_id=self.job_result.id, + ) + config_plan.feature.set([self.feature, rule2.feature]) + config_plan.validated_save() + self.assertEqual(config_plan.device, self.device) + self.assertIn(self.feature.id, config_plan.feature.all().values_list("id", flat=True)) + self.assertIn(rule2.feature.id, config_plan.feature.all().values_list("id", flat=True)) + self.assertEqual(config_plan.config_set, "test intended config") + self.assertEqual(config_plan.change_control_id, "1234") + self.assertEqual(config_plan.status, self.status) + self.assertEqual(config_plan.plan_type, "intended") + + def test_create_config_plan_missing(self): + """Test Create Object.""" + config_plan = ConfigPlan.objects.create( + device=self.device, + plan_type="missing", + config_set="test missing config", + change_control_id="2345", + change_control_url="https://2345.example.com/", + status=self.status, + job_result_id=self.job_result.id, + ) + config_plan.feature.add(self.feature) + config_plan.validated_save() + self.assertEqual(config_plan.device, self.device) + self.assertEqual(config_plan.feature.first(), self.feature) + self.assertEqual(config_plan.config_set, "test missing config") + self.assertEqual(config_plan.change_control_id, "2345") + self.assertEqual(config_plan.status, self.status) + self.assertEqual(config_plan.plan_type, "missing") + + def test_create_config_plan_remediation(self): + """Test Create Object.""" + config_plan = ConfigPlan.objects.create( + device=self.device, + plan_type="remediation", + config_set="test remediation config", + change_control_id="3456", + change_control_url="https://3456.example.com/", + status=self.status, + job_result_id=self.job_result.id, + ) + config_plan.feature.add(self.feature) + config_plan.validated_save() + self.assertEqual(config_plan.device, self.device) + self.assertEqual(config_plan.feature.first(), self.feature) + self.assertEqual(config_plan.config_set, "test remediation config") + self.assertEqual(config_plan.change_control_id, "3456") + self.assertEqual(config_plan.status, self.status) + self.assertEqual(config_plan.plan_type, "remediation") + + def test_create_config_plan_manual(self): + """Test Create Object.""" + config_plan = ConfigPlan.objects.create( + device=self.device, + plan_type="manual", + config_set="test manual config", + job_result_id=self.job_result.id, + ) + self.assertEqual(config_plan.device, self.device) + self.assertEqual(config_plan.config_set, "test manual config") + self.assertEqual(config_plan.plan_type, "manual") + + +class RemediationSettingModelTestCase(TestCase): + """Test Remediation Setting Model.""" + + def setUp(self): + """Setup Object.""" + self.platform = Platform.objects.create(slug="cisco_ios") + self.remediation_options = { + "optionA": "someValue", + "optionB": "someotherValue", + "optionC": "anotherValue", + } + + def test_create_remediation_setting_hier(self): + """Test Create Hier Remediation Setting.""" + remediation_setting = RemediationSetting.objects.create( + platform=self.platform, + remediation_type=RemediationTypeChoice.TYPE_HIERCONFIG, + remediation_options=self.remediation_options, + ) + self.assertEqual(remediation_setting.platform, self.platform) + self.assertEqual(remediation_setting.remediation_type, RemediationTypeChoice.TYPE_HIERCONFIG) + self.assertEqual(remediation_setting.remediation_options, self.remediation_options) + + def test_create_remediation_setting_custom(self): + """Test Create Custom Remediation Setting.""" + remediation_setting = RemediationSetting.objects.create( + platform=self.platform, + remediation_type=RemediationTypeChoice.TYPE_CUSTOM, + remediation_options=self.remediation_options, + ) + self.assertEqual(remediation_setting.platform, self.platform) + self.assertEqual(remediation_setting.remediation_type, RemediationTypeChoice.TYPE_CUSTOM) + self.assertEqual(remediation_setting.remediation_options, self.remediation_options) + + def test_create_remediation_setting_default_values(self): + """Test Create Default Remediation Setting""" + remediation_setting = RemediationSetting.objects.create( + platform=self.platform, + ) + self.assertEqual(remediation_setting.platform, self.platform) + self.assertEqual(remediation_setting.remediation_type, RemediationTypeChoice.TYPE_HIERCONFIG) + self.assertEqual(remediation_setting.remediation_options, {}) diff --git a/nautobot_golden_config/tests/test_utilities/test_config_plan.py b/nautobot_golden_config/tests/test_utilities/test_config_plan.py new file mode 100644 index 00000000..0ebdcd9c --- /dev/null +++ b/nautobot_golden_config/tests/test_utilities/test_config_plan.py @@ -0,0 +1,61 @@ +"""Unit tests for the nautobot_golden_config utilities config_plan.""" +import unittest +from unittest.mock import Mock, patch + +from nautobot_golden_config.utilities.config_plan import ( + generate_config_set_from_compliance_feature, + generate_config_set_from_manual, + config_plan_default_status, +) +from nautobot_golden_config.tests.conftest import create_device, create_feature_rule_cli, create_config_compliance + + +class ConfigPlanTest(unittest.TestCase): + """Test Config Plan Utility.""" + + def setUp(self): + """Setup test.""" + mock_feature_compliance = Mock( + return_value={ + "compliant": False, + "ordered_compliant": False, + "missing": "foo missing", + "extra": "", + } + ) + self.patcher = patch("nautobot_golden_config.models.feature_compliance", mock_feature_compliance) + self.patcher.start() + self.addCleanup(self.patcher.stop) + + self.device = create_device(name="config_plan_utility_test") + self.feature_rule = create_feature_rule_cli(self.device) + self.feature_rule.match_config = "foo" + self.feature_rule.save() + self.actual = "foo actual" + self.missing = "foo missing" + self.intended = "foo actual\nfoo missing" + self.config_compliance = create_config_compliance(self.device, self.feature_rule, self.actual, self.intended) + + def test_generate_config_set_from_compliance_feature_intended(self): + """Test generate_config_set_from_compliance_feature.""" + plan_type = "intended" + config_set = generate_config_set_from_compliance_feature(self.device, plan_type, self.feature_rule.feature) + self.assertEqual(config_set, self.intended) + + def test_generate_config_set_from_compliance_feature_missing(self): + """Test generate_config_set_from_compliance_feature.""" + plan_type = "missing" + config_set = generate_config_set_from_compliance_feature(self.device, plan_type, self.feature_rule.feature) + self.assertEqual(config_set, self.missing) + + def test_generate_config_set_from_manual(self): + """Test generate_config_set_from_manual.""" + commands = "hostname {{ obj.name }}" + config_set = generate_config_set_from_manual(self.device, commands) + self.assertEqual(config_set, "hostname config_plan_utility_test") + + def test_config_plan_default_status(self): + """Test config_plan_default_status.""" + status = config_plan_default_status() + self.assertEqual(status.name, "Not Approved") + self.assertEqual(status.slug, "not-approved") diff --git a/nautobot_golden_config/urls.py b/nautobot_golden_config/urls.py index 0fe57814..684a1784 100644 --- a/nautobot_golden_config/urls.py +++ b/nautobot_golden_config/urls.py @@ -12,6 +12,8 @@ router.register("golden-config-setting", views.GoldenConfigSettingUIViewSet) router.register("config-remove", views.ConfigRemoveUIViewSet) router.register("config-replace", views.ConfigReplaceUIViewSet) +router.register("remediation-setting", views.RemediationSettingUIViewSet) +router.register("config-plan", views.ConfigPlanUIViewSet) urlpatterns = [ @@ -41,4 +43,5 @@ views.ComplianceDeviceFilteredReport.as_view(), name="configcompliance_filter_report", ), + path("config-plan/bulk_deploy/", views.ConfigPlanBulkDeploy.as_view(), name="configplan_bulk_deploy"), ] + router.urls diff --git a/nautobot_golden_config/utilities/config_plan.py b/nautobot_golden_config/utilities/config_plan.py new file mode 100644 index 00000000..49b23445 --- /dev/null +++ b/nautobot_golden_config/utilities/config_plan.py @@ -0,0 +1,45 @@ +"""Functions to support config plan.""" +from nautobot.dcim.models import Device +from nautobot.extras.models import Status +from nautobot.utilities.utils import render_jinja2 + +from nautobot_golden_config.models import ComplianceFeature + + +# TODO: Make the default Status configurable +def config_plan_default_status(): + """Return the default status for config plan.""" + return Status.objects.filter( + content_types__model="configplan", + slug="not-approved", + ).first() + + +def generate_config_set_from_compliance_feature(device: Device, plan_type: str, feature: ComplianceFeature): + """Generate config set from config compliance. + + Args: + device (Device): Device to generate config set for. + plan_type (str): The ConfigCompliance attribute to pull from. + feature (ComplianceFeature): The feature to generate config set for. + """ + # Grab the config compliance for the feature + feature_compliance = device.configcompliance_set.filter(rule__feature=feature).first() + # If the config compliance exists and has the plan type generated, return the config set + if feature_compliance and hasattr(feature_compliance, plan_type) and getattr(feature_compliance, plan_type): + return getattr(feature_compliance, plan_type) + return "" + + +def generate_config_set_from_manual(device: Device, commands: str, context: dict = None): + """Generate config set from manual config set. + + Args: + device (Device): Device to generate config set for. + commands (str): The commands for the generated config set. + context (dict, optional): The context to render the commands with. + """ + if context is None: + context = {} + context.update({"obj": device}) + return render_jinja2(template_code=commands, context=context) From 9e15d97411741e194b597ef2751b44490788def9 Mon Sep 17 00:00:00 2001 From: Matt Miller Date: Tue, 12 Sep 2023 23:32:18 -0400 Subject: [PATCH 5/7] updating form to include tags (#578) --- nautobot_golden_config/forms.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/nautobot_golden_config/forms.py b/nautobot_golden_config/forms.py index ca80d8b9..67e15ce4 100644 --- a/nautobot_golden_config/forms.py +++ b/nautobot_golden_config/forms.py @@ -124,6 +124,7 @@ class Meta: "match_config", "custom_compliance", "config_remediation", + "tags", ) @@ -183,7 +184,7 @@ class Meta: """Boilerplate form Meta data for compliance feature.""" model = models.ComplianceFeature - fields = ("name", "slug", "description") + fields = ("name", "slug", "description", "tags") class ComplianceFeatureFilterForm(NautobotFilterForm): @@ -235,6 +236,7 @@ class Meta: "name", "description", "regex", + "tags", ) @@ -290,6 +292,7 @@ class Meta: "description", "regex", "replace", + "tags", ) From 838a01c0601f9cf760ff33c9d4f7dfe7c5f5878d Mon Sep 17 00:00:00 2001 From: Ken Celenza Date: Fri, 15 Sep 2023 16:52:42 -0400 Subject: [PATCH 6/7] Updates for remediation, deploy, & plan, as well as remove jquery, fix filter forms/ fields, and add warning messages for missing jobs (#577) Co-authored-by: Joe Wesch <10467633+joewesch@users.noreply.github.com> Co-authored-by: Joe Wesch <10467633+joewesch@users.noreply.github.com> Co-authored-by: Jeff Kala <48843785+jeffkala@users.noreply.github.com> Co-authored-by: Joe Wesch <10467633+joewesch@users.noreply.github.com> Co-authored-by: Jeff Kala Co-authored-by: mzb --- .flake8 | 2 +- development/development.env | 2 + development/nautobot_config.py | 10 +- docs/admin/admin_install.md | 8 +- docs/dev/dev_adr.md | 14 + docs/user/app_getting_started.md | 50 + .../troubleshooting/troubleshoot_general.md | 4 + nautobot_golden_config/__init__.py | 2 + nautobot_golden_config/filter_extensions.py | 23 - nautobot_golden_config/filters.py | 31 +- nautobot_golden_config/forms.py | 77 +- nautobot_golden_config/jobs.py | 125 +- .../migrations/0002_custom_data.py | 2 +- .../0015_convert_sotagg_queries_part2.py | 2 +- .../0016_convert_sotagg_queries_part3.py | 4 +- .../0017_convert_sotagg_queries_part4.py | 3 +- .../0020_convert_dynamicgroup_part_2.py | 3 +- .../migrations/0025_remediation_settings.py | 5 +- .../migrations/0026_configplan.py | 5 +- .../migrations/0027_auto_20230915_1657.py | 40 + nautobot_golden_config/models.py | 26 +- nautobot_golden_config/navigation.py | 63 +- .../nornir_plays/config_compliance.py | 18 +- .../nornir_plays/config_deployment.py | 65 +- .../nornir_plays/config_intended.py | 25 +- nautobot_golden_config/signals.py | 30 +- nautobot_golden_config/static/run_job.js | 332 +- nautobot_golden_config/tables.py | 35 +- .../configcompliance_details.html | 1 - .../configplan_create.html | 70 +- .../configplan_list.html | 73 +- .../configplan_retrieve.html | 36 +- .../configplan_update.html | 2 +- .../goldenconfig_list.html | 3 +- .../job_result_modal.html | 4 +- nautobot_golden_config/tests/test_api.py | 3 +- nautobot_golden_config/tests/test_filters.py | 17 +- nautobot_golden_config/tests/test_models.py | 13 +- nautobot_golden_config/tests/test_views.py | 20 +- nautobot_golden_config/utilities/constant.py | 2 + nautobot_golden_config/utilities/helper.py | 28 + .../utilities/management.py | 7 +- nautobot_golden_config/views.py | 158 +- poetry.lock | 4694 +++++++++-------- pyproject.toml | 7 +- 45 files changed, 3299 insertions(+), 2845 deletions(-) delete mode 100644 nautobot_golden_config/filter_extensions.py create mode 100644 nautobot_golden_config/migrations/0027_auto_20230915_1657.py diff --git a/.flake8 b/.flake8 index aaa63b60..e3ba27d5 100644 --- a/.flake8 +++ b/.flake8 @@ -1,4 +1,4 @@ [flake8] # E501: Line length is enforced by Black, so flake8 doesn't need to check it # W503: Black disagrees with this rule, as does PEP 8; Black wins -ignore = E501, W503, F811, F401, F405, E203 +ignore = E501, W503 diff --git a/development/development.env b/development/development.env index 080a7c71..b6023644 100644 --- a/development/development.env +++ b/development/development.env @@ -48,4 +48,6 @@ ENABLE_INTENDED=True ENABLE_BACKUP=True ENABLE_SOTAGG=True ENABLE_POSTPROCESSING=True +ENABLE_PLAN=True +ENABLE_DEPLOY=True ALLOWED_OS=all diff --git a/development/nautobot_config.py b/development/nautobot_config.py index 8f5d1109..e30defc8 100644 --- a/development/nautobot_config.py +++ b/development/nautobot_config.py @@ -4,11 +4,9 @@ import sys from django.utils.module_loading import import_string - from nautobot.core.settings import * # noqa: F403 from nautobot.core.settings_funcs import is_truthy, parse_redis_connection - # # Misc. settings # @@ -172,8 +170,10 @@ "enable_compliance": is_truthy(os.environ.get("ENABLE_COMPLIANCE", True)), "enable_intended": is_truthy(os.environ.get("ENABLE_INTENDED", True)), "enable_sotagg": is_truthy(os.environ.get("ENABLE_SOTAGG", True)), - "sot_agg_transposer": os.environ.get("SOT_AGG_TRANSPOSER"), "enable_postprocessing": is_truthy(os.environ.get("ENABLE_POSTPROCESSING", True)), + "enable_plan": is_truthy(os.environ.get("ENABLE_PLAN", True)), + "enable_deploy": is_truthy(os.environ.get("ENABLE_DEPLOY", True)), + "sot_agg_transposer": os.environ.get("SOT_AGG_TRANSPOSER"), "postprocessing_callables": os.environ.get("POSTPROCESSING_CALLABLES", []), "postprocessing_subscribed": os.environ.get("POSTPROCESSING_SUBSCRIBED", []), "jinja_env": { @@ -198,7 +198,7 @@ # Modify django_jinja Environment for test cases django_jinja_config = None -for template in TEMPLATES: +for template in TEMPLATES: # noqa: F405 if template["BACKEND"].startswith("django_jinja"): django_jinja_config = template @@ -211,4 +211,4 @@ jinja_options["undefined"] = "jinja2.StrictUndefined" # Import filter function to have it register filter with django_jinja -from nautobot_golden_config.tests import jinja_filters # noqa: E402 +from nautobot_golden_config.tests import jinja_filters # noqa: E402, F401 diff --git a/docs/admin/admin_install.md b/docs/admin/admin_install.md index b742f8f5..00a88c3d 100644 --- a/docs/admin/admin_install.md +++ b/docs/admin/admin_install.md @@ -54,8 +54,10 @@ PLUGINS_CONFIG = { "enable_compliance": True, "enable_intended": True, "enable_sotagg": True, - "sot_agg_transposer": None, + "enable_plan": True, + "enable_deploy": True, "enable_postprocessing": False, + "sot_agg_transposer": None, "postprocessing_callables": [], "postprocessing_subscribed": [], "platform_slug_map": None, @@ -90,7 +92,7 @@ sudo systemctl restart nautobot nautobot-worker nautobot-scheduler The plugin behavior can be controlled with the following list of settings. !!! note - The `enable_backup`, `enable_compliance`, `enable_intended`, `enable_sotagg` and `enable_postprocessing` will toggle inclusion of the entire component. + The `enable_backup`, `enable_compliance`, `enable_intended`, `enable_sotagg`, `enable_plan`, `enable_deploy`, and `enable_postprocessing` will toggle inclusion of the entire component. | Key | Example | Default | Description | | ------------------------- | ----------------------------- | ------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | @@ -98,6 +100,8 @@ The plugin behavior can be controlled with the following list of settings. | enable_compliance | True | True | A boolean to represent whether or not to run the compliance process within the plugin. | | enable_intended | True | True | A boolean to represent whether or not to generate intended configurations within the plugin. | | enable_sotagg | True | True | A boolean to represent whether or not to provide a GraphQL query per device to allow the intended configuration to provide data variables to the plugin. | +| enable_plan | True | True | A boolean to represent whether or not to allow the config plan job to run. | +| enable_deploy | True | True | A boolean to represent whether or not to be able to deploy configs to network devices. | | enable_postprocessing | True | False | A boolean to represent whether or not to generate intended configurations to push, with extra processing such as secrets rendering. | | postprocessing_callables | ['mypackage.myfunction'] | [] | A list of function paths, in dotted format, that are appended to the available methods for post-processing the intended configuration, for instance, the `render_secrets`. | | postprocessing_subscribed | ['mypackage.myfunction'] | [] | A list of function paths, that should exist as postprocessing_callables, that defines the order of application of during the post-processing process. | diff --git a/docs/dev/dev_adr.md b/docs/dev/dev_adr.md index 88f6f593..a8591a0b 100644 --- a/docs/dev/dev_adr.md +++ b/docs/dev/dev_adr.md @@ -143,3 +143,17 @@ This function performs an additional permission validation, to check if the requ Over time device(s) platform may change; whether this is a device refresh or full replacement. A Django `post_save` signal is used on the `ConfigCompliance` model and provides a reliable and efficient way to manage configuration compliance objects. This signal deletes any `ConfigCompliance` objects that don't match the current platform. This decision was made to avoid compliance reporting inconsistencies that can arise when outdated or irrelevant objects remain in the database which were generated with the previous platform. This has a computational impact when updating a Device object's platform. This is similar to the computational impact of an SQL `cascade` option on a delete. This is largely unavoidable and should be limited in impact, such that it will only be the removal of the number of `ConfigCompliance` objects, which is no bigger than the number of `Config Features`, which is generally intended to be a small amount. + +### Configuration Deployment and Remediation + +Configuration remediation and deployments of any of the attributes based on the configuration compliance object are calculated based on the last run of the `ConfigCompliance` job. After a configuration deployment to fix any of these attributes (remediation, intended, missing) a new `ConfigCompliance` job must be run before all the compliance results will be updated. + + +### Manual ConfigPlans + +When generating a manual `ConfigPlan` the Jinja2 template render has access to Django ORM methods like `.all()`, this also means that methods like `.delete()` can be called, the `render_template` functionality used by Golden Config inherits a Jinja2 Sandbox exception that will block unsafe calls. Golden Config will simply re-raise the exception `jinja2.exceptions.SecurityError: > is not safely callable`. + + +### Hidden Jobs and JobButtons + +The configuration deployment and plans features of Golden Config come packaged with Jobs and JobButtons to execute the functionality. In order to to provide a repeatable and consistent behavior these Jobs and JobButtons are designed to only be executed via specialized views. They're not intended to be executed manually from the Jobs/JobButtons menus. diff --git a/docs/user/app_getting_started.md b/docs/user/app_getting_started.md index 66f6718d..9ee193e9 100644 --- a/docs/user/app_getting_started.md +++ b/docs/user/app_getting_started.md @@ -4,6 +4,9 @@ - [Backup Configuration](#backup-configuration) - [Intended Configuration](#intended-configuration) - [Compliance](#compliance) +- [Config Remediation](#config-remediation) +- [Config Plans](#config-plans) +- [Config Deploy](#config-deploy) - [Load Properties from Git](#load-properties-from-git) # Backup Configuration @@ -122,6 +125,53 @@ Compliance requires Backups and Intended Configurations in order to be executed. > For in-depth details see [Navigating Compliance](./app_feature_compliance.md) +# Config Remediation + +Follow the steps below to get up and running for the configuration remediation element of the plugin. + +1. Navigate to `Golden Config -> Compliance Rules`. +2. Select the rules in which you'd like to enable remediation on. +3. Edit the `Compliance Rule` and turn on the `Remediation` toggle button. +4. Run the `Compliance` job again which will generate the initial remediation plan for the feature. +5. Navigate to `Golden Config -> Config Compliance`, select the device and notice a remediation section is not present for the compliance details for the feature. + +> For in-depth details see [Navigating Config Plans](./app_feature_remediation.md) + +# Config Plans + +Follow the steps below to get up and running for the configuration plans element of the plugin. + +1. Enable the feature in the `PLUGIN_SETTINGS`. The configuration should have `"enable_plan": True` set in the `PLUGINS_CONFIG` dictionary for `nautobot_golden_config`. +2. Follow the steps in [Compliance](#compliance). + - Compliance is necessary if ConfigPlans will be generated utilizing any of the attributes provided by a Compliance object. + - This step may be skipped if only `manual` ConfigPlans are going to be generated. +3. Create a ConfigPlan + + 1. Navigate to `Golden Config -> Config Plans` + 2. Click on `ADD` button. + 3. Fill out the plan details and plan filters. + - The options dynamically change in the form based on the `plan type` selected. + - If the `plan type` is Intended, Remediation, Missing. + - Select the Compliance Features to use to generate the plan. If none are selected all features will be in scope. + - If the `plan type` is Manual. + - Create a manual plan to accomplish the goal. Note: Access to `obj` is available to dynamically populate fields via Jinja2 syntax. + 4. Click `Generate` + +> For in-depth details see [Navigating Config Plans](./app_feature_config_plans.md) + +# Config Deploy + +Follow the steps below to get up and running for the configuration deployment element of the plugin. + +1. Enable the feature in the `PLUGIN_SETTINGS`. The configuration should have `"enable_deploy": True` set in the `PLUGINS_CONFIG` dictionary for `nautobot_golden_config`. +2. Follow the steps in [Config Plans](#config-plans). +3. Navigate to the specific ConfigPlan to deploy, or multi-select them from the ConfigPlan list view. + - If deploying from a specific ConfigPlan object. Click `Deploy` button and accept the warnings. + - If deploying from the ConfigPlan list view. Click `Deploy Selected` button and accept the warnings. +4. Interpret the results from the popup modal and navigate to the job result as needed for more details. + +> Config Deployments utilize the dispatchers from nornir-nautobot just like the other functionality of Golden Config. See [Troubleshooting Dispatchers](./troubleshooting/troubleshoot_dispatchers.md) for more details. + # Load Properties from Git Golden Config properties include: Compliance Features, Compliance Rules, Config Removals, and Config Replacements. They can be created via the UI, API, or alternatively you can load these properties from a Git repository, defined in YAML files following the this directory structure (you can skip any of them if not apply): diff --git a/docs/user/troubleshooting/troubleshoot_general.md b/docs/user/troubleshooting/troubleshoot_general.md index 934921d5..1aefdd46 100755 --- a/docs/user/troubleshooting/troubleshoot_general.md +++ b/docs/user/troubleshooting/troubleshoot_general.md @@ -64,3 +64,7 @@ If none of these troubleshooting steps helped identify the problem please visit - [Troubleshoot Credentials](./troubleshoot_credentials.md) - [Troubleshoot Dispatchers](./troubleshoot_dispatchers.md) + +### Detailed Diagrams + +Golden config flow diagrams are available on the repositories [wiki](https://github.com/nautobot/nautobot-plugin-golden-config/wiki#diagrams). diff --git a/nautobot_golden_config/__init__.py b/nautobot_golden_config/__init__.py index c2beb32e..bb76e8d7 100644 --- a/nautobot_golden_config/__init__.py +++ b/nautobot_golden_config/__init__.py @@ -29,6 +29,8 @@ class GoldenConfig(PluginConfig): "enable_intended": True, "enable_sotagg": True, "enable_postprocessing": False, + "enable_plan": True, + "enable_deploy": True, "postprocessing_callables": [], "postprocessing_subscribed": [], "per_feature_bar_width": 0.3, diff --git a/nautobot_golden_config/filter_extensions.py b/nautobot_golden_config/filter_extensions.py deleted file mode 100644 index 6eeb24fa..00000000 --- a/nautobot_golden_config/filter_extensions.py +++ /dev/null @@ -1,23 +0,0 @@ -"""Custom filter to extend base API for filterform use case.""" -import django_filters -from nautobot.apps.filters import FilterExtension - - -def config_plan_null_search(queryset, name, value): # pylint: disable=unused-argument - """Query to ensure config plans are not empty.""" - return queryset.filter(config_plan__isnull=False).distinct() - - -class JobResultFilterExtension(FilterExtension): - """Filter provided to be used in select2 query for only jobs that were used by ConfigPlan.""" - - model = "extras.jobresult" - - filterset_fields = { - "nautobot_golden_config_config_plan_null": django_filters.BooleanFilter( - label="Is FK to ConfigPlan Model", method=config_plan_null_search - ) - } - - -filter_extensions = [JobResultFilterExtension] diff --git a/nautobot_golden_config/filters.py b/nautobot_golden_config/filters.py index 8617d96c..f5316012 100644 --- a/nautobot_golden_config/filters.py +++ b/nautobot_golden_config/filters.py @@ -7,13 +7,8 @@ from nautobot.extras.filters import NautobotFilterSet, StatusFilter from nautobot.extras.models import JobResult, Status from nautobot.tenancy.models import Tenant, TenantGroup -from nautobot.utilities.filters import ( - BaseFilterSet, - MultiValueDateTimeFilter, - NameSlugSearchFilterSet, - TagFilter, - TreeNodeMultipleChoiceFilter, -) +from nautobot.utilities.filters import MultiValueDateTimeFilter, TagFilter, TreeNodeMultipleChoiceFilter + from nautobot_golden_config import models @@ -368,7 +363,7 @@ class Meta: fields = ["id", "name", "slug", "weight", "backup_repository", "intended_repository", "jinja_repository"] -class RemediationSettingFilterSet(BaseFilterSet, NameSlugSearchFilterSet): +class RemediationSettingFilterSet(NautobotFilterSet): """Inherits Base Class CustomFieldModelFilterSet.""" q = django_filters.CharFilter( @@ -385,12 +380,6 @@ class RemediationSettingFilterSet(BaseFilterSet, NameSlugSearchFilterSet): queryset=Platform.objects.all(), label="Platform ID", ) - remediation_type = django_filters.ModelMultipleChoiceFilter( - field_name="remediation_type", - queryset=models.RemediationSetting.objects.all(), - to_field_name="remediation_type", - label="Remediation Type", - ) def search(self, queryset, name, value): # pylint: disable=unused-argument """Perform the filtered search.""" @@ -403,10 +392,10 @@ class Meta: """Boilerplate filter Meta data for Remediation Setting.""" model = models.RemediationSetting - fields = ["id", "platform", "remediation_type"] + fields = ["id", "remediation_type"] -class ConfigPlanFilterSet(BaseFilterSet, NameSlugSearchFilterSet): +class ConfigPlanFilterSet(NautobotFilterSet): """Inherits Base Class BaseFilterSet.""" q = django_filters.CharFilter( @@ -435,9 +424,13 @@ class ConfigPlanFilterSet(BaseFilterSet, NameSlugSearchFilterSet): to_field_name="name", label="Feature Name", ) - job_result_id = django_filters.ModelMultipleChoiceFilter( + plan_result_id = django_filters.ModelMultipleChoiceFilter( + queryset=JobResult.objects.filter(config_plan__isnull=False).distinct(), + label="Plan JobResult ID", + ) + deploy_result_id = django_filters.ModelMultipleChoiceFilter( queryset=JobResult.objects.filter(config_plan__isnull=False).distinct(), - label="JobResult ID", + label="Deploy JobResult ID", ) change_control_id = django_filters.CharFilter( field_name="change_control_id", @@ -466,4 +459,4 @@ class Meta: """Boilerplate filter Meta data for Config Plan.""" model = models.ConfigPlan - fields = ["id", "device", "created", "plan_type", "feature", "change_control_id", "status"] + fields = ["id", "created", "change_control_id", "plan_type"] diff --git a/nautobot_golden_config/forms.py b/nautobot_golden_config/forms.py index 67e15ce4..b4463dde 100644 --- a/nautobot_golden_config/forms.py +++ b/nautobot_golden_config/forms.py @@ -11,6 +11,7 @@ from nautobot.extras.models import DynamicGroup, GitRepository, JobResult, Status, Tag from nautobot.tenancy.models import Tenant, TenantGroup from nautobot.utilities.forms import add_blank_choice, DatePicker, SlugField, TagFilterField + from nautobot_golden_config import models from nautobot_golden_config.choices import ComplianceRuleConfigTypeChoice, ConfigPlanTypeChoice, RemediationTypeChoice @@ -337,29 +338,14 @@ class Meta: class GoldenConfigSettingForm(NautobotModelForm): """Filter Form for GoldenConfigSettingForm instances.""" - slug = SlugField() dynamic_group = utilities_forms.DynamicModelChoiceField(queryset=DynamicGroup.objects.all(), required=False) class Meta: """Filter Form Meta Data for GoldenConfigSettingForm instances.""" model = models.GoldenConfigSetting - fields = ( - "name", - "slug", - "weight", - "description", - "backup_repository", - "backup_path_template", - "intended_repository", - "intended_path_template", - "jinja_repository", - "jinja_path_template", - "backup_test_connectivity", - "dynamic_group", - "sot_agg_query", - "tags", - ) + fields = "__all__" + exclude = ["_custom_field_data"] # pylint: disable=modelform-uses-exclude class GoldenConfigSettingFilterForm(NautobotFilterForm): @@ -415,11 +401,8 @@ class Meta: """Boilerplate form Meta data for Remediation Settings.""" model = models.RemediationSetting - fields = ( - "platform", - "remediation_type", - "remediation_options", - ) + fields = "__all__" + exclude = ["_custom_field_data"] # pylint: disable=modelform-uses-exclude class RemediationSettingFilterForm(NautobotFilterForm): @@ -431,7 +414,7 @@ class RemediationSettingFilterForm(NautobotFilterForm): queryset=Platform.objects.all(), required=False, display_field="name", to_field_name="name" ) remediation_type = forms.ChoiceField( - choices=add_blank_choice(RemediationTypeChoice), required=False, label="Remediation Type" + choices=add_blank_choice(RemediationTypeChoice), required=False, widget=forms.Select(), label="Remediation Type" ) @@ -465,10 +448,6 @@ class Meta: class ConfigPlanForm(NautobotModelForm): """Form for ConfigPlan instances.""" - plan_type = forms.ChoiceField(choices=add_blank_choice(ConfigPlanTypeChoice), required=True, label="Plan Type") - change_control_id = forms.CharField(required=False, label="Change Control ID") - change_control_url = forms.URLField(required=False, label="Change Control URL") - feature = utilities_forms.DynamicModelMultipleChoiceField( queryset=models.ComplianceFeature.objects.all(), display_field="name", @@ -483,7 +462,6 @@ class ConfigPlanForm(NautobotModelForm): "You can also reference the device object with obj.
" "For example: hostname {{ obj.name }} or ip address {{ obj.primary_ip4.host }}" ), - required=True, ) tenant_group = utilities_forms.DynamicModelMultipleChoiceField(queryset=TenantGroup.objects.all(), required=False) @@ -528,38 +506,18 @@ class Meta: """Boilerplate form Meta data for ConfigPlan.""" model = models.ConfigPlan - fields = ( - "plan_type", - "change_control_id", - "feature", - "commands", - "tenant", - # "location", Requires https://github.com/nautobot/nautobot-plugin-golden-config/issues/430 - "region", - "site", - "rack_group", - "rack", - "role", - "manufacturer", - "platform", - "device_type", - "device", - "tag", - "status", - ) + fields = "__all__" + exclude = ["_custom_field_data"] # pylint: disable=modelform-uses-exclude class ConfigPlanUpdateForm(NautobotModelForm): """Form for ConfigPlan instances.""" - change_control_id = forms.CharField(required=False, label="Change Control ID") - change_control_url = forms.URLField(required=False, label="Change Control URL") status = utilities_forms.DynamicModelChoiceField( queryset=Status.objects.all(), query_params={"content_types": models.ConfigPlan._meta.label_lower}, - required=False, ) - tag = utilities_forms.DynamicModelMultipleChoiceField( + tags = utilities_forms.DynamicModelMultipleChoiceField( queryset=Tag.objects.all(), query_params={"content_types": "dcim.device"}, required=False ) @@ -570,8 +528,8 @@ class Meta: fields = ( "change_control_id", "change_control_url", - "tag", "status", + "tags", ) @@ -597,12 +555,19 @@ class ConfigPlanFilterForm(NautobotFilterForm): to_field_name="name", ) change_control_id = forms.CharField(required=False, label="Change Control ID") - job_result_id = utilities_forms.DynamicModelMultipleChoiceField( + plan_result_id = utilities_forms.DynamicModelMultipleChoiceField( + queryset=JobResult.objects.all(), + query_params={"name": "plugins/nautobot_golden_config.jobs/GenerateConfigPlans"}, + label="Plan Result", + required=False, + display_field="created", + ) + deploy_result_id = utilities_forms.DynamicModelMultipleChoiceField( queryset=JobResult.objects.all(), - query_params={"nautobot_golden_config_config_plan_null": True}, - label="Job Result", + query_params={"name": "plugins/nautobot_golden_config.jobs/DeployConfigPlans"}, + label="Deploy Result", required=False, - display_field="id", + display_field="created", ) status = utilities_forms.DynamicModelMultipleChoiceField( required=False, diff --git a/nautobot_golden_config/jobs.py b/nautobot_golden_config/jobs.py index f7f83783..c4441a6d 100644 --- a/nautobot_golden_config/jobs.py +++ b/nautobot_golden_config/jobs.py @@ -25,16 +25,12 @@ from nautobot_golden_config.nornir_plays.config_compliance import config_compliance from nautobot_golden_config.nornir_plays.config_deployment import config_deployment from nautobot_golden_config.nornir_plays.config_intended import config_intended +from nautobot_golden_config.utilities import constant from nautobot_golden_config.utilities.config_plan import ( config_plan_default_status, generate_config_set_from_compliance_feature, generate_config_set_from_manual, ) -from nautobot_golden_config.utilities.constant import ( - ENABLE_BACKUP, - ENABLE_COMPLIANCE, - ENABLE_INTENDED, -) from nautobot_golden_config.utilities.git import GitRepo from nautobot_golden_config.utilities.helper import get_job_filter @@ -103,26 +99,12 @@ class FormEntry: # pylint disable=too-few-public-method class ComplianceJob(Job, FormEntry): """Job to to run the compliance engine.""" - tenant_group = FormEntry.tenant_group - tenant = FormEntry.tenant - region = FormEntry.region - site = FormEntry.site - rack_group = FormEntry.rack_group - rack = FormEntry.rack - role = FormEntry.role - manufacturer = FormEntry.manufacturer - platform = FormEntry.platform - device_type = FormEntry.device_type - device = FormEntry.device - tag = FormEntry.tag - status = FormEntry.status - debug = FormEntry.debug - class Meta: """Meta object boilerplate for compliance.""" name = "Perform Configuration Compliance" description = "Run configuration compliance on your network infrastructure." + has_sensitive_variables = False @commit_check def run(self, data, commit): # pylint: disable=too-many-branches @@ -142,26 +124,12 @@ def run(self, data, commit): # pylint: disable=too-many-branches class IntendedJob(Job, FormEntry): """Job to to run generation of intended configurations.""" - tenant_group = FormEntry.tenant_group - tenant = FormEntry.tenant - region = FormEntry.region - site = FormEntry.site - rack_group = FormEntry.rack_group - rack = FormEntry.rack - role = FormEntry.role - manufacturer = FormEntry.manufacturer - platform = FormEntry.platform - device_type = FormEntry.device_type - device = FormEntry.device - tag = FormEntry.tag - status = FormEntry.status - debug = FormEntry.debug - class Meta: """Meta object boilerplate for intended.""" name = "Generate Intended Configurations" description = "Generate the configuration for your intended state." + has_sensitive_variables = False @commit_check def run(self, data, commit): @@ -190,26 +158,12 @@ def run(self, data, commit): class BackupJob(Job, FormEntry): """Job to to run the backup job.""" - tenant_group = FormEntry.tenant_group - tenant = FormEntry.tenant - region = FormEntry.region - site = FormEntry.site - rack_group = FormEntry.rack_group - rack = FormEntry.rack - role = FormEntry.role - manufacturer = FormEntry.manufacturer - platform = FormEntry.platform - device_type = FormEntry.device_type - device = FormEntry.device - tag = FormEntry.tag - status = FormEntry.status - debug = FormEntry.debug - class Meta: """Meta object boilerplate for backup configurations.""" name = "Backup Configurations" description = "Backup the configurations of your network devices." + has_sensitive_variables = False @commit_check def run(self, data, commit): @@ -244,72 +198,43 @@ class Meta: name = "Execute All Golden Configuration Jobs - Single Device" description = "Process to run all Golden Configuration jobs configured." + has_sensitive_variables = False @commit_check def run(self, data, commit): """Run all jobs.""" - if ENABLE_INTENDED: + if constant.ENABLE_INTENDED: IntendedJob().run.__func__(self, data, True) # pylint: disable=too-many-function-args - if ENABLE_BACKUP: + if constant.ENABLE_BACKUP: BackupJob().run.__func__(self, data, True) # pylint: disable=too-many-function-args - if ENABLE_COMPLIANCE: + if constant.ENABLE_COMPLIANCE: ComplianceJob().run.__func__(self, data, True) # pylint: disable=too-many-function-args class AllDevicesGoldenConfig(Job): """Job to to run all three jobs against multiple devices.""" - tenant_group = FormEntry.tenant_group - tenant = FormEntry.tenant - region = FormEntry.region - site = FormEntry.site - rack_group = FormEntry.rack_group - rack = FormEntry.rack - role = FormEntry.role - manufacturer = FormEntry.manufacturer - platform = FormEntry.platform - device_type = FormEntry.device_type - device = FormEntry.device - tag = FormEntry.tag - status = FormEntry.status - debug = FormEntry.debug - class Meta: """Meta object boilerplate for all jobs to run against multiple devices.""" name = "Execute All Golden Configuration Jobs - Multiple Device" description = "Process to run all Golden Configuration jobs configured against multiple devices." + has_sensitive_variables = False @commit_check def run(self, data, commit): """Run all jobs.""" - if ENABLE_INTENDED: + if constant.ENABLE_INTENDED: IntendedJob().run.__func__(self, data, True) # pylint: disable=too-many-function-args - if ENABLE_BACKUP: + if constant.ENABLE_BACKUP: BackupJob().run.__func__(self, data, True) # pylint: disable=too-many-function-args - if ENABLE_COMPLIANCE: + if constant.ENABLE_COMPLIANCE: ComplianceJob().run.__func__(self, data, True) # pylint: disable=too-many-function-args class GenerateConfigPlans(Job, FormEntry): """Job to generate config plans.""" - # Device QS Filters - tenant_group = FormEntry.tenant_group - tenant = FormEntry.tenant - region = FormEntry.region - site = FormEntry.site - rack_group = FormEntry.rack_group - rack = FormEntry.rack - role = FormEntry.role - manufacturer = FormEntry.manufacturer - platform = FormEntry.platform - device_type = FormEntry.device_type - device = FormEntry.device - tag = FormEntry.tag - status = FormEntry.status - debug = FormEntry.debug - # Config Plan generation fields plan_type = ChoiceVar(choices=ConfigPlanTypeChoice.CHOICES) feature = MultiObjectVar(model=ComplianceFeature, required=False) @@ -322,6 +247,7 @@ class Meta: name = "Generate Config Plans" description = "Generate config plans for devices." + has_sensitive_variables = False # Defaulting to hidden as this should be primarily called by the View hidden = True @@ -374,7 +300,7 @@ def _generate_config_plan_from_feature(self): change_control_id=self._change_control_id, change_control_url=self._change_control_url, status=self._status, - job_result=self.job_result, + plan_result=self.job_result, ) config_plan.feature.set(features) config_plan.validated_save() @@ -399,7 +325,7 @@ def _generate_config_plan_from_manual(self): change_control_id=self._change_control_id, change_control_url=self._change_control_url, status=self._status, - job_result=self.job_result, + plan_result=self.job_result, ) self.log_success(obj=config_plan, message=f"Config plan created for {device} with manual commands.") @@ -435,14 +361,12 @@ class Meta: name = "Deploy Config Plans" description = "Deploy config plans to devices." + has_sensitive_variables = False def run(self, data, commit): """Run config plan deployment process.""" self.log_debug("Starting config plan deployment job.") config_deployment(self, data, commit) - if commit and not self.failed: - config_plan_qs = data["config_plan"] - config_plan_qs.delete() class DeployConfigPlanJobButtonReceiver(JobButtonReceiver): @@ -452,30 +376,31 @@ class Meta: """Meta object boilerplate for config plan deployment job button.""" name = "Deploy Config Plan (Job Button Receiver)" + has_sensitive_variables = False def receive_job_button(self, obj): """Run config plan deployment process.""" self.log_debug("Starting config plan deployment job.") data = {"debug": False, "config_plan": ConfigPlan.objects.filter(id=obj.id)} config_deployment(self, data, commit=True) - if not self.failed: - obj.delete() # Conditionally allow jobs based on whether or not turned on. jobs = [] -if ENABLE_BACKUP: +if constant.ENABLE_BACKUP: jobs.append(BackupJob) -if ENABLE_INTENDED: +if constant.ENABLE_INTENDED: jobs.append(IntendedJob) -if ENABLE_COMPLIANCE: +if constant.ENABLE_COMPLIANCE: jobs.append(ComplianceJob) +if constant.ENABLE_PLAN: + jobs.append(GenerateConfigPlans) +if constant.ENABLE_DEPLOY: + jobs.append(DeployConfigPlans) + jobs.append(DeployConfigPlanJobButtonReceiver) jobs.extend( [ AllGoldenConfig, AllDevicesGoldenConfig, - GenerateConfigPlans, - DeployConfigPlans, - DeployConfigPlanJobButtonReceiver, ] ) diff --git a/nautobot_golden_config/migrations/0002_custom_data.py b/nautobot_golden_config/migrations/0002_custom_data.py index 1435fbd8..d96c71f0 100644 --- a/nautobot_golden_config/migrations/0002_custom_data.py +++ b/nautobot_golden_config/migrations/0002_custom_data.py @@ -1,6 +1,6 @@ # Generated by Django 3.1.3 on 2021-02-22 01:27 -from django.db import migrations, models +from django.db import migrations class Migration(migrations.Migration): diff --git a/nautobot_golden_config/migrations/0015_convert_sotagg_queries_part2.py b/nautobot_golden_config/migrations/0015_convert_sotagg_queries_part2.py index c0b4d6c1..a1244046 100644 --- a/nautobot_golden_config/migrations/0015_convert_sotagg_queries_part2.py +++ b/nautobot_golden_config/migrations/0015_convert_sotagg_queries_part2.py @@ -1,4 +1,4 @@ -from django.db import migrations, models +from django.db import migrations def save_existing_sotagg_queries(apps, schema_editor): diff --git a/nautobot_golden_config/migrations/0016_convert_sotagg_queries_part3.py b/nautobot_golden_config/migrations/0016_convert_sotagg_queries_part3.py index 0fc55074..93c96f4f 100644 --- a/nautobot_golden_config/migrations/0016_convert_sotagg_queries_part3.py +++ b/nautobot_golden_config/migrations/0016_convert_sotagg_queries_part3.py @@ -1,7 +1,5 @@ -from datetime import date - -from django.db import migrations, models import django.db.models.deletion +from django.db import migrations, models class Migration(migrations.Migration): diff --git a/nautobot_golden_config/migrations/0017_convert_sotagg_queries_part4.py b/nautobot_golden_config/migrations/0017_convert_sotagg_queries_part4.py index c90d5b9c..1ba69ceb 100644 --- a/nautobot_golden_config/migrations/0017_convert_sotagg_queries_part4.py +++ b/nautobot_golden_config/migrations/0017_convert_sotagg_queries_part4.py @@ -1,7 +1,6 @@ -from datetime import date import logging +from datetime import date -from django.core.validators import ValidationError from django.db import migrations logger = logging.getLogger("nautobot") diff --git a/nautobot_golden_config/migrations/0020_convert_dynamicgroup_part_2.py b/nautobot_golden_config/migrations/0020_convert_dynamicgroup_part_2.py index 639d82ca..03125222 100644 --- a/nautobot_golden_config/migrations/0020_convert_dynamicgroup_part_2.py +++ b/nautobot_golden_config/migrations/0020_convert_dynamicgroup_part_2.py @@ -1,8 +1,7 @@ # Generated by Django 3.2.14 on 2022-07-11 14:18 -from django.db import migrations, models +from django.db import migrations from django.utils.text import slugify -import django.db.models.deletion def create_dynamic_groups(apps, schedma_editor): diff --git a/nautobot_golden_config/migrations/0025_remediation_settings.py b/nautobot_golden_config/migrations/0025_remediation_settings.py index a2b77cb3..b2e6b12c 100644 --- a/nautobot_golden_config/migrations/0025_remediation_settings.py +++ b/nautobot_golden_config/migrations/0025_remediation_settings.py @@ -1,11 +1,12 @@ # Generated by Django 3.2.16 on 2023-07-07 09:21 +import uuid + import django.core.serializers.json -from django.db import migrations, models import django.db.models.deletion import nautobot.extras.models.mixins import taggit.managers -import uuid +from django.db import migrations, models class Migration(migrations.Migration): diff --git a/nautobot_golden_config/migrations/0026_configplan.py b/nautobot_golden_config/migrations/0026_configplan.py index 2c93462d..5ca9c529 100644 --- a/nautobot_golden_config/migrations/0026_configplan.py +++ b/nautobot_golden_config/migrations/0026_configplan.py @@ -1,12 +1,13 @@ # Generated by Django 3.2.20 on 2023-09-01 14:51 +import uuid + import django.core.serializers.json -from django.db import migrations, models import django.db.models.deletion import nautobot.extras.models.mixins import nautobot.extras.models.statuses import taggit.managers -import uuid +from django.db import migrations, models class Migration(migrations.Migration): diff --git a/nautobot_golden_config/migrations/0027_auto_20230915_1657.py b/nautobot_golden_config/migrations/0027_auto_20230915_1657.py new file mode 100644 index 00000000..aa5308e4 --- /dev/null +++ b/nautobot_golden_config/migrations/0027_auto_20230915_1657.py @@ -0,0 +1,40 @@ +# Generated by Django 3.2.20 on 2023-09-15 16:57 + +from django.db import migrations, models +import django.db.models.deletion + + +class Migration(migrations.Migration): + dependencies = [ + ("extras", "0058_jobresult_add_time_status_idxs"), + ("nautobot_golden_config", "0026_configplan"), + ] + + operations = [ + migrations.AlterModelOptions( + name="remediationsetting", + options={"ordering": ("platform", "remediation_type")}, + ), + migrations.RenameField( + model_name="configplan", + old_name="job_result", + new_name="plan_result", + ), + migrations.AddField( + model_name="configplan", + name="deploy_result", + field=models.ForeignKey( + blank=True, + null=True, + on_delete=django.db.models.deletion.PROTECT, + related_name="config_plan_deploy_result", + to="extras.jobresult", + ), + ), + migrations.AlterField( + model_name="configplan", + name="change_control_id", + field=models.CharField(blank=True, default="", max_length=50), + preserve_default=False, + ), + ] diff --git a/nautobot_golden_config/models.py b/nautobot_golden_config/models.py index 47459001..9e9dfc3f 100644 --- a/nautobot_golden_config/models.py +++ b/nautobot_golden_config/models.py @@ -18,6 +18,7 @@ from nautobot.utilities.utils import serialize_object, serialize_object_v2 from netutils.config.compliance import feature_compliance from netutils.lib_mapper import HIERCONFIG_LIB_MAPPER_REVERSE + from nautobot_golden_config.choices import ComplianceRuleConfigTypeChoice, ConfigPlanTypeChoice, RemediationTypeChoice from nautobot_golden_config.utilities.constant import ENABLE_SOTAGG, PLUGIN_CFG from nautobot_golden_config.utilities.utils import get_platform @@ -256,8 +257,6 @@ class ComplianceRule(PrimaryModel): # pylint: disable=too-many-ancestors config_remediation = models.BooleanField( default=False, - null=False, - blank=False, verbose_name="Config Remediation", help_text="Whether or not the config remediation is executed for this compliance rule.", ) @@ -784,7 +783,13 @@ def __str__(self): @extras_features( + "custom_fields", + "custom_links", + "custom_validators", + "export_templates", "graphql", + "relationships", + "webhooks", ) class RemediationSetting(PrimaryModel): # pylint: disable=too-many-ancestors """RemediationSetting details.""" @@ -794,8 +799,6 @@ class RemediationSetting(PrimaryModel): # pylint: disable=too-many-ancestors to="dcim.Platform", on_delete=models.CASCADE, related_name="remediation_settings", - null=False, - blank=False, ) remediation_type = models.CharField( @@ -863,18 +866,23 @@ class ConfigPlan(PrimaryModel): # pylint: disable=too-many-ancestors related_name="config_plan", blank=True, ) - job_result = models.ForeignKey( + plan_result = models.ForeignKey( to="extras.JobResult", on_delete=models.CASCADE, related_name="config_plan", - null=False, - blank=False, - verbose_name="Job Result", + verbose_name="Plan Result", + ) + deploy_result = models.ForeignKey( + to="extras.JobResult", + on_delete=models.PROTECT, + related_name="config_plan_deploy_result", + verbose_name="Deploy Result", + blank=True, + null=True, ) change_control_id = models.CharField( max_length=50, blank=True, - null=True, verbose_name="Change Control ID", help_text="Change Control ID for this configuration plan.", ) diff --git a/nautobot_golden_config/navigation.py b/nautobot_golden_config/navigation.py index e20e4c3d..4350f56e 100644 --- a/nautobot_golden_config/navigation.py +++ b/nautobot_golden_config/navigation.py @@ -1,8 +1,7 @@ """Add the configuration compliance buttons to the Plugins Navigation.""" -from nautobot.core.apps import NavMenuGroup, NavMenuItem, NavMenuTab, NavMenuButton -from nautobot.utilities.choices import ButtonColorChoices -from nautobot_golden_config.utilities.constant import ENABLE_COMPLIANCE, ENABLE_BACKUP +from nautobot.core.apps import NavMenuGroup, NavMenuItem, NavMenuTab, NavMenuAddButton +from nautobot_golden_config.utilities.constant import ENABLE_COMPLIANCE, ENABLE_BACKUP, ENABLE_PLAN items_operate = [ NavMenuItem( @@ -30,11 +29,8 @@ name="Compliance Rules", permissions=["nautobot_golden_config.view_compliancerule"], buttons=( - NavMenuButton( + NavMenuAddButton( link="plugins:nautobot_golden_config:compliancerule_add", - title="Compliance Rules", - icon_class="mdi mdi-plus-thick", - button_class=ButtonColorChoices.GREEN, permissions=["nautobot_golden_config.add_compliancerule"], ), ), @@ -48,11 +44,8 @@ name="Compliance Features", permissions=["nautobot_golden_config.view_compliancefeature"], buttons=( - NavMenuButton( + NavMenuAddButton( link="plugins:nautobot_golden_config:compliancefeature_add", - title="Compliance Features", - icon_class="mdi mdi-plus-thick", - button_class=ButtonColorChoices.GREEN, permissions=["nautobot_golden_config.add_compliancefeature"], ), ), @@ -69,22 +62,20 @@ ) ) -items_operate.append( - NavMenuItem( - link="plugins:nautobot_golden_config:configplan_list", - name="Config Plans", - permissions=["nautobot_golden_config.view_configplan"], - buttons=( - NavMenuButton( - link="plugins:nautobot_golden_config:configplan_add", - title="Generate Config Plan", - icon_class="mdi mdi-plus-thick", - button_class=ButtonColorChoices.GREEN, - permissions=["nautobot_golden_config.add_configplan"], +if ENABLE_PLAN: + items_operate.append( + NavMenuItem( + link="plugins:nautobot_golden_config:configplan_list", + name="Config Plans", + permissions=["nautobot_golden_config.view_configplan"], + buttons=( + NavMenuAddButton( + link="plugins:nautobot_golden_config:configplan_add", + permissions=["nautobot_golden_config.add_configplan"], + ), ), - ), + ) ) -) if ENABLE_BACKUP: items_setup.append( @@ -93,11 +84,8 @@ name="Config Removals", permissions=["nautobot_golden_config.view_configremove"], buttons=( - NavMenuButton( + NavMenuAddButton( link="plugins:nautobot_golden_config:configremove_add", - title="Config Remove", - icon_class="mdi mdi-plus-thick", - button_class=ButtonColorChoices.GREEN, permissions=["nautobot_golden_config.add_configremove"], ), ), @@ -111,11 +99,8 @@ name="Config Replacements", permissions=["nautobot_golden_config.view_configreplace"], buttons=( - NavMenuButton( + NavMenuAddButton( link="plugins:nautobot_golden_config:configreplace_add", - title="Config Replace", - icon_class="mdi mdi-plus-thick", - button_class=ButtonColorChoices.GREEN, permissions=["nautobot_golden_config.add_configreplace"], ), ), @@ -130,11 +115,8 @@ name="Remediation Settings", permissions=["nautobot_golden_config.view_remediationsetting"], buttons=( - NavMenuButton( + NavMenuAddButton( link="plugins:nautobot_golden_config:remediationsetting_add", - title="Remediation Settings", - icon_class="mdi mdi-plus-thick", - button_class=ButtonColorChoices.GREEN, permissions=["nautobot_golden_config.add_remediationsetting"], ), ), @@ -147,11 +129,8 @@ name="Golden Config Settings", permissions=["nautobot_golden_config.view_goldenconfigsetting"], buttons=( - NavMenuButton( + NavMenuAddButton( link="plugins:nautobot_golden_config:goldenconfigsetting_add", - title="Add", - icon_class="mdi mdi-plus-thick", - button_class=ButtonColorChoices.GREEN, permissions=["nautobot_golden_config.change_goldenconfigsetting"], ), ), @@ -165,7 +144,7 @@ weight=1000, groups=( NavMenuGroup(name="Manage", weight=100, items=tuple(items_operate)), - (NavMenuGroup(name="Setup", weight=100, items=tuple(items_setup))), + NavMenuGroup(name="Setup", weight=100, items=tuple(items_setup)), ), ), ) diff --git a/nautobot_golden_config/nornir_plays/config_compliance.py b/nautobot_golden_config/nornir_plays/config_compliance.py index 5ba24372..bb33f5b5 100644 --- a/nautobot_golden_config/nornir_plays/config_compliance.py +++ b/nautobot_golden_config/nornir_plays/config_compliance.py @@ -3,35 +3,31 @@ import difflib import logging import os - from collections import defaultdict from datetime import datetime -from netutils.config.compliance import parser_map, section_config, _open_file_config +from nautobot_plugin_nornir.constants import NORNIR_SETTINGS +from nautobot_plugin_nornir.plugins.inventory.nautobot_orm import NautobotORMInventory +from netutils.config.compliance import _open_file_config, parser_map, section_config from nornir import InitNornir from nornir.core.plugins.inventory import InventoryPluginRegister from nornir.core.task import Result, Task - from nornir_nautobot.exceptions import NornirNautobotException from nornir_nautobot.utils.logger import NornirLogger -from nautobot_plugin_nornir.plugins.inventory.nautobot_orm import NautobotORMInventory -from nautobot_plugin_nornir.constants import NORNIR_SETTINGS - from nautobot_golden_config.choices import ComplianceRuleConfigTypeChoice +from nautobot_golden_config.models import ComplianceRule, ConfigCompliance, GoldenConfig +from nautobot_golden_config.nornir_plays.processor import ProcessGoldenConfig from nautobot_golden_config.utilities.db_management import close_threaded_db_connections -from nautobot_golden_config.models import ComplianceRule, ConfigCompliance, GoldenConfigSetting, GoldenConfig from nautobot_golden_config.utilities.helper import ( get_device_to_settings_map, get_job_filter, - verify_settings, - render_jinja_template, get_json_config, + render_jinja_template, + verify_settings, ) -from nautobot_golden_config.nornir_plays.processor import ProcessGoldenConfig from nautobot_golden_config.utilities.utils import get_platform - InventoryPluginRegister.register("nautobot-inventory", NautobotORMInventory) LOGGER = logging.getLogger(__name__) diff --git a/nautobot_golden_config/nornir_plays/config_deployment.py b/nautobot_golden_config/nornir_plays/config_deployment.py index 1862f7ea..f75c380f 100644 --- a/nautobot_golden_config/nornir_plays/config_deployment.py +++ b/nautobot_golden_config/nornir_plays/config_deployment.py @@ -1,12 +1,15 @@ """Nornir job for deploying configurations.""" from datetime import datetime + from nautobot.dcim.models import Device -from nautobot_plugin_nornir.plugins.inventory.nautobot_orm import NautobotORMInventory +from nautobot.extras.models import Status from nautobot_plugin_nornir.constants import NORNIR_SETTINGS +from nautobot_plugin_nornir.plugins.inventory.nautobot_orm import NautobotORMInventory from nautobot_plugin_nornir.utils import get_dispatcher from nornir import InitNornir -from nornir.core.task import Result, Task +from nornir.core.exceptions import NornirSubTaskError from nornir.core.plugins.inventory import InventoryPluginRegister +from nornir.core.task import Result, Task from nornir_nautobot.plugins.tasks.dispatcher import dispatcher from nornir_nautobot.utils.logger import NornirLogger @@ -15,31 +18,49 @@ InventoryPluginRegister.register("nautobot-inventory", NautobotORMInventory) -def run_deployment(task: Task, logger: NornirLogger, commit: bool, config_plan_qs) -> Result: +def run_deployment(task: Task, logger: NornirLogger, commit: bool, config_plan_qs, deploy_job_result) -> Result: """Deploy configurations to device.""" obj = task.host.data["obj"] plans_to_deploy = config_plan_qs.filter(device=obj) + plans_to_deploy.update(deploy_result=deploy_job_result.job_result) consolidated_config_set = "\n".join(plans_to_deploy.values_list("config_set", flat=True)) logger.log_debug(f"Consolidated config set: {consolidated_config_set}") # TODO: We should add post-processing rendering here # after https://github.com/nautobot/nautobot-plugin-golden-config/issues/443 if commit: - result = task.run( - task=dispatcher, - name="DEPLOY CONFIG TO DEVICE", - method="merge_config", - obj=obj, - logger=logger, - config=consolidated_config_set, - default_drivers_mapping=get_dispatcher(), - )[1].result["result"] - logger.log_success(obj=obj, message="Successfully deployed configuration to device.") + plans_to_deploy.update(status=Status.objects.get(slug="in-progress")) + try: + result = task.run( + task=dispatcher, + name="DEPLOY CONFIG TO DEVICE", + method="merge_config", + obj=obj, + logger=logger, + config=consolidated_config_set, + default_drivers_mapping=get_dispatcher(), + )[1] + task_changed, task_result, task_failed = result.changed, result.result, result.failed + if task_changed and task_failed: + # means config_revert happened in `napalm_configure` + plans_to_deploy.update(status=Status.objects.get(slug="failed")) + logger.log_failure(obj=obj, message="Failed deployment to the device.") + elif not task_changed and not task_failed: + plans_to_deploy.update(status=Status.objects.get(slug="completed")) + logger.log_success(obj=obj, message="Nothing was deployed to the device.") + else: + if not task_failed: + logger.log_success(obj=obj, message="Successfully deployed configuration to device.") + plans_to_deploy.update(status=Status.objects.get(slug="completed")) + except NornirSubTaskError: + task_result = None + plans_to_deploy.update(status=Status.objects.get(slug="failed")) + logger.log_failure(obj=obj, message="Failed deployment to the device.") else: - result = None + task_result = None logger.log_info(obj=obj, message="Commit not enabled. Configuration not deployed to device.") - return Result(host=task.host, result=result) + return Result(host=task.host, result=task_result) def config_deployment(job_result, data, commit): @@ -47,14 +68,15 @@ def config_deployment(job_result, data, commit): now = datetime.now() logger = NornirLogger(__name__, job_result, data.get("debug")) logger.log_debug("Starting config deployment") - config_plan_qs = data["config_plan"] if config_plan_qs.filter(status__slug="not-approved").exists(): - logger.log_failure( - obj=None, - message="Cannot deploy configuration(s). One or more config plans are not approved.", - ) - raise ValueError("Cannot deploy configuration(s). One or more config plans are not approved.") + message = "Cannot deploy configuration(s). One or more config plans are not approved." + logger.log_failure(obj=None, message=message) + raise ValueError(message) + if config_plan_qs.filter(status__slug="completed").exists(): + message = "Cannot deploy configuration(s). One or more config plans are already completed." + logger.log_failure(obj=None, message=message) + raise ValueError(message) device_qs = Device.objects.filter(config_plan__in=config_plan_qs).distinct() try: @@ -79,6 +101,7 @@ def config_deployment(job_result, data, commit): logger=logger, commit=commit, config_plan_qs=config_plan_qs, + deploy_job_result=job_result, ) except Exception as err: logger.log_failure(obj=None, message=f"Failed to initialize Nornir: {err}") diff --git a/nautobot_golden_config/nornir_plays/config_intended.py b/nautobot_golden_config/nornir_plays/config_intended.py index be5f18e9..e00518e4 100644 --- a/nautobot_golden_config/nornir_plays/config_intended.py +++ b/nautobot_golden_config/nornir_plays/config_intended.py @@ -1,35 +1,32 @@ """Nornir job for generating the intended config.""" # pylint: disable=relative-beyond-top-level -import os import logging - +import os from datetime import datetime -from nornir import InitNornir -from nornir.core.plugins.inventory import InventoryPluginRegister -from nornir.core.task import Result, Task from django.template import engines from jinja2.sandbox import SandboxedEnvironment - +from nautobot_plugin_nornir.constants import NORNIR_SETTINGS +from nautobot_plugin_nornir.plugins.inventory.nautobot_orm import NautobotORMInventory +from nautobot_plugin_nornir.utils import get_dispatcher +from nornir import InitNornir +from nornir.core.plugins.inventory import InventoryPluginRegister +from nornir.core.task import Result, Task from nornir_nautobot.exceptions import NornirNautobotException from nornir_nautobot.plugins.tasks.dispatcher import dispatcher from nornir_nautobot.utils.logger import NornirLogger -from nautobot_plugin_nornir.plugins.inventory.nautobot_orm import NautobotORMInventory -from nautobot_plugin_nornir.constants import NORNIR_SETTINGS -from nautobot_plugin_nornir.utils import get_dispatcher - +from nautobot_golden_config.models import GoldenConfig +from nautobot_golden_config.nornir_plays.processor import ProcessGoldenConfig from nautobot_golden_config.utilities.constant import PLUGIN_CFG from nautobot_golden_config.utilities.db_management import close_threaded_db_connections -from nautobot_golden_config.models import GoldenConfigSetting, GoldenConfig +from nautobot_golden_config.utilities.graphql import graph_ql_query from nautobot_golden_config.utilities.helper import ( get_device_to_settings_map, get_job_filter, - verify_settings, render_jinja_template, + verify_settings, ) -from nautobot_golden_config.utilities.graphql import graph_ql_query -from nautobot_golden_config.nornir_plays.processor import ProcessGoldenConfig InventoryPluginRegister.register("nautobot-inventory", NautobotORMInventory) LOGGER = logging.getLogger(__name__) diff --git a/nautobot_golden_config/signals.py b/nautobot_golden_config/signals.py index 7ff3baa7..43c873f4 100755 --- a/nautobot_golden_config/signals.py +++ b/nautobot_golden_config/signals.py @@ -3,6 +3,8 @@ from django.db.models.signals import post_save from django.dispatch import receiver from nautobot.dcim.models import Platform + +from nautobot.utilities.choices import ColorChoices from nautobot_golden_config import models @@ -16,7 +18,7 @@ def post_migrate_create_statuses(sender, apps=global_apps, **kwargs): # pylint: "slug": "approved", "defaults": { "description": "Config plan is approved", - "color": "4caf50", # Green + "color": ColorChoices.COLOR_GREEN, }, }, { @@ -24,7 +26,31 @@ def post_migrate_create_statuses(sender, apps=global_apps, **kwargs): # pylint: "slug": "not-approved", "defaults": { "description": "Config plan is not approved", - "color": "f44336", # Red + "color": ColorChoices.COLOR_RED, + }, + }, + { + "name": "In Progress", + "slug": "in-progress", + "defaults": { + "description": "Config deployment has started and not completed or failed", + "color": ColorChoices.COLOR_GREY, + }, + }, + { + "name": "Completed", + "slug": "completed", + "defaults": { + "description": "Config deploy has been successfully completed", + "color": ColorChoices.COLOR_DARK_GREY, + }, + }, + { + "name": "Failed", + "slug": "failed", + "defaults": { + "description": "Config deploy has failed", + "color": ColorChoices.COLOR_DARK_RED, }, }, ]: diff --git a/nautobot_golden_config/static/run_job.js b/nautobot_golden_config/static/run_job.js index 20bf2da4..81e286d1 100644 --- a/nautobot_golden_config/static/run_job.js +++ b/nautobot_golden_config/static/run_job.js @@ -7,207 +7,189 @@ * @param {string} jobClass - The jobs `class_path` as defined on the job detail page. * @param {Object} data - The object containing payload data to send to the job. * @param {string} redirectUrlTemplate - The redirect url to provide, you have access to jobData with the syntax like `{jobData.someKey}`, leave `undefined` if none is required. + * @param {string} callBack - The promise function to return the success or failure message, leave `undefined` no callback is required. */ -function startJob(jobClass, data, redirectUrlTemplate) { - var jobApi = `/api/extras/jobs/${jobClass}/run/`; +function startJob(jobClass, data, redirectUrlTemplate, callBack) { + var jobApi = `/api/extras/jobs/${jobClass}/run/`; - $.ajax({ - type: 'POST', - url: jobApi, - contentType: "application/json", - data: JSON.stringify({"data": data}), - dataType: 'json', - headers: { - 'X-CSRFToken': nautobot_csrf_token - }, - beforeSend: function() { - // Normalize to base as much as you can. - $('#jobStatus').html("Pending").show(); - $('#loaderImg').show(); - $('#jobResults').hide(); - $('#redirectLink').hide(); - $('#detailMessages').hide(); - }, - success: function(jobData) { - $('#jobStatus').html("Started").show(); - var jobResultUrl = "/extras/job-results/" + jobData.result.id + "/"; - $('#jobResults').html(iconLink(jobResultUrl, "mdi-open-in-new", "Job Details")).show(); - pollJobStatus(jobData.result.url); - if (typeof redirectUrlTemplate !== "undefined") { - var redirectUrl = _renderTemplate(redirectUrlTemplate, jobData); - $('#redirectLink').html(iconLink(redirectUrl, "mdi-open-in-new", "Info")); - } + if (typeof callBack === "undefined") { + var callBack = getMessage; + } + + $.ajax({ + type: 'POST', + url: jobApi, + contentType: "application/json", + data: JSON.stringify(data), + dataType: 'json', + headers: { + 'X-CSRFToken': nautobot_csrf_token + }, + beforeSend: function() { + // Normalize to base as much as you can. + $('#jobStatus').html("Pending").show(); + $('#loaderImg').show(); + $('#jobResults').hide(); + $('#redirectLink').hide(); + $('#detailMessages').hide(); }, - error: function(e) { - $("#loaderImg").hide(); - console.log("There was an error with your request..."); - console.log("error: " + JSON.stringify(e)); - $('#jobStatus').html("Failed").show(); - $('#detailMessages').show(); - $('#detailMessages').attr('class', 'alert alert-danger text-center'); - $('#detailMessages').html("Error: " + e.responseText); - } - }); + success: function(jobData) { + $('#jobStatus').html("Started").show(); + var jobResultUrl = "/extras/job-results/" + jobData.result.id + "/"; + $('#jobResults').html(iconLink(jobResultUrl, "mdi-open-in-new", "Job Details")).show(); + pollJobStatus(jobData.result.url, callBack); + if (typeof redirectUrlTemplate !== "undefined") { + var redirectUrl = _renderTemplate(redirectUrlTemplate, jobData); + $('#redirectLink').html(iconLink(redirectUrl, "mdi-open-in-new", "Info")); + } + }, + error: function(e) { + $("#loaderImg").hide(); + console.log("There was an error with your request..."); + console.log("error: " + JSON.stringify(e)); + $('#jobStatus').html("Failed").show(); + $('#detailMessages').show(); + $('#detailMessages').attr('class', 'alert alert-danger text-center'); + $('#detailMessages').html("Error: " + e.responseText); + } + }); } /** - * Polls the status of a job with the given job ID. - * - * This function makes an AJAX request to the server, - * to get the current status of the job with the specified job ID. - * It continues to poll the status until the job completes or fails. - * The job status is updated in the HTML element with ID 'jobStatus'. - * If the job encounters an error, additional error details are shown. - * The call is not made async, so that the parent call will wait until - * this is completed. - * - * @requires nautobot_csrf_token - The CSRF token obtained from Nautobot. - * @param {string} jobId - The ID of the job to poll. - * @returns {void} - */ -function pollJobStatus(jobId) { - $.ajax({ - url: jobId, - type: "GET", - async: false, - dataType: "json", - headers: { - 'X-CSRFToken': nautobot_csrf_token - }, - success: function(data) { - $('#jobStatus').html(data.status.value.charAt(0).toUpperCase() + data.status.value.slice(1)).show(); - if (["errored", "failed"].includes(data.status.value)) { - $("#loaderImg").hide(); - $('#detailMessages').show(); - $('#detailMessages').attr('class', 'alert alert-warning text-center'); - $('#detailMessages').html("Job started but failed during the Job run. This job may have partially completed. See Job Results for more details on the errors."); - } else if (["running", "pending"].includes(data.status.value)) { - // Job is still processing, continue polling - setTimeout(function() { - pollJobStatus(jobId); - }, 1000); // Poll every 1 seconds - } else if (data.status.value == "completed") { +* Polls the status of a job with the given job ID. +* +* This function makes an AJAX request to the server, +* to get the current status of the job with the specified job ID. +* It continues to poll the status until the job completes or fails. +* The job status is updated in the HTML element with ID 'jobStatus'. +* If the job encounters an error, additional error details are shown. +* The call is not made async, so that the parent call will wait until +* this is completed. +* +* @requires nautobot_csrf_token - The CSRF token obtained from Nautobot. +* @param {string} jobId - The ID of the job to poll. +* @returns {void} +*/ +function pollJobStatus(jobId, callBack) { +$.ajax({ + url: jobId, + type: "GET", + async: false, + dataType: "json", + headers: { + 'X-CSRFToken': nautobot_csrf_token + }, + success: function (data) { + $('#jobStatus').html(data.status.value.charAt(0).toUpperCase() + data.status.value.slice(1)).show(); + if (["errored", "failed"].includes(data.status.value)) { + $("#loaderImg").hide(); + $('#detailMessages').show(); + $('#detailMessages').attr('class', 'alert alert-warning text-center'); + $('#detailMessages').html("Job started but failed during the Job run. This job may have partially completed. See Job Results for more details on the errors."); + } else if (["running", "pending"].includes(data.status.value)) { + // Job is still processing, continue polling + setTimeout(function () { + pollJobStatus(jobId, callBack); + }, 1000); // Poll every 1 seconds + } else if (data.status.value == "completed") { + $("#loaderImg").hide(); + $('#detailMessages').show(); + callBack(data.id) + .then((message) => { + $('#redirectLink').show(); + $('#detailMessages').attr('class', 'alert alert-success text-center'); + $('#detailMessages').html(message) + }) + .catch((message) => { + $('#detailMessages').attr('class', 'alert alert-warning text-center'); + $('#detailMessages').html(message) + }) + } + }, + error: function(e) { $("#loaderImg").hide(); + console.log("There was an error with your request..."); + console.log("error: " + JSON.stringify(e)); $('#detailMessages').show(); - configPlanCount(data.id) - .then(function(planCount) { - $('#redirectLink').show(); - $('#detailMessages').attr('class', 'alert alert-success text-center'); - $('#detailMessages').html( - "Job Completed Successfully."+ - "
Number of Config Plans generated: " + planCount - ) - }) - .catch(function(error) { - $('#detailMessages').attr('class', 'alert alert-warning text-center'); - $('#detailMessages').html( - "Job completed successfully, but no Config Plans were generated."+ - "
If this is unexpected, please validate your input parameters." - ) - }); + $('#detailMessages').attr('class', 'alert alert-danger text-center'); + $('#detailMessages').html("Error: " + e.responseText); } - }, - error: function(e) { - $("#loaderImg").hide(); - console.log("There was an error with your request..."); - console.log("error: " + JSON.stringify(e)); - $('#detailMessages').show(); - $('#detailMessages').attr('class', 'alert alert-danger text-center'); - $('#detailMessages').html("Error: " + e.responseText); - } - }); -} - + }) +}; /** - * Converts a list of form data objects to a dictionary. - * - * @param {FormData} formData - The form data object to be converted. - * @param {string[]} listKeys - The list of keys for which values should be collected as lists. - * @returns {Object} - The dictionary representation of the form data. - */ +* Converts a list of form data objects to a dictionary. +* +* @param {FormData} formData - The form data object to be converted. +* @param {string[]} listKeys - The list of keys for which values should be collected as lists. +* @returns {Object} - The dictionary representation of the form data. +*/ function formDataToDictionary(formData, listKeys) { - const dict = {}; +const dict = {}; - formData.forEach(item => { - const { name, value } = item; - if (listKeys.includes(name)) { - if (!dict[name]) { - dict[name] = [value]; - } else { - dict[name].push(value); - } +formData.forEach(item => { + const { name, value } = item; + if (listKeys.includes(name)) { + if (!dict[name]) { + dict[name] = [value]; } else { - dict[name] = value; + dict[name].push(value); } - }); + } else { + dict[name] = value; + } +}); - return dict; +return dict; } /** - * Generates an HTML anchor link with an icon. - * - * @param {string} url - The URL to link to. - * @param {string} icon - The name of the Material Design Icon to use. - * @param {string} title - The title to display when hovering over the icon. - * @returns {string} - The HTML anchor link with the specified icon. - */ +* Generates an HTML anchor link with an icon. +* +* @param {string} url - The URL to link to. +* @param {string} icon - The name of the Material Design Icon to use. +* @param {string} title - The title to display when hovering over the icon. +* @returns {string} - The HTML anchor link with the specified icon. +*/ function iconLink(url, icon, title) { - const linkUrl = `` + - ` ` + - ` ` + - ` ` + - `` - return linkUrl +const linkUrl = `` + +` ` + +` ` + +` ` + +`` +return linkUrl } /** - * Renders a template string with placeholders replaced by corresponding values from jobData. - * - * @param {string} templateString - The template string with placeholders in the form of `{jobData.someKey}`. - * @param {Object} jobData - The object containing data to replace placeholders in the template. - * @returns {string} - The rendered string with placeholders replaced by actual values from jobData. - */ +* Renders a template string with placeholders replaced by corresponding values from jobData. +* +* @param {string} templateString - The template string with placeholders in the form of `{jobData.someKey}`. +* @param {Object} jobData - The object containing data to replace placeholders in the template. +* @returns {string} - The rendered string with placeholders replaced by actual values from jobData. +*/ function _renderTemplate(templateString, data) { - // Create a regular expression to match placeholders in the template - const placeholderRegex = /\{jobData\.([^\}]+)\}/g; +// Create a regular expression to match placeholders in the template +const placeholderRegex = /\{jobData\.([^\}]+)\}/g; - // Replace placeholders with corresponding values from jobData - const renderedString = templateString.replace(placeholderRegex, (match, key) => { - const keys = key.split("."); - let value = data; - for (const k of keys) { - if (value.hasOwnProperty(k)) { - value = value[k]; - } else { - return match; // If the key is not found, keep the original placeholder - } +// Replace placeholders with corresponding values from jobData +const renderedString = templateString.replace(placeholderRegex, (match, key) => { + const keys = key.split("."); + let value = data; + for (const k of keys) { + if (value.hasOwnProperty(k)) { + value = value[k]; + } else { + return match; // If the key is not found, keep the original placeholder } - return value; - }); + } + return value; +}); - return renderedString; +return renderedString; } - -function configPlanCount(jobResultId) { - return new Promise(function(resolve, reject) { - var configPlanApi = `/api/plugins/golden-config/config-plan/?job_result_id=${jobResultId}`; - $.ajax({ - url: configPlanApi, - type: "GET", - dataType: "json", - headers: { - 'X-CSRFToken': nautobot_csrf_token - }, - success: function(data) { - var count = data.count; - resolve(count); - }, - error: function(e) { - resolve(e); - } - }); - }); -} \ No newline at end of file +function getMessage(jobResultId) { +return new Promise((resolve) => { + resolve("Job Completed Successfully."); +}); +} diff --git a/nautobot_golden_config/tables.py b/nautobot_golden_config/tables.py index b892a5bf..e4ca8425 100644 --- a/nautobot_golden_config/tables.py +++ b/nautobot_golden_config/tables.py @@ -4,21 +4,11 @@ from django.utils.html import format_html from django_tables2 import Column, LinkColumn, TemplateColumn from django_tables2.utils import A - from nautobot.extras.tables import StatusTableMixin -from nautobot.utilities.tables import ( - BaseTable, - ToggleColumn, - TagColumn, -) -from nautobot_golden_config import models -from nautobot_golden_config.utilities.constant import ( - ENABLE_BACKUP, - ENABLE_COMPLIANCE, - ENABLE_INTENDED, - CONFIG_FEATURES, -) +from nautobot.utilities.tables import BaseTable, TagColumn, ToggleColumn +from nautobot_golden_config import models +from nautobot_golden_config.utilities.constant import CONFIG_FEATURES, ENABLE_BACKUP, ENABLE_COMPLIANCE, ENABLE_INTENDED ALL_ACTIONS = """ {% if backup == True %} @@ -496,8 +486,17 @@ class ConfigPlanTable(StatusTableMixin, BaseTable): pk = ToggleColumn() device = LinkColumn("plugins:nautobot_golden_config:configplan", args=[A("pk")]) - job_result = TemplateColumn( - template_code="""

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 literal 0 HcmV?d00001 diff --git a/docs/user/app_feature_config_plans.md b/docs/user/app_feature_config_plans.md new file mode 100644 index 00000000..fbb516a2 --- /dev/null +++ b/docs/user/app_feature_config_plans.md @@ -0,0 +1,66 @@ +# Navigating Config Plans + +The natural progression for the Golden Config application is providing the ability to execute config deployments. One specific example is to work toward making one or more devices configuration compliant. To aid in this effort, the Golden Config application has the ability to generate plans containing sets of configuration commands from various sources with the intent of deploying them to devices. + +The current sources of these plans (i.e. plan types) are as follows: + +- The **Intended** configuration(s) of Compliance Feature(s) +- The **Missing** configuration(s) of Compliance Feature(s) +- The **Remediation** configuration(s) of Compliance Feature(s) (*) +- A **Manual** set of configuration commands + +!!! note + The Intended, Missing and Remediation configuration come from the [Configuration Compliance](./app_feature_compliance.md#compliance-details-view) object that is created when you run the [Perform Configuration Compliance Job](./app_feature_compliance.md#starting-a-compliance-job). + +Much like a Configuration Compliance object, each Config Plan is tied directly to a single Device. + +## Viewing a Config Plan + +You can view a plan by navigating to **Golden Config -> Config Plans** and choosing a generated plan from the list. A Config Plan comprises of the following fields: + +- **Device**: The device the plan is to be deployed to. +- **Date Created**: The date the plan was generated. +- **Plan Type**: The type of plan used to generate it. +- **Config Set**: The set of commands to be deployed. +- **Features** (If Applicable): The Compliance Feature(s) the config set was generated from. +- **Change Control ID** (Optional): A text field that be used for grouping and filtering plans. +- **Change Control URL** (Optional): A URL field that can be used to link to an external system tracking change controls. +- **Job Result**: The Job that generated the plan(s). +- **Status**: The status of the plan. + +![Config Plan View](../images/config_plan-view.png) + +## Generating Config Plans + +In order to generate a plan, navigate to **Golden Config -> Config Plans** and hit the **Add** button. After choosing the type of plan you want to generate, you can then filter the list of devices you want to generate a Config Plan for by selecting either the list of devices themselves or a by choosing one or more related items such as Location or Status. If you select a plan type that is derived from a Configuration Compliance object, you will have the ability to only generate plans for one or more features, but selecting no features will generate plans for all applicable features. + +In addition, you have the ability to specify a Change Control ID & URL that can be associated with all of the plans that will be generated. This can come in handy when it comes to filtering the list of plans to ultimately deploy. + +Once you have selected the appropriate options, you can click the **Generate** button which will start a Job to generate the plans. + +### Screenshots + +![Config Plan Generate Missing](../images/config_plan-generate-missing.png) + +![Config Plan Generate Filters](../images/config_plan-generate-filters.png) + +![Config Plan Generate Manual](../images/config_plan-generate-manual.png) + +### Generating Config Plans via API + +The HTTP(S) POST method is not currently enabled for the Config Plan serializer to create plans directly via API. Instead you may run the **GenerateConfigPlans** Job directly via the `plugins/nautobot_golden_config.jobs/GenerateConfigPlans` API endpoint. + +## Editing a Config Plan + +After a Config Plan is generated you have the ability to edit (or bulk edit) the following fields: + +- Change Control ID +- Change Control URL +- Status +- Notes +- Tags + +!!! note + You will not be able to modify the Config Set after generation. If it does not contain the desired commands, you will need to delete the plan and recreate it after ensuring the source of the generated commands has been updated. + +![Config Plan Edit](../images/config_plan-edit.png) diff --git a/nautobot_golden_config/api/serializers.py b/nautobot_golden_config/api/serializers.py index 522fd97f..5856328e 100644 --- a/nautobot_golden_config/api/serializers.py +++ b/nautobot_golden_config/api/serializers.py @@ -2,11 +2,15 @@ # pylint: disable=too-many-ancestors from rest_framework import serializers +from nautobot.apps.api import WritableNestedSerializer +from nautobot.extras.api.fields import StatusSerializerField from nautobot.extras.api.serializers import TaggedObjectSerializer from nautobot.extras.api.nested_serializers import NestedDynamicGroupSerializer +from nautobot.extras.models import Status +from nautobot.dcim.api.nested_serializers import NestedDeviceSerializer from nautobot.dcim.api.serializers import DeviceSerializer from nautobot.dcim.models import Device -from nautobot.extras.api.serializers import NautobotModelSerializer +from nautobot.extras.api.serializers import NautobotModelSerializer, StatusModelSerializerMixin from nautobot_golden_config import models @@ -149,3 +153,45 @@ def get_config(self, obj): config_details = models.GoldenConfig.objects.get(device=obj) return get_config_postprocessing(config_details, request) + + +class RemediationSettingSerializer(NautobotModelSerializer, TaggedObjectSerializer): + """Serializer for RemediationSetting object.""" + + url = serializers.HyperlinkedIdentityField( + view_name="plugins-api:nautobot_golden_config-api:remediationsetting-detail" + ) + + class Meta: + """Set Meta Data for RemediationSetting, will serialize all fields.""" + + model = models.RemediationSetting + choices_fields = ["remediation_type"] + fields = "__all__" + + +class ConfigPlanSerializer(NautobotModelSerializer, TaggedObjectSerializer, StatusModelSerializerMixin): + """Serializer for ConfigPlan object.""" + + url = serializers.HyperlinkedIdentityField(view_name="plugins-api:nautobot_golden_config-api:configplan-detail") + device = NestedDeviceSerializer(required=False) + status = StatusSerializerField(required=False, queryset=Status.objects.all()) + + class Meta: + """Set Meta Data for ConfigPlan, will serialize all fields.""" + + model = models.ConfigPlan + fields = "__all__" + read_only_fields = ["device", "plan_type", "feature", "config_set"] + + +class NestedConfigPlanSerializer(WritableNestedSerializer): + """Nested serializer for ConfigPlan object.""" + + url = serializers.HyperlinkedIdentityField(view_name="plugins-api:nautobot_golden_config-api:configplan-detail") + + class Meta: + """Set Meta Data for ConfigPlan, will serialize brief fields.""" + + model = models.ConfigPlan + fields = ["id", "url", "device", "plan_type"] diff --git a/nautobot_golden_config/api/views.py b/nautobot_golden_config/api/views.py index 4f31e4c5..39c91d70 100644 --- a/nautobot_golden_config/api/views.py +++ b/nautobot_golden_config/api/views.py @@ -114,3 +114,22 @@ class ConfigToPushViewSet(mixins.RetrieveModelMixin, viewsets.GenericViewSet): permission_classes = [IsAuthenticated & ConfigPushPermissions] queryset = Device.objects.all() serializer_class = serializers.ConfigToPushSerializer + + +class RemediationSettingViewSet(NautobotModelViewSet): # pylint:disable=too-many-ancestors + """API viewset for interacting with RemediationSetting objects.""" + + queryset = models.RemediationSetting.objects.all() + serializer_class = serializers.RemediationSettingSerializer + filterset_class = filters.RemediationSettingFilterSet + + +class ConfigPlanViewSet(NautobotModelViewSet): # pylint:disable=too-many-ancestors + """API viewset for interacting with ConfigPlan objects.""" + + queryset = models.ConfigPlan.objects.all() + serializer_class = serializers.ConfigPlanSerializer + filterset_class = filters.ConfigPlanFilterSet + + # Disabling POST as these should only be created via Job. + http_method_names = ["get", "put", "patch", "delete", "head", "options"] diff --git a/nautobot_golden_config/choices.py b/nautobot_golden_config/choices.py index 7d51d7a1..b69dd09b 100644 --- a/nautobot_golden_config/choices.py +++ b/nautobot_golden_config/choices.py @@ -12,3 +12,31 @@ class ComplianceRuleConfigTypeChoice(ChoiceSet): (TYPE_CLI, "CLI"), (TYPE_JSON, "JSON"), ) + + +class RemediationTypeChoice(ChoiceSet): + """Choiceset used by RemediationSetting.""" + + TYPE_HIERCONFIG = "hierconfig" + TYPE_CUSTOM = "custom_remediation" + + CHOICES = ( + (TYPE_HIERCONFIG, "HIERCONFIG"), + (TYPE_CUSTOM, "CUSTOM_REMEDIATION"), + ) + + +class ConfigPlanTypeChoice(ChoiceSet): + """Choiceset used by ConfigPlan.""" + + TYPE_INTENDED = "intended" + TYPE_MISSING = "missing" + TYPE_REMEDIATION = "remediation" + TYPE_MANUAL = "manual" + + CHOICES = ( + (TYPE_INTENDED, "Intended"), + (TYPE_MISSING, "Missing"), + (TYPE_REMEDIATION, "Remediation"), + (TYPE_MANUAL, "Manual"), + ) diff --git a/nautobot_golden_config/filter_extensions.py b/nautobot_golden_config/filter_extensions.py new file mode 100644 index 00000000..6eeb24fa --- /dev/null +++ b/nautobot_golden_config/filter_extensions.py @@ -0,0 +1,23 @@ +"""Custom filter to extend base API for filterform use case.""" +import django_filters +from nautobot.apps.filters import FilterExtension + + +def config_plan_null_search(queryset, name, value): # pylint: disable=unused-argument + """Query to ensure config plans are not empty.""" + return queryset.filter(config_plan__isnull=False).distinct() + + +class JobResultFilterExtension(FilterExtension): + """Filter provided to be used in select2 query for only jobs that were used by ConfigPlan.""" + + model = "extras.jobresult" + + filterset_fields = { + "nautobot_golden_config_config_plan_null": django_filters.BooleanFilter( + label="Is FK to ConfigPlan Model", method=config_plan_null_search + ) + } + + +filter_extensions = [JobResultFilterExtension] diff --git a/nautobot_golden_config/migrations/0026_configplan.py b/nautobot_golden_config/migrations/0026_configplan.py new file mode 100644 index 00000000..2c93462d --- /dev/null +++ b/nautobot_golden_config/migrations/0026_configplan.py @@ -0,0 +1,74 @@ +# Generated by Django 3.2.20 on 2023-09-01 14:51 + +import django.core.serializers.json +from django.db import migrations, models +import django.db.models.deletion +import nautobot.extras.models.mixins +import nautobot.extras.models.statuses +import taggit.managers +import uuid + + +class Migration(migrations.Migration): + dependencies = [ + ("dcim", "0023_interface_redundancy_group_data_migration"), + ("extras", "0058_jobresult_add_time_status_idxs"), + ("nautobot_golden_config", "0025_remediation_settings"), + ] + + operations = [ + migrations.CreateModel( + name="ConfigPlan", + fields=[ + ( + "id", + models.UUIDField( + default=uuid.uuid4, editable=False, primary_key=True, serialize=False, unique=True + ), + ), + ("created", models.DateField(auto_now_add=True, null=True)), + ("last_updated", models.DateTimeField(auto_now=True, null=True)), + ( + "_custom_field_data", + models.JSONField(blank=True, default=dict, encoder=django.core.serializers.json.DjangoJSONEncoder), + ), + ("plan_type", models.CharField(max_length=20)), + ("config_set", models.TextField()), + ("change_control_id", models.CharField(blank=True, max_length=50, null=True)), + ("change_control_url", models.URLField(blank=True)), + ( + "device", + models.ForeignKey( + on_delete=django.db.models.deletion.CASCADE, related_name="config_plan", to="dcim.device" + ), + ), + ( + "feature", + models.ManyToManyField( + blank=True, related_name="config_plan", to="nautobot_golden_config.ComplianceFeature" + ), + ), + ( + "job_result", + models.ForeignKey( + on_delete=django.db.models.deletion.CASCADE, related_name="config_plan", to="extras.jobresult" + ), + ), + ( + "status", + nautobot.extras.models.statuses.StatusField( + blank=True, null=True, on_delete=django.db.models.deletion.PROTECT, to="extras.status" + ), + ), + ("tags", taggit.managers.TaggableManager(through="extras.TaggedItem", to="extras.Tag")), + ], + options={ + "ordering": ("-created", "device"), + }, + bases=( + models.Model, + nautobot.extras.models.mixins.DynamicGroupMixin, + nautobot.extras.models.mixins.NotesMixin, + ), + ), + ] diff --git a/nautobot_golden_config/models.py b/nautobot_golden_config/models.py index 5bcaf717..47459001 100644 --- a/nautobot_golden_config/models.py +++ b/nautobot_golden_config/models.py @@ -10,16 +10,18 @@ from django.shortcuts import reverse from django.utils.module_loading import import_string from django.utils.text import slugify +from hier_config import Host as HierConfigHost from nautobot.core.models.generics import PrimaryModel from nautobot.extras.models import DynamicGroup, ObjectChange +from nautobot.extras.models.statuses import StatusField from nautobot.extras.utils import extras_features from nautobot.utilities.utils import serialize_object, serialize_object_v2 from netutils.config.compliance import feature_compliance -from nautobot_golden_config.choices import ComplianceRuleConfigTypeChoice +from netutils.lib_mapper import HIERCONFIG_LIB_MAPPER_REVERSE +from nautobot_golden_config.choices import ComplianceRuleConfigTypeChoice, ConfigPlanTypeChoice, RemediationTypeChoice from nautobot_golden_config.utilities.constant import ENABLE_SOTAGG, PLUGIN_CFG from nautobot_golden_config.utilities.utils import get_platform - LOGGER = logging.getLogger(__name__) GRAPHQL_STR_START = "query ($device_id: ID!)" @@ -35,6 +37,11 @@ ERROR_MSG + "Specifically the key {} was expected to be of type(s) {} and the value of {} was not that type(s)." ) +CUSTOM_FUNCTIONS = { + "get_custom_compliance": "custom", + "get_custom_remediation": RemediationTypeChoice.TYPE_CUSTOM, +} + def _is_jsonable(val): """Check is value can be converted to json.""" @@ -129,22 +136,56 @@ def _verify_get_custom_compliance_data(compliance_details): raise ValidationError(VALIDATION_MSG.format(val, "String or Json", compliance_details[val])) +def _get_hierconfig_remediation(obj): + """Returns the remediating config.""" + hierconfig_os = HIERCONFIG_LIB_MAPPER_REVERSE.get(obj.device.platform.slug) + if not hierconfig_os: + raise ValidationError(f"platform {obj.device.platform.slug} is not supported by hierconfig.") + + try: + remediation_setting_obj = RemediationSetting.objects.get(platform=obj.rule.platform) + except Exception as err: # pylint: disable=broad-except: + raise ValidationError(f"Platform {obj.device.platform.slug} has no Remediation Settings defined.") from err + + remediation_options = remediation_setting_obj.remediation_options + + try: + hc_kwargs = {"hostname": obj.device.name, "os": hierconfig_os} + if remediation_options: + hc_kwargs.update(hconfig_options=remediation_options) + host = HierConfigHost(**hc_kwargs) + + except Exception as err: # pylint: disable=broad-except: + raise Exception( # pylint: disable=broad-exception-raised + f"Cannot instantiate HierConfig on {obj.device.name}, check Device, Platform and Hier Options." + ) from err + + host.load_generated_config(obj.intended) + host.load_running_config(obj.actual) + host.remediation_config() + remediation_config = host.remediation_config_filtered_text(include_tags={}, exclude_tags={}) + + return remediation_config + + # The below maps the provided compliance types FUNC_MAPPER = { ComplianceRuleConfigTypeChoice.TYPE_CLI: _get_cli_compliance, ComplianceRuleConfigTypeChoice.TYPE_JSON: _get_json_compliance, + RemediationTypeChoice.TYPE_HIERCONFIG: _get_hierconfig_remediation, } # The below conditionally add the custom provided compliance type -if PLUGIN_CFG.get("get_custom_compliance"): - try: - FUNC_MAPPER["custom"] = import_string(PLUGIN_CFG["get_custom_compliance"]) - except Exception as error: # pylint: disable=broad-except - msg = ( - "There was an issue attempting to import the get_custom_compliance function of" - f"{PLUGIN_CFG['get_custom_compliance']}, this is expected with a local configuration issue " - "and not related to the Golden Configuration Plugin, please contact your system admin for further details" - ) - raise Exception(msg).with_traceback(error.__traceback__) +for custom_function, custom_type in CUSTOM_FUNCTIONS.items(): + if PLUGIN_CFG.get(custom_function): + try: + FUNC_MAPPER[custom_type] = import_string(PLUGIN_CFG[custom_function]) + except Exception as error: # pylint: disable=broad-except + msg = ( + "There was an issue attempting to import the custom function of" + f"{PLUGIN_CFG[custom_function]}, this is expected with a local configuration issue " + "and not related to the Golden Configuration Plugin, please contact your system admin for further details" + ) + raise Exception(msg).with_traceback(error.__traceback__) @extras_features( @@ -212,6 +253,15 @@ class ComplianceRule(PrimaryModel): # pylint: disable=too-many-ancestors verbose_name="Configured Ordered", help_text="Whether or not the configuration order matters, such as in ACLs.", ) + + config_remediation = models.BooleanField( + default=False, + null=False, + blank=False, + verbose_name="Config Remediation", + help_text="Whether or not the config remediation is executed for this compliance rule.", + ) + match_config = models.TextField( null=True, blank=True, @@ -237,8 +287,14 @@ class ComplianceRule(PrimaryModel): # pylint: disable=too-many-ancestors "match_config", "config_type", "custom_compliance", + "config_remediation", ] + @property + def remediation_setting(self): + """Returns remediation settings for a particular platform.""" + return RemediationSetting.objects.filter(platform=self.platform).first() + def to_csv(self): """Indicates model fields to return as csv.""" return ( @@ -249,6 +305,7 @@ def to_csv(self): self.match_config, self.config_type, self.custom_compliance, + self.config_remediation, ) class Meta: @@ -291,6 +348,8 @@ class ConfigCompliance(PrimaryModel): # pylint: disable=too-many-ancestors compliance = models.BooleanField(null=True, blank=True) actual = models.JSONField(blank=True, help_text="Actual Configuration for feature") intended = models.JSONField(blank=True, help_text="Intended Configuration for feature") + # these three are config snippets exposed for the ConfigDeployment. + remediation = models.JSONField(blank=True, null=True, help_text="Remediation Configuration for the device") missing = models.JSONField(blank=True, help_text="Configuration that should be on the device.") extra = models.JSONField(blank=True, help_text="Configuration that should not be on the device.") ordered = models.BooleanField(default=True) @@ -332,7 +391,7 @@ def __str__(self): """String representation of a the compliance.""" return f"{self.device} -> {self.rule} -> {self.compliance}" - def save(self, *args, **kwargs): + def compliance_on_save(self): """The actual configuration compliance happens here, but the details for actual compliance job would be found in FUNC_MAPPER.""" if self.rule.custom_compliance: if not FUNC_MAPPER.get("custom"): @@ -350,6 +409,28 @@ def save(self, *args, **kwargs): self.missing = compliance_details["missing"] self.extra = compliance_details["extra"] + def remediation_on_save(self): + """The actual remediation happens here, before saving the object.""" + if self.compliance: + self.remediation = None + return + + if not self.rule.config_remediation: + self.remediation = None + return + + if not self.rule.remediation_setting: + self.remediation = None + return + + remediation_config = FUNC_MAPPER[self.rule.remediation_setting.remediation_type](obj=self) + self.remediation = remediation_config + + def save(self, *args, **kwargs): + """The actual configuration compliance happens here, but the details for actual compliance job would be found in FUNC_MAPPER.""" + self.compliance_on_save() + self.remediation_on_save() + super().save(*args, **kwargs) @@ -700,3 +781,115 @@ def get_absolute_url(self): def __str__(self): """Return a simple string if model is called.""" return self.name + + +@extras_features( + "graphql", +) +class RemediationSetting(PrimaryModel): # pylint: disable=too-many-ancestors + """RemediationSetting details.""" + + # Remediation points to the platform + platform = models.OneToOneField( + to="dcim.Platform", + on_delete=models.CASCADE, + related_name="remediation_settings", + null=False, + blank=False, + ) + + remediation_type = models.CharField( + max_length=50, + default=RemediationTypeChoice.TYPE_HIERCONFIG, + choices=RemediationTypeChoice, + help_text="Whether the remediation setting is type HierConfig or custom.", + ) + + # takes options.json. + remediation_options = models.JSONField( + blank=True, + default=dict, + help_text="Remediation Configuration for the device", + ) + + csv_headers = [ + "platform", + "remediation_type", + ] + + class Meta: + """Meta information for RemediationSettings model.""" + + ordering = ("platform", "remediation_type") + + def to_csv(self): + """Indicates model fields to return as csv.""" + return ( + self.platform, + self.remediation_type, + ) + + def __str__(self): + """Return a sane string representation of the instance.""" + return str(self.platform.slug) + + def get_absolute_url(self): + """Absolute url for the RemediationRule instance.""" + return reverse("plugins:nautobot_golden_config:remediationsetting", args=[self.pk]) + + +@extras_features( + "custom_fields", + "custom_links", + "custom_validators", + "export_templates", + "graphql", + "relationships", + "webhooks", + "statuses", +) +class ConfigPlan(PrimaryModel): # pylint: disable=too-many-ancestors + """ConfigPlan for Golden Configuration Plan Model definition.""" + + plan_type = models.CharField(max_length=20, choices=ConfigPlanTypeChoice, verbose_name="Plan Type") + device = models.ForeignKey( + to="dcim.Device", + on_delete=models.CASCADE, + related_name="config_plan", + ) + config_set = models.TextField(help_text="Configuration set to be applied to device.") + feature = models.ManyToManyField( + to=ComplianceFeature, + related_name="config_plan", + blank=True, + ) + job_result = models.ForeignKey( + to="extras.JobResult", + on_delete=models.CASCADE, + related_name="config_plan", + null=False, + blank=False, + verbose_name="Job Result", + ) + change_control_id = models.CharField( + max_length=50, + blank=True, + null=True, + verbose_name="Change Control ID", + help_text="Change Control ID for this configuration plan.", + ) + change_control_url = models.URLField(blank=True, verbose_name="Change Control URL") + status = StatusField(blank=True, null=True, on_delete=models.PROTECT) + + class Meta: + """Meta information for ConfigPlan model.""" + + ordering = ("-created", "device") + + def __str__(self): + """Return a simple string if model is called.""" + return f"{self.device.name}-{self.plan_type}-{self.created}" + + def get_absolute_url(self): + """Return absolute URL for instance.""" + return reverse("plugins:nautobot_golden_config:configplan", args=[self.pk]) diff --git a/nautobot_golden_config/tables.py b/nautobot_golden_config/tables.py index ec6938e9..b892a5bf 100644 --- a/nautobot_golden_config/tables.py +++ b/nautobot_golden_config/tables.py @@ -5,9 +5,11 @@ from django_tables2 import Column, LinkColumn, TemplateColumn from django_tables2.utils import A +from nautobot.extras.tables import StatusTableMixin from nautobot.utilities.tables import ( BaseTable, ToggleColumn, + TagColumn, ) from nautobot_golden_config import models from nautobot_golden_config.utilities.constant import ( @@ -85,6 +87,38 @@ {% endif %} """ +CONFIG_SET_BUTTON = """ + + + + +

""" + plan_result = TemplateColumn( + template_code="""
""" + ) + deploy_result = TemplateColumn( + template_code=""" + {% if record.deploy_result %} + + {% else %} + — + {% endif %} + """ ) config_set = TemplateColumn(template_code=CONFIG_SET_BUTTON, verbose_name="Config Set", orderable=False) tags = TagColumn(url_name="plugins:nautobot_golden_config:configplan_list") @@ -514,7 +513,8 @@ class Meta(BaseTable.Meta): "feature", "change_control_id", "change_control_url", - "job_result", + "plan_result", + "deploy_result", "config_set", "status", "tags", @@ -527,7 +527,8 @@ class Meta(BaseTable.Meta): "feature", "change_control_id", "change_control_url", - "job_result", + "plan_result", + "deploy_result", "config_set", "status", ) diff --git a/nautobot_golden_config/templates/nautobot_golden_config/configcompliance_details.html b/nautobot_golden_config/templates/nautobot_golden_config/configcompliance_details.html index 97411e3b..ea2c0b8f 100644 --- a/nautobot_golden_config/templates/nautobot_golden_config/configcompliance_details.html +++ b/nautobot_golden_config/templates/nautobot_golden_config/configcompliance_details.html @@ -48,7 +48,6 @@

Intended Configuration Details - {{ device_name }}

matching: 'lines', outputFormat: 'side-by-side', }); - document.getElementById('diff').innerHTML = diffHtml; }); diff --git a/nautobot_golden_config/templates/nautobot_golden_config/configplan_create.html b/nautobot_golden_config/templates/nautobot_golden_config/configplan_create.html index 7e95ae42..95b86885 100644 --- a/nautobot_golden_config/templates/nautobot_golden_config/configplan_create.html +++ b/nautobot_golden_config/templates/nautobot_golden_config/configplan_create.html @@ -40,10 +40,10 @@ {% endblock %} {% block buttons %} -{% include "nautobot_golden_config/job_result_modal.html" %} +{% include "nautobot_golden_config/job_result_modal.html" with modal_title="Generate Config Plans" %} - - + + {% endblock %} @@ -63,11 +63,65 @@ var form_data = formDataToDictionary(data, arrayFields); delete form_data.csrfmiddlewaretoken; delete form_data.q; - return form_data; + return {"data": form_data}; } -var jobClass = "plugins/nautobot_golden_config.jobs/GenerateConfigPlans" -var redirectUrlTemplate = "/plugins/golden-config/config-plan/?job_result_id={jobData.result.id}" -document.getElementById("startJob").onclick = function() {startJob(jobClass, formatJobData($("form").serializeArray()), redirectUrlTemplate)}; + +function isValidURL(url) { + // Regular expression to validate URLs + var urlPattern = /^(https?:\/\/)?([\w-]+(\.[\w-]+)+|localhost|(\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}))(:\d+)?(\/\S*)?$/; + return urlPattern.test(url); +} + +function configPlanCount(jobResultId) { + return new Promise(function(resolve, reject) { + var configPlanApi = `/api/plugins/golden-config/config-plan/?plan_result_id=${jobResultId}`; + $.ajax({ + url: configPlanApi, + type: "GET", + dataType: "json", + headers: { + 'X-CSRFToken': nautobot_csrf_token + }, + success: function(data) { + var count = data.count; + resolve("Job Completed Successfully."+ + "
Number of Config Plans generated: " + count); + }, + error: function(e) { + resolve("Job completed successfully, but no Config Plans were generated."+ + "
If this is unexpected, please validate your input parameters."); + } + }); + }); +} + +function openModalAndStartJob() { + var changeControlUrl = changeControlUrlInput.value; + if (changeControlUrl && !isValidURL(changeControlUrl)) { + alert("Please enter a valid URL for Change Control URL."); + } else { + // If validation passes, trigger the modal to open + $('#modalPopup').modal('show'); + // Start the job + startJob(jobClass, formatJobData($("form").serializeArray()), redirectUrlTemplate, configPlanCount); + } +} + +var jobClass = "plugins/nautobot_golden_config.jobs/GenerateConfigPlans"; +var redirectUrlTemplate = "/plugins/golden-config/config-plan/?plan_result_id={jobData.result.id}"; +var changeControlUrlInput = document.getElementById("id_change_control_url"); +var startJobButton = document.getElementById("startJob"); +var form = document.querySelector("form"); + +startJobButton.addEventListener("click", function(event) { + openModalAndStartJob(); + event.preventDefault(); // Prevent the default behavior of the anchor link +}); + +form.addEventListener("submit", function(event) { + openModalAndStartJob(); + event.preventDefault(); // Prevent the form submission +}); -{% endblock javascript %} \ No newline at end of file +{% endblock javascript %} diff --git a/nautobot_golden_config/templates/nautobot_golden_config/configplan_list.html b/nautobot_golden_config/templates/nautobot_golden_config/configplan_list.html index d745e5db..8e27ab40 100644 --- a/nautobot_golden_config/templates/nautobot_golden_config/configplan_list.html +++ b/nautobot_golden_config/templates/nautobot_golden_config/configplan_list.html @@ -1,34 +1,57 @@ {% extends 'generic/object_list.html' %} +{% load static %} + + +{% block buttons %} + + Unfinished Plans + +{% endblock %} {% block bulk_buttons %} - - {% if perms.extras.run_job %} - {% endif %} + {% endblock %} + +{% block javascript %} +{{ block.super }} + + + +{% endblock javascript %} \ No newline at end of file diff --git a/nautobot_golden_config/templates/nautobot_golden_config/configplan_retrieve.html b/nautobot_golden_config/templates/nautobot_golden_config/configplan_retrieve.html index 2b08ac51..c059ad5a 100644 --- a/nautobot_golden_config/templates/nautobot_golden_config/configplan_retrieve.html +++ b/nautobot_golden_config/templates/nautobot_golden_config/configplan_retrieve.html @@ -2,11 +2,20 @@ {% load helpers %} {% block content_left_page %} + +
Config Plan Details
- +
@@ -42,8 +51,17 @@ - - + + + + + + {% if object.deploy_result %} + + {% endif %} + @@ -51,6 +69,16 @@ {{ object.get_status_display }} +
Device {{ object.device }}{{ object.change_control_url|placeholder }}
Job Result{{ object.job_result|placeholder }}Plan Result{{ object.plan_result.status|title }}
Deploy Result{{ object.deploy_result.status|title }} + {% else %} + {{ object.deploy_result|placeholder }}
Status
+
+{% endblock %} + +{% block content_full_width_page %} +
+
+ Config Set Details +
+
Config Set @@ -64,4 +92,4 @@
-{% endblock %} \ No newline at end of file +{% endblock %} diff --git a/nautobot_golden_config/templates/nautobot_golden_config/configplan_update.html b/nautobot_golden_config/templates/nautobot_golden_config/configplan_update.html index 15098919..a2d498f3 100644 --- a/nautobot_golden_config/templates/nautobot_golden_config/configplan_update.html +++ b/nautobot_golden_config/templates/nautobot_golden_config/configplan_update.html @@ -10,7 +10,7 @@ {% render_field form.change_control_id %} {% render_field form.change_control_url %} {% render_field form.status %} - {% render_field form.tag %} + {% render_field form.tags %} diff --git a/nautobot_golden_config/templates/nautobot_golden_config/goldenconfig_list.html b/nautobot_golden_config/templates/nautobot_golden_config/goldenconfig_list.html index daeb2716..913f6a99 100644 --- a/nautobot_golden_config/templates/nautobot_golden_config/goldenconfig_list.html +++ b/nautobot_golden_config/templates/nautobot_golden_config/goldenconfig_list.html @@ -3,10 +3,11 @@ {% load static %} {% load helpers %} +{% block breadcrumbs %}Configuration Overview{% endblock %} {% block content %}
{% block buttons %} - +